capo-keyspaces 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. capo_keyspaces/__init__.py +70 -0
  2. capo_keyspaces/_async.py +25 -0
  3. capo_keyspaces/_auth/_identity.py +16 -0
  4. capo_keyspaces/_auth/_providers.py +886 -0
  5. capo_keyspaces/_auth/_signers.py +88 -0
  6. capo_keyspaces/_auth/_sigv4.py +434 -0
  7. capo_keyspaces/_auth/_zapros_handler.py +80 -0
  8. capo_keyspaces/_iter.py +113 -0
  9. capo_keyspaces/_operations/keyspaces_service/create_keyspace.py +170 -0
  10. capo_keyspaces/_operations/keyspaces_service/create_table.py +183 -0
  11. capo_keyspaces/_operations/keyspaces_service/create_type.py +172 -0
  12. capo_keyspaces/_operations/keyspaces_service/delete_keyspace.py +165 -0
  13. capo_keyspaces/_operations/keyspaces_service/delete_table.py +163 -0
  14. capo_keyspaces/_operations/keyspaces_service/delete_type.py +171 -0
  15. capo_keyspaces/_operations/keyspaces_service/get_keyspace.py +168 -0
  16. capo_keyspaces/_operations/keyspaces_service/get_table.py +173 -0
  17. capo_keyspaces/_operations/keyspaces_service/get_table_auto_scaling_settings.py +168 -0
  18. capo_keyspaces/_operations/keyspaces_service/get_type.py +166 -0
  19. capo_keyspaces/_operations/keyspaces_service/list_keyspaces.py +167 -0
  20. capo_keyspaces/_operations/keyspaces_service/list_tables.py +167 -0
  21. capo_keyspaces/_operations/keyspaces_service/list_tags_for_resource.py +167 -0
  22. capo_keyspaces/_operations/keyspaces_service/list_types.py +163 -0
  23. capo_keyspaces/_operations/keyspaces_service/restore_table.py +178 -0
  24. capo_keyspaces/_operations/keyspaces_service/tag_resource.py +164 -0
  25. capo_keyspaces/_operations/keyspaces_service/untag_resource.py +164 -0
  26. capo_keyspaces/_operations/keyspaces_service/update_keyspace.py +175 -0
  27. capo_keyspaces/_operations/keyspaces_service/update_table.py +181 -0
  28. capo_keyspaces/_pagination.py +21 -0
  29. capo_keyspaces/_protocol/__init__.py +1 -0
  30. capo_keyspaces/_protocol/errors.py +93 -0
  31. capo_keyspaces/_protocol/eventstream.py +238 -0
  32. capo_keyspaces/_protocol/serialize.py +47 -0
  33. capo_keyspaces/_protocol/xml.py +33 -0
  34. capo_keyspaces/_rule_engine/__init__.py +0 -0
  35. capo_keyspaces/_rule_engine/_aws_partition.py +160 -0
  36. capo_keyspaces/_rule_engine/_endpoint_rule_set.py +150 -0
  37. capo_keyspaces/_rule_engine/_endpoint_runtime.py +389 -0
  38. capo_keyspaces/_services/_aws_config.py +160 -0
  39. capo_keyspaces/_services/_pipeline.py +198 -0
  40. capo_keyspaces/_services/async_keyspaces.py +1467 -0
  41. capo_keyspaces/_services/keyspaces.py +1448 -0
  42. capo_keyspaces/errors/__init__.py +35 -0
  43. capo_keyspaces/errors/_base.py +94 -0
  44. capo_keyspaces/errors/access_denied_exception.py +47 -0
  45. capo_keyspaces/errors/conflict_exception.py +47 -0
  46. capo_keyspaces/errors/internal_server_exception.py +47 -0
  47. capo_keyspaces/errors/resource_not_found_exception.py +58 -0
  48. capo_keyspaces/errors/service_quota_exceeded_exception.py +49 -0
  49. capo_keyspaces/errors/validation_exception.py +47 -0
  50. capo_keyspaces/py.typed +0 -0
  51. capo_keyspaces/types/_prelude/blob.py +12 -0
  52. capo_keyspaces/types/_prelude/timestamp.py +17 -0
  53. capo_keyspaces/types/arn.py +5 -0
  54. capo_keyspaces/types/auto_scaling_policy.py +42 -0
  55. capo_keyspaces/types/auto_scaling_settings.py +63 -0
  56. capo_keyspaces/types/auto_scaling_specification.py +62 -0
  57. capo_keyspaces/types/boolean_object.py +5 -0
  58. capo_keyspaces/types/capacity_specification.py +48 -0
  59. capo_keyspaces/types/capacity_specification_summary.py +71 -0
  60. capo_keyspaces/types/capacity_units.py +5 -0
  61. capo_keyspaces/types/cdc_propagate_tags.py +5 -0
  62. capo_keyspaces/types/cdc_specification.py +62 -0
  63. capo_keyspaces/types/cdc_specification_summary.py +38 -0
  64. capo_keyspaces/types/cdc_status.py +5 -0
  65. capo_keyspaces/types/client_side_timestamps.py +33 -0
  66. capo_keyspaces/types/client_side_timestamps_status.py +5 -0
  67. capo_keyspaces/types/clustering_key.py +39 -0
  68. capo_keyspaces/types/clustering_key_list.py +29 -0
  69. capo_keyspaces/types/column_definition.py +38 -0
  70. capo_keyspaces/types/column_definition_list.py +33 -0
  71. capo_keyspaces/types/comment.py +26 -0
  72. capo_keyspaces/types/create_keyspace_request.py +67 -0
  73. capo_keyspaces/types/create_keyspace_response.py +31 -0
  74. capo_keyspaces/types/create_table_request.py +281 -0
  75. capo_keyspaces/types/create_table_response.py +31 -0
  76. capo_keyspaces/types/create_type_request.py +57 -0
  77. capo_keyspaces/types/create_type_response.py +39 -0
  78. capo_keyspaces/types/default_time_to_live.py +5 -0
  79. capo_keyspaces/types/delete_keyspace_request.py +31 -0
  80. capo_keyspaces/types/delete_keyspace_response.py +18 -0
  81. capo_keyspaces/types/delete_table_request.py +39 -0
  82. capo_keyspaces/types/delete_table_response.py +18 -0
  83. capo_keyspaces/types/delete_type_request.py +39 -0
  84. capo_keyspaces/types/delete_type_response.py +39 -0
  85. capo_keyspaces/types/depth.py +5 -0
  86. capo_keyspaces/types/double_object.py +5 -0
  87. capo_keyspaces/types/encryption_specification.py +38 -0
  88. capo_keyspaces/types/encryption_type.py +5 -0
  89. capo_keyspaces/types/field_definition.py +38 -0
  90. capo_keyspaces/types/field_list.py +29 -0
  91. capo_keyspaces/types/generic_string.py +5 -0
  92. capo_keyspaces/types/get_keyspace_request.py +31 -0
  93. capo_keyspaces/types/get_keyspace_response.py +87 -0
  94. capo_keyspaces/types/get_table_auto_scaling_settings_request.py +43 -0
  95. capo_keyspaces/types/get_table_auto_scaling_settings_response.py +95 -0
  96. capo_keyspaces/types/get_table_request.py +39 -0
  97. capo_keyspaces/types/get_table_response.py +287 -0
  98. capo_keyspaces/types/get_type_request.py +39 -0
  99. capo_keyspaces/types/get_type_response.py +140 -0
  100. capo_keyspaces/types/integer_object.py +5 -0
  101. capo_keyspaces/types/keyspace_name.py +5 -0
  102. capo_keyspaces/types/keyspace_status.py +5 -0
  103. capo_keyspaces/types/keyspace_summary.py +66 -0
  104. capo_keyspaces/types/keyspace_summary_list.py +31 -0
  105. capo_keyspaces/types/kms_key_arn.py +5 -0
  106. capo_keyspaces/types/list_keyspaces_request.py +35 -0
  107. capo_keyspaces/types/list_keyspaces_response.py +50 -0
  108. capo_keyspaces/types/list_tables_request.py +45 -0
  109. capo_keyspaces/types/list_tables_response.py +45 -0
  110. capo_keyspaces/types/list_tags_for_resource_request.py +45 -0
  111. capo_keyspaces/types/list_tags_for_resource_response.py +43 -0
  112. capo_keyspaces/types/list_types_request.py +45 -0
  113. capo_keyspaces/types/list_types_response.py +46 -0
  114. capo_keyspaces/types/max_results.py +5 -0
  115. capo_keyspaces/types/next_token.py +5 -0
  116. capo_keyspaces/types/partition_key.py +31 -0
  117. capo_keyspaces/types/partition_key_list.py +29 -0
  118. capo_keyspaces/types/point_in_time_recovery.py +33 -0
  119. capo_keyspaces/types/point_in_time_recovery_status.py +5 -0
  120. capo_keyspaces/types/point_in_time_recovery_summary.py +54 -0
  121. capo_keyspaces/types/region.py +5 -0
  122. capo_keyspaces/types/region_list.py +17 -0
  123. capo_keyspaces/types/replica_auto_scaling_specification.py +49 -0
  124. capo_keyspaces/types/replica_auto_scaling_specification_list.py +39 -0
  125. capo_keyspaces/types/replica_specification.py +61 -0
  126. capo_keyspaces/types/replica_specification_list.py +35 -0
  127. capo_keyspaces/types/replica_specification_summary.py +76 -0
  128. capo_keyspaces/types/replica_specification_summary_list.py +39 -0
  129. capo_keyspaces/types/replication_group_status.py +48 -0
  130. capo_keyspaces/types/replication_group_status_list.py +35 -0
  131. capo_keyspaces/types/replication_specification.py +48 -0
  132. capo_keyspaces/types/restore_table_request.py +190 -0
  133. capo_keyspaces/types/restore_table_response.py +31 -0
  134. capo_keyspaces/types/rs.py +5 -0
  135. capo_keyspaces/types/schema_definition.py +105 -0
  136. capo_keyspaces/types/sort_order.py +5 -0
  137. capo_keyspaces/types/static_column.py +31 -0
  138. capo_keyspaces/types/static_column_list.py +29 -0
  139. capo_keyspaces/types/stream_arn.py +5 -0
  140. capo_keyspaces/types/table_name.py +5 -0
  141. capo_keyspaces/types/table_name_list.py +17 -0
  142. capo_keyspaces/types/table_status.py +5 -0
  143. capo_keyspaces/types/table_summary.py +47 -0
  144. capo_keyspaces/types/table_summary_list.py +29 -0
  145. capo_keyspaces/types/tables_replication_progress.py +5 -0
  146. capo_keyspaces/types/tag.py +39 -0
  147. capo_keyspaces/types/tag_key.py +5 -0
  148. capo_keyspaces/types/tag_list.py +29 -0
  149. capo_keyspaces/types/tag_resource_request.py +45 -0
  150. capo_keyspaces/types/tag_resource_response.py +18 -0
  151. capo_keyspaces/types/tag_value.py +5 -0
  152. capo_keyspaces/types/target_tracking_scaling_policy_configuration.py +60 -0
  153. capo_keyspaces/types/throughput_mode.py +5 -0
  154. capo_keyspaces/types/time_to_live.py +31 -0
  155. capo_keyspaces/types/time_to_live_status.py +5 -0
  156. capo_keyspaces/types/timestamp.py +20 -0
  157. capo_keyspaces/types/type_name.py +5 -0
  158. capo_keyspaces/types/type_name_list.py +17 -0
  159. capo_keyspaces/types/type_status.py +5 -0
  160. capo_keyspaces/types/untag_resource_request.py +45 -0
  161. capo_keyspaces/types/untag_resource_response.py +18 -0
  162. capo_keyspaces/types/update_keyspace_request.py +74 -0
  163. capo_keyspaces/types/update_keyspace_response.py +31 -0
  164. capo_keyspaces/types/update_table_request.py +252 -0
  165. capo_keyspaces/types/update_table_response.py +31 -0
  166. capo_keyspaces/types/view_type.py +5 -0
  167. capo_keyspaces/types/warm_throughput_specification.py +29 -0
  168. capo_keyspaces/types/warm_throughput_specification_summary.py +49 -0
  169. capo_keyspaces/types/warm_throughput_status.py +5 -0
  170. capo_keyspaces-0.1.0.dist-info/METADATA +101 -0
  171. capo_keyspaces-0.1.0.dist-info/RECORD +174 -0
  172. capo_keyspaces-0.1.0.dist-info/WHEEL +5 -0
  173. capo_keyspaces-0.1.0.dist-info/licenses/LICENSE +21 -0
  174. capo_keyspaces-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,50 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#ListKeyspacesResponse``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ from capo_keyspaces.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_keyspaces.types.keyspace_summary_list
11
+ import capo_keyspaces.types.next_token
12
+
13
+
14
+ class ListKeyspacesResponse(TypedDict, closed=True):
15
+ next_token: NotRequired["capo_keyspaces.types.next_token.NextToken"]
16
+ """<p>A token to specify where to start paginating. This is the <code>NextToken</code> from a previously truncated response.</p>"""
17
+ keyspaces: "capo_keyspaces.types.keyspace_summary_list.KeyspaceSummaryList"
18
+ """<p>A list of keyspaces.</p>"""
19
+
20
+
21
+ # --- awsJson1_0 ser/de ---
22
+ def serialize_aws_json_1_0(value: ListKeyspacesResponse) -> dict:
23
+ out: dict = {}
24
+ if "next_token" in value:
25
+ out["nextToken"] = value["next_token"]
26
+ import capo_keyspaces.types.keyspace_summary_list
27
+
28
+ out["keyspaces"] = (
29
+ capo_keyspaces.types.keyspace_summary_list.serialize_aws_json_1_0(
30
+ value["keyspaces"]
31
+ )
32
+ )
33
+ return out
34
+
35
+
36
+ def deserialize_aws_json_1_0(data: dict) -> ListKeyspacesResponse:
37
+ out: ListKeyspacesResponse = {} # type: ignore[typeddict-item]
38
+ if data.get("nextToken") is not None:
39
+ out["next_token"] = data["nextToken"]
40
+ if data.get("keyspaces") is not None:
41
+ import capo_keyspaces.types.keyspace_summary_list
42
+
43
+ out["keyspaces"] = (
44
+ capo_keyspaces.types.keyspace_summary_list.deserialize_aws_json_1_0(
45
+ data["keyspaces"]
46
+ )
47
+ )
48
+ else:
49
+ raise DeserializationError("ListKeyspacesResponse.keyspaces required")
50
+ return out
@@ -0,0 +1,45 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#ListTablesRequest``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ from capo_keyspaces.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_keyspaces.types.keyspace_name
11
+ import capo_keyspaces.types.max_results
12
+ import capo_keyspaces.types.next_token
13
+
14
+
15
+ class ListTablesRequest(TypedDict, closed=True):
16
+ next_token: NotRequired["capo_keyspaces.types.next_token.NextToken"]
17
+ """<p>The pagination token. To resume pagination, provide the <code>NextToken</code> value as an argument of a subsequent API invocation.</p>"""
18
+ max_results: NotRequired["capo_keyspaces.types.max_results.MaxResults"]
19
+ """<p>The total number of tables to return in the output. If the total number of tables available is more than the value specified, a <code>NextToken</code> is provided in the output. To resume pagination, provide the <code>NextToken</code> value as an argument of a subsequent API invocation.</p>"""
20
+ keyspace_name: "capo_keyspaces.types.keyspace_name.KeyspaceName"
21
+ """<p>The name of the keyspace.</p>"""
22
+
23
+
24
+ # --- awsJson1_0 ser/de ---
25
+ def serialize_aws_json_1_0(value: ListTablesRequest) -> dict:
26
+ out: dict = {}
27
+ if "next_token" in value:
28
+ out["nextToken"] = value["next_token"]
29
+ if "max_results" in value:
30
+ out["maxResults"] = value["max_results"]
31
+ out["keyspaceName"] = value["keyspace_name"]
32
+ return out
33
+
34
+
35
+ def deserialize_aws_json_1_0(data: dict) -> ListTablesRequest:
36
+ out: ListTablesRequest = {} # type: ignore[typeddict-item]
37
+ if data.get("nextToken") is not None:
38
+ out["next_token"] = data["nextToken"]
39
+ if data.get("maxResults") is not None:
40
+ out["max_results"] = data["maxResults"]
41
+ if data.get("keyspaceName") is not None:
42
+ out["keyspace_name"] = data["keyspaceName"]
43
+ else:
44
+ raise DeserializationError("ListTablesRequest.keyspace_name required")
45
+ return out
@@ -0,0 +1,45 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#ListTablesResponse``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ if TYPE_CHECKING:
8
+ import capo_keyspaces.types.next_token
9
+ import capo_keyspaces.types.table_summary_list
10
+
11
+
12
+ class ListTablesResponse(TypedDict, closed=True):
13
+ next_token: NotRequired["capo_keyspaces.types.next_token.NextToken"]
14
+ """<p>A token to specify where to start paginating. This is the <code>NextToken</code> from a previously truncated response.</p>"""
15
+ tables: NotRequired["capo_keyspaces.types.table_summary_list.TableSummaryList"]
16
+ """<p>A list of tables.</p>"""
17
+
18
+
19
+ # --- awsJson1_0 ser/de ---
20
+ def serialize_aws_json_1_0(value: ListTablesResponse) -> dict:
21
+ out: dict = {}
22
+ if "next_token" in value:
23
+ out["nextToken"] = value["next_token"]
24
+ if "tables" in value:
25
+ import capo_keyspaces.types.table_summary_list
26
+
27
+ out["tables"] = capo_keyspaces.types.table_summary_list.serialize_aws_json_1_0(
28
+ value["tables"]
29
+ )
30
+ return out
31
+
32
+
33
+ def deserialize_aws_json_1_0(data: dict) -> ListTablesResponse:
34
+ out: ListTablesResponse = {} # type: ignore[typeddict-item]
35
+ if data.get("nextToken") is not None:
36
+ out["next_token"] = data["nextToken"]
37
+ if data.get("tables") is not None:
38
+ import capo_keyspaces.types.table_summary_list
39
+
40
+ out["tables"] = (
41
+ capo_keyspaces.types.table_summary_list.deserialize_aws_json_1_0(
42
+ data["tables"]
43
+ )
44
+ )
45
+ return out
@@ -0,0 +1,45 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#ListTagsForResourceRequest``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ from capo_keyspaces.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_keyspaces.types.arn
11
+ import capo_keyspaces.types.max_results
12
+ import capo_keyspaces.types.next_token
13
+
14
+
15
+ class ListTagsForResourceRequest(TypedDict, closed=True):
16
+ resource_arn: "capo_keyspaces.types.arn.ARN"
17
+ """<p>The Amazon Resource Name (ARN) of the Amazon Keyspaces resource.</p>"""
18
+ next_token: NotRequired["capo_keyspaces.types.next_token.NextToken"]
19
+ """<p>The pagination token. To resume pagination, provide the <code>NextToken</code> value as argument of a subsequent API invocation.</p>"""
20
+ max_results: NotRequired["capo_keyspaces.types.max_results.MaxResults"]
21
+ """<p>The total number of tags to return in the output. If the total number of tags available is more than the value specified, a <code>NextToken</code> is provided in the output. To resume pagination, provide the <code>NextToken</code> value as an argument of a subsequent API invocation.</p>"""
22
+
23
+
24
+ # --- awsJson1_0 ser/de ---
25
+ def serialize_aws_json_1_0(value: ListTagsForResourceRequest) -> dict:
26
+ out: dict = {}
27
+ out["resourceArn"] = value["resource_arn"]
28
+ if "next_token" in value:
29
+ out["nextToken"] = value["next_token"]
30
+ if "max_results" in value:
31
+ out["maxResults"] = value["max_results"]
32
+ return out
33
+
34
+
35
+ def deserialize_aws_json_1_0(data: dict) -> ListTagsForResourceRequest:
36
+ out: ListTagsForResourceRequest = {} # type: ignore[typeddict-item]
37
+ if data.get("resourceArn") is not None:
38
+ out["resource_arn"] = data["resourceArn"]
39
+ else:
40
+ raise DeserializationError("ListTagsForResourceRequest.resource_arn required")
41
+ if data.get("nextToken") is not None:
42
+ out["next_token"] = data["nextToken"]
43
+ if data.get("maxResults") is not None:
44
+ out["max_results"] = data["maxResults"]
45
+ return out
@@ -0,0 +1,43 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#ListTagsForResourceResponse``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ if TYPE_CHECKING:
8
+ import capo_keyspaces.types.next_token
9
+ import capo_keyspaces.types.tag_list
10
+
11
+
12
+ class ListTagsForResourceResponse(TypedDict, closed=True):
13
+ next_token: NotRequired["capo_keyspaces.types.next_token.NextToken"]
14
+ """<p>A token to specify where to start paginating. This is the <code>NextToken</code> from a previously truncated response.</p>"""
15
+ tags: NotRequired["capo_keyspaces.types.tag_list.TagList"]
16
+ """<p>A list of tags.</p>"""
17
+
18
+
19
+ # --- awsJson1_0 ser/de ---
20
+ def serialize_aws_json_1_0(value: ListTagsForResourceResponse) -> dict:
21
+ out: dict = {}
22
+ if "next_token" in value:
23
+ out["nextToken"] = value["next_token"]
24
+ if "tags" in value:
25
+ import capo_keyspaces.types.tag_list
26
+
27
+ out["tags"] = capo_keyspaces.types.tag_list.serialize_aws_json_1_0(
28
+ value["tags"]
29
+ )
30
+ return out
31
+
32
+
33
+ def deserialize_aws_json_1_0(data: dict) -> ListTagsForResourceResponse:
34
+ out: ListTagsForResourceResponse = {} # type: ignore[typeddict-item]
35
+ if data.get("nextToken") is not None:
36
+ out["next_token"] = data["nextToken"]
37
+ if data.get("tags") is not None:
38
+ import capo_keyspaces.types.tag_list
39
+
40
+ out["tags"] = capo_keyspaces.types.tag_list.deserialize_aws_json_1_0(
41
+ data["tags"]
42
+ )
43
+ return out
@@ -0,0 +1,45 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#ListTypesRequest``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ from capo_keyspaces.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_keyspaces.types.keyspace_name
11
+ import capo_keyspaces.types.max_results
12
+ import capo_keyspaces.types.next_token
13
+
14
+
15
+ class ListTypesRequest(TypedDict, closed=True):
16
+ next_token: NotRequired["capo_keyspaces.types.next_token.NextToken"]
17
+ """<p> The pagination token. To resume pagination, provide the <code>NextToken</code> value as an argument of a subsequent API invocation. </p>"""
18
+ max_results: NotRequired["capo_keyspaces.types.max_results.MaxResults"]
19
+ """<p> The total number of types to return in the output. If the total number of types available is more than the value specified, a <code>NextToken</code> is provided in the output. To resume pagination, provide the <code>NextToken</code> value as an argument of a subsequent API invocation. </p>"""
20
+ keyspace_name: "capo_keyspaces.types.keyspace_name.KeyspaceName"
21
+ """<p> The name of the keyspace that contains the listed types. </p>"""
22
+
23
+
24
+ # --- awsJson1_0 ser/de ---
25
+ def serialize_aws_json_1_0(value: ListTypesRequest) -> dict:
26
+ out: dict = {}
27
+ if "next_token" in value:
28
+ out["nextToken"] = value["next_token"]
29
+ if "max_results" in value:
30
+ out["maxResults"] = value["max_results"]
31
+ out["keyspaceName"] = value["keyspace_name"]
32
+ return out
33
+
34
+
35
+ def deserialize_aws_json_1_0(data: dict) -> ListTypesRequest:
36
+ out: ListTypesRequest = {} # type: ignore[typeddict-item]
37
+ if data.get("nextToken") is not None:
38
+ out["next_token"] = data["nextToken"]
39
+ if data.get("maxResults") is not None:
40
+ out["max_results"] = data["maxResults"]
41
+ if data.get("keyspaceName") is not None:
42
+ out["keyspace_name"] = data["keyspaceName"]
43
+ else:
44
+ raise DeserializationError("ListTypesRequest.keyspace_name required")
45
+ return out
@@ -0,0 +1,46 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#ListTypesResponse``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ from capo_keyspaces.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_keyspaces.types.next_token
11
+ import capo_keyspaces.types.type_name_list
12
+
13
+
14
+ class ListTypesResponse(TypedDict, closed=True):
15
+ next_token: NotRequired["capo_keyspaces.types.next_token.NextToken"]
16
+ """<p> The pagination token. To resume pagination, provide the <code>NextToken</code> value as an argument of a subsequent API invocation. </p>"""
17
+ types: "capo_keyspaces.types.type_name_list.TypeNameList"
18
+ """<p> The list of types contained in the specified keyspace. </p>"""
19
+
20
+
21
+ # --- awsJson1_0 ser/de ---
22
+ def serialize_aws_json_1_0(value: ListTypesResponse) -> dict:
23
+ out: dict = {}
24
+ if "next_token" in value:
25
+ out["nextToken"] = value["next_token"]
26
+ import capo_keyspaces.types.type_name_list
27
+
28
+ out["types"] = capo_keyspaces.types.type_name_list.serialize_aws_json_1_0(
29
+ value["types"]
30
+ )
31
+ return out
32
+
33
+
34
+ def deserialize_aws_json_1_0(data: dict) -> ListTypesResponse:
35
+ out: ListTypesResponse = {} # type: ignore[typeddict-item]
36
+ if data.get("nextToken") is not None:
37
+ out["next_token"] = data["nextToken"]
38
+ if data.get("types") is not None:
39
+ import capo_keyspaces.types.type_name_list
40
+
41
+ out["types"] = capo_keyspaces.types.type_name_list.deserialize_aws_json_1_0(
42
+ data["types"]
43
+ )
44
+ else:
45
+ raise DeserializationError("ListTypesResponse.types required")
46
+ return out
@@ -0,0 +1,5 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#MaxResults``."""
2
+
3
+ from typing import TypeAlias
4
+
5
+ MaxResults: TypeAlias = int
@@ -0,0 +1,5 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#NextToken``."""
2
+
3
+ from typing import TypeAlias
4
+
5
+ NextToken: TypeAlias = str
@@ -0,0 +1,31 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#PartitionKey``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import TypedDict
6
+
7
+ from capo_keyspaces.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_keyspaces.types.generic_string
11
+
12
+
13
+ class PartitionKey(TypedDict, closed=True):
14
+ name: "capo_keyspaces.types.generic_string.GenericString"
15
+ """<p>The name(s) of the partition key column(s).</p>"""
16
+
17
+
18
+ # --- awsJson1_0 ser/de ---
19
+ def serialize_aws_json_1_0(value: PartitionKey) -> dict:
20
+ out: dict = {}
21
+ out["name"] = value["name"]
22
+ return out
23
+
24
+
25
+ def deserialize_aws_json_1_0(data: dict) -> PartitionKey:
26
+ out: PartitionKey = {} # type: ignore[typeddict-item]
27
+ if data.get("name") is not None:
28
+ out["name"] = data["name"]
29
+ else:
30
+ raise DeserializationError("PartitionKey.name required")
31
+ return out
@@ -0,0 +1,29 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#PartitionKeyList``."""
2
+
3
+ from typing import TYPE_CHECKING, TypeAlias
4
+
5
+ if TYPE_CHECKING:
6
+ import capo_keyspaces.types.partition_key
7
+
8
+ PartitionKeyList: TypeAlias = list["capo_keyspaces.types.partition_key.PartitionKey"]
9
+
10
+
11
+ # --- awsJson1_0 ser/de ---
12
+ def serialize_aws_json_1_0(value: PartitionKeyList) -> list:
13
+ import capo_keyspaces.types.partition_key
14
+
15
+ out: list = []
16
+ for item in value:
17
+ out.append(capo_keyspaces.types.partition_key.serialize_aws_json_1_0(item))
18
+ return out
19
+
20
+
21
+ def deserialize_aws_json_1_0(data: list) -> PartitionKeyList:
22
+ import capo_keyspaces.types.partition_key
23
+
24
+ out: PartitionKeyList = []
25
+ for item in data:
26
+ if item is None:
27
+ continue
28
+ out.append(capo_keyspaces.types.partition_key.deserialize_aws_json_1_0(item))
29
+ return out
@@ -0,0 +1,33 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#PointInTimeRecovery``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import TypedDict
6
+
7
+ from capo_keyspaces.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_keyspaces.types.point_in_time_recovery_status
11
+
12
+
13
+ class PointInTimeRecovery(TypedDict, closed=True):
14
+ status: (
15
+ "capo_keyspaces.types.point_in_time_recovery_status.PointInTimeRecoveryStatus"
16
+ )
17
+ """<p>The options are:</p> <ul> <li> <p> <code>status=ENABLED</code> </p> </li> <li> <p> <code>status=DISABLED</code> </p> </li> </ul>"""
18
+
19
+
20
+ # --- awsJson1_0 ser/de ---
21
+ def serialize_aws_json_1_0(value: PointInTimeRecovery) -> dict:
22
+ out: dict = {}
23
+ out["status"] = value["status"]
24
+ return out
25
+
26
+
27
+ def deserialize_aws_json_1_0(data: dict) -> PointInTimeRecovery:
28
+ out: PointInTimeRecovery = {} # type: ignore[typeddict-item]
29
+ if data.get("status") is not None:
30
+ out["status"] = data["status"]
31
+ else:
32
+ raise DeserializationError("PointInTimeRecovery.status required")
33
+ return out
@@ -0,0 +1,5 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#PointInTimeRecoveryStatus``."""
2
+
3
+ from typing import TypeAlias
4
+
5
+ PointInTimeRecoveryStatus: TypeAlias = str
@@ -0,0 +1,54 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#PointInTimeRecoverySummary``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ from capo_keyspaces.errors import DeserializationError
8
+
9
+ if TYPE_CHECKING:
10
+ import capo_keyspaces.types.point_in_time_recovery_status
11
+ import capo_keyspaces.types.timestamp
12
+
13
+
14
+ class PointInTimeRecoverySummary(TypedDict, closed=True):
15
+ status: (
16
+ "capo_keyspaces.types.point_in_time_recovery_status.PointInTimeRecoveryStatus"
17
+ )
18
+ """<p>Shows if point-in-time recovery is enabled or disabled for the specified table.</p>"""
19
+ earliest_restorable_timestamp: NotRequired[
20
+ "capo_keyspaces.types.timestamp.Timestamp"
21
+ ]
22
+ """<p>Specifies the earliest possible restore point of the table in ISO 8601 format.</p>"""
23
+
24
+
25
+ # --- awsJson1_0 ser/de ---
26
+ def serialize_aws_json_1_0(value: PointInTimeRecoverySummary) -> dict:
27
+ out: dict = {}
28
+ out["status"] = value["status"]
29
+ if "earliest_restorable_timestamp" in value:
30
+ import capo_keyspaces.types.timestamp
31
+
32
+ out["earliestRestorableTimestamp"] = (
33
+ capo_keyspaces.types.timestamp.serialize_aws_json_1_0(
34
+ value["earliest_restorable_timestamp"]
35
+ )
36
+ )
37
+ return out
38
+
39
+
40
+ def deserialize_aws_json_1_0(data: dict) -> PointInTimeRecoverySummary:
41
+ out: PointInTimeRecoverySummary = {} # type: ignore[typeddict-item]
42
+ if data.get("status") is not None:
43
+ out["status"] = data["status"]
44
+ else:
45
+ raise DeserializationError("PointInTimeRecoverySummary.status required")
46
+ if data.get("earliestRestorableTimestamp") is not None:
47
+ import capo_keyspaces.types.timestamp
48
+
49
+ out["earliest_restorable_timestamp"] = (
50
+ capo_keyspaces.types.timestamp.deserialize_aws_json_1_0(
51
+ data["earliestRestorableTimestamp"]
52
+ )
53
+ )
54
+ return out
@@ -0,0 +1,5 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#region``."""
2
+
3
+ from typing import TypeAlias
4
+
5
+ region: TypeAlias = str
@@ -0,0 +1,17 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#RegionList``."""
2
+
3
+ from typing import TYPE_CHECKING, TypeAlias
4
+
5
+ if TYPE_CHECKING:
6
+ import capo_keyspaces.types.region
7
+
8
+ RegionList: TypeAlias = list["capo_keyspaces.types.region.region"]
9
+
10
+
11
+ # --- awsJson1_0 ser/de ---
12
+ def serialize_aws_json_1_0(value: RegionList) -> list:
13
+ return list(value)
14
+
15
+
16
+ def deserialize_aws_json_1_0(data: list) -> RegionList:
17
+ return [item for item in data if item is not None]
@@ -0,0 +1,49 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#ReplicaAutoScalingSpecification``."""
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from typing_extensions import NotRequired, TypedDict
6
+
7
+ if TYPE_CHECKING:
8
+ import capo_keyspaces.types.auto_scaling_specification
9
+ import capo_keyspaces.types.region
10
+
11
+
12
+ class ReplicaAutoScalingSpecification(TypedDict, closed=True):
13
+ region: NotRequired["capo_keyspaces.types.region.region"]
14
+ """<p>The Amazon Web Services Region.</p>"""
15
+ auto_scaling_specification: NotRequired[
16
+ "capo_keyspaces.types.auto_scaling_specification.AutoScalingSpecification"
17
+ ]
18
+ """<p>The auto scaling settings for a multi-Region table in the specified Amazon Web Services Region.</p>"""
19
+
20
+
21
+ # --- awsJson1_0 ser/de ---
22
+ def serialize_aws_json_1_0(value: ReplicaAutoScalingSpecification) -> dict:
23
+ out: dict = {}
24
+ if "region" in value:
25
+ out["region"] = value["region"]
26
+ if "auto_scaling_specification" in value:
27
+ import capo_keyspaces.types.auto_scaling_specification
28
+
29
+ out["autoScalingSpecification"] = (
30
+ capo_keyspaces.types.auto_scaling_specification.serialize_aws_json_1_0(
31
+ value["auto_scaling_specification"]
32
+ )
33
+ )
34
+ return out
35
+
36
+
37
+ def deserialize_aws_json_1_0(data: dict) -> ReplicaAutoScalingSpecification:
38
+ out: ReplicaAutoScalingSpecification = {} # type: ignore[typeddict-item]
39
+ if data.get("region") is not None:
40
+ out["region"] = data["region"]
41
+ if data.get("autoScalingSpecification") is not None:
42
+ import capo_keyspaces.types.auto_scaling_specification
43
+
44
+ out["auto_scaling_specification"] = (
45
+ capo_keyspaces.types.auto_scaling_specification.deserialize_aws_json_1_0(
46
+ data["autoScalingSpecification"]
47
+ )
48
+ )
49
+ return out
@@ -0,0 +1,39 @@
1
+ """Generated from Smithy shape ``com.amazonaws.keyspaces#ReplicaAutoScalingSpecificationList``."""
2
+
3
+ from typing import TYPE_CHECKING, TypeAlias
4
+
5
+ if TYPE_CHECKING:
6
+ import capo_keyspaces.types.replica_auto_scaling_specification
7
+
8
+ ReplicaAutoScalingSpecificationList: TypeAlias = list[
9
+ "capo_keyspaces.types.replica_auto_scaling_specification.ReplicaAutoScalingSpecification"
10
+ ]
11
+
12
+
13
+ # --- awsJson1_0 ser/de ---
14
+ def serialize_aws_json_1_0(value: ReplicaAutoScalingSpecificationList) -> list:
15
+ import capo_keyspaces.types.replica_auto_scaling_specification
16
+
17
+ out: list = []
18
+ for item in value:
19
+ out.append(
20
+ capo_keyspaces.types.replica_auto_scaling_specification.serialize_aws_json_1_0(
21
+ item
22
+ )
23
+ )
24
+ return out
25
+
26
+
27
+ def deserialize_aws_json_1_0(data: list) -> ReplicaAutoScalingSpecificationList:
28
+ import capo_keyspaces.types.replica_auto_scaling_specification
29
+
30
+ out: ReplicaAutoScalingSpecificationList = []
31
+ for item in data:
32
+ if item is None:
33
+ continue
34
+ out.append(
35
+ capo_keyspaces.types.replica_auto_scaling_specification.deserialize_aws_json_1_0(
36
+ item
37
+ )
38
+ )
39
+ return out