boto3-stubs 1.34.65__py3-none-any.whl → 1.36.1__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 (41) hide show
  1. boto3-stubs/__init__.pyi +5945 -3951
  2. boto3-stubs/compat.pyi +7 -2
  3. boto3-stubs/crt.pyi +10 -6
  4. boto3-stubs/docs/__init__.pyi +6 -0
  5. boto3-stubs/docs/action.pyi +37 -0
  6. boto3-stubs/docs/attr.pyi +33 -0
  7. boto3-stubs/docs/base.pyi +19 -0
  8. boto3-stubs/docs/client.pyi +9 -0
  9. boto3-stubs/docs/collection.pyi +37 -0
  10. boto3-stubs/docs/docstring.pyi +18 -0
  11. boto3-stubs/docs/method.pyi +27 -0
  12. boto3-stubs/docs/resource.pyi +20 -0
  13. boto3-stubs/docs/service.pyi +17 -0
  14. boto3-stubs/docs/subresource.pyi +22 -0
  15. boto3-stubs/docs/utils.pyi +16 -5
  16. boto3-stubs/docs/waiter.pyi +33 -0
  17. boto3-stubs/dynamodb/conditions.pyi +31 -38
  18. boto3-stubs/dynamodb/table.pyi +15 -9
  19. boto3-stubs/dynamodb/transform.pyi +18 -12
  20. boto3-stubs/dynamodb/types.pyi +22 -33
  21. boto3-stubs/ec2/createtags.pyi +9 -3
  22. boto3-stubs/ec2/deletetags.pyi +6 -0
  23. boto3-stubs/exceptions.pyi +6 -0
  24. boto3-stubs/resources/action.pyi +12 -6
  25. boto3-stubs/resources/base.pyi +17 -13
  26. boto3-stubs/resources/collection.pyi +10 -6
  27. boto3-stubs/resources/factory.pyi +9 -3
  28. boto3-stubs/resources/model.pyi +55 -53
  29. boto3-stubs/resources/params.pyi +12 -6
  30. boto3-stubs/resources/response.pyi +20 -14
  31. boto3-stubs/s3/constants.pyi +6 -0
  32. boto3-stubs/s3/inject.pyi +62 -56
  33. boto3-stubs/s3/transfer.pyi +23 -17
  34. boto3-stubs/session.pyi +5971 -3955
  35. boto3-stubs/utils.pyi +10 -4
  36. {boto3_stubs-1.34.65.dist-info → boto3_stubs-1.36.1.dist-info}/LICENSE +1 -1
  37. {boto3_stubs-1.34.65.dist-info → boto3_stubs-1.36.1.dist-info}/METADATA +1062 -872
  38. boto3_stubs-1.36.1.dist-info/RECORD +45 -0
  39. {boto3_stubs-1.34.65.dist-info → boto3_stubs-1.36.1.dist-info}/WHEEL +1 -1
  40. boto3_stubs-1.34.65.dist-info/RECORD +0 -34
  41. {boto3_stubs-1.34.65.dist-info → boto3_stubs-1.36.1.dist-info}/top_level.txt +0 -0
boto3-stubs/compat.pyi CHANGED
@@ -1,7 +1,12 @@
1
+ """
2
+ Type annotations for boto3.compat module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
1
7
  import os
2
- from typing import Type
3
8
 
4
- SOCKET_ERROR: Type[ConnectionError]
9
+ SOCKET_ERROR: type[ConnectionError]
5
10
 
6
11
  def filter_python_deprecation_warnings() -> None: ...
7
12
 
boto3-stubs/crt.pyi CHANGED
@@ -1,11 +1,17 @@
1
+ """
2
+ Type annotations for boto3.crt module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
1
7
  import threading
2
- from typing import Any, Optional
8
+ from typing import Any
3
9
 
4
10
  from botocore.client import BaseClient
5
11
  from s3transfer.crt import BotocoreCRTRequestSerializer, CRTTransferManager
6
12
 
7
- CRT_S3_CLIENT: Optional[CRTS3Client] = ...
8
- BOTOCORE_CRT_SERIALIZER: Optional[BotocoreCRTRequestSerializer] = ...
13
+ CRT_S3_CLIENT: CRTS3Client | None = ...
14
+ BOTOCORE_CRT_SERIALIZER: BotocoreCRTRequestSerializer | None = ...
9
15
 
10
16
  CLIENT_CREATION_LOCK: threading.Lock = ...
11
17
  PROCESS_LOCK_NAME: str = ...
@@ -19,6 +25,4 @@ class CRTS3Client:
19
25
 
20
26
  def is_crt_compatible_request(client: BaseClient, crt_s3_client: CRTS3Client) -> bool: ...
21
27
  def compare_identity(boto3_creds: Any, crt_s3_creds: Any) -> bool: ...
22
- def create_crt_transfer_manager(
23
- client: BaseClient, config: Any
24
- ) -> Optional[CRTTransferManager]: ...
28
+ def create_crt_transfer_manager(client: BaseClient, config: Any) -> CRTTransferManager | None: ...
@@ -1,3 +1,9 @@
1
+ """
2
+ Type annotations for boto3.docs module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
1
7
  from boto3.session import Session
2
8
 
3
9
  def generate_docs(root_dir: str, session: Session) -> None: ...
@@ -0,0 +1,37 @@
1
+ """
2
+ Type annotations for boto3.docs.action module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from boto3.resources.model import Action
8
+ from botocore.docs.bcdoc.restdoc import DocumentStructure
9
+ from botocore.hooks import BaseEventHooks
10
+ from botocore.model import ServiceModel
11
+
12
+ from .base import NestedDocumenter
13
+
14
+ PUT_DATA_WARNING_MESSAGE: str
15
+ WARNING_MESSAGES: dict[str, dict[str, str]]
16
+ IGNORE_PARAMS: dict[str, dict[str, list[str]]]
17
+
18
+ class ActionDocumenter(NestedDocumenter):
19
+ def document_actions(self, section: DocumentStructure) -> None: ...
20
+
21
+ def document_action(
22
+ section: DocumentStructure,
23
+ resource_name: str,
24
+ event_emitter: BaseEventHooks,
25
+ action_model: Action,
26
+ service_model: ServiceModel,
27
+ include_signature: bool = ...,
28
+ ) -> None: ...
29
+ def document_load_reload_action(
30
+ section: DocumentStructure,
31
+ action_name: str,
32
+ resource_name: str,
33
+ event_emitter: BaseEventHooks,
34
+ load_model: Action,
35
+ service_model: ServiceModel,
36
+ include_signature: bool = ...,
37
+ ) -> None: ...
@@ -0,0 +1,33 @@
1
+ """
2
+ Type annotations for boto3.docs.attr module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from boto3.resources.model import Identifier
8
+ from botocore.docs.bcdoc.restdoc import DocumentStructure
9
+ from botocore.docs.params import ResponseParamsDocumenter
10
+ from botocore.hooks import BaseEventHooks
11
+ from botocore.model import Shape
12
+
13
+ class ResourceShapeDocumenter(ResponseParamsDocumenter):
14
+ EVENT_NAME: str
15
+
16
+ def document_attribute(
17
+ section: DocumentStructure,
18
+ service_name: str,
19
+ resource_name: str,
20
+ attr_name: str,
21
+ event_emitter: BaseEventHooks,
22
+ attr_model: Shape,
23
+ include_signature: bool = True,
24
+ ) -> None: ...
25
+ def document_identifier(
26
+ section: DocumentStructure,
27
+ resource_name: str,
28
+ identifier_model: Identifier,
29
+ include_signature: bool = ...,
30
+ ) -> None: ...
31
+ def document_reference(
32
+ section: DocumentStructure, reference_model: Shape, include_signature: bool = ...
33
+ ) -> None: ...
@@ -0,0 +1,19 @@
1
+ """
2
+ Type annotations for boto3.docs.base module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from typing import Any
8
+
9
+ class BaseDocumenter:
10
+ member_map: dict[str, Any]
11
+ represents_service_resource: Any
12
+ def __init__(self, resource: Any) -> None: ...
13
+ @property
14
+ def class_name(self) -> str: ...
15
+
16
+ class NestedDocumenter(BaseDocumenter):
17
+ def __init__(self, resource: Any, root_docs_path: str) -> None: ...
18
+ @property
19
+ def class_name(self) -> str: ...
@@ -0,0 +1,9 @@
1
+ """
2
+ Type annotations for boto3.docs.client module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from botocore.docs.client import ClientDocumenter
8
+
9
+ class Boto3ClientDocumenter(ClientDocumenter): ...
@@ -0,0 +1,37 @@
1
+ """
2
+ Type annotations for boto3.docs.collection module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from boto3.resources.model import Action, Collection
8
+ from botocore.docs.bcdoc.restdoc import DocumentStructure
9
+ from botocore.hooks import BaseEventHooks
10
+ from botocore.model import ServiceModel
11
+
12
+ from .base import NestedDocumenter
13
+
14
+ class CollectionDocumenter(NestedDocumenter):
15
+ def document_collections(self, section: DocumentStructure) -> None: ...
16
+
17
+ def document_collection_object(
18
+ section: DocumentStructure, collection_model: Collection, include_signature: bool = ...
19
+ ) -> None: ...
20
+ def document_batch_action(
21
+ section: DocumentStructure,
22
+ resource_name: str,
23
+ event_emitter: BaseEventHooks,
24
+ batch_action_model: Action,
25
+ service_model: ServiceModel,
26
+ collection_model: Collection,
27
+ include_signature: bool = ...,
28
+ ) -> None: ...
29
+ def document_collection_method(
30
+ section: DocumentStructure,
31
+ resource_name: str,
32
+ action_name: str,
33
+ event_emitter: BaseEventHooks,
34
+ collection_model: Collection,
35
+ service_model: ServiceModel,
36
+ include_signature: bool = ...,
37
+ ) -> None: ...
@@ -0,0 +1,18 @@
1
+ """
2
+ Type annotations for boto3.docs.docstring module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from botocore.docs.docstring import LazyLoadedDocstring
8
+
9
+ class ActionDocstring(LazyLoadedDocstring): ...
10
+ class LoadReloadDocstring(LazyLoadedDocstring): ...
11
+ class SubResourceDocstring(LazyLoadedDocstring): ...
12
+ class AttributeDocstring(LazyLoadedDocstring): ...
13
+ class IdentifierDocstring(LazyLoadedDocstring): ...
14
+ class ReferenceDocstring(LazyLoadedDocstring): ...
15
+ class CollectionDocstring(LazyLoadedDocstring): ...
16
+ class CollectionMethodDocstring(LazyLoadedDocstring): ...
17
+ class BatchActionDocstring(LazyLoadedDocstring): ...
18
+ class ResourceWaiterDocstring(LazyLoadedDocstring): ...
@@ -0,0 +1,27 @@
1
+ """
2
+ Type annotations for boto3.docs.method module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from typing import Any
8
+
9
+ from boto3.resources.model import Action
10
+ from botocore.docs.bcdoc.restdoc import DocumentStructure
11
+ from botocore.hooks import BaseEventHooks
12
+
13
+ def document_model_driven_resource_method(
14
+ section: DocumentStructure,
15
+ method_name: str,
16
+ operation_model: Any,
17
+ event_emitter: BaseEventHooks,
18
+ method_description: str | None = ...,
19
+ example_prefix: str | None = ...,
20
+ include_input: Any | None = ...,
21
+ include_output: Any | None = ...,
22
+ exclude_input: Any | None = ...,
23
+ exclude_output: Any | None = ...,
24
+ document_output: bool = ...,
25
+ resource_action_model: Action | None = ...,
26
+ include_signature: bool = ...,
27
+ ) -> None: ...
@@ -0,0 +1,20 @@
1
+ """
2
+ Type annotations for boto3.docs.resource module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from typing import Any
8
+
9
+ from botocore.docs.bcdoc.restdoc import DocumentStructure
10
+ from botocore.session import Session
11
+
12
+ from .base import BaseDocumenter
13
+
14
+ class ResourceDocumenter(BaseDocumenter):
15
+ def __init__(self, resource: Any, botocore_session: Session, root_docs_path: str) -> None: ...
16
+ def document_resource(self, section: DocumentStructure) -> None: ...
17
+
18
+ class ServiceResourceDocumenter(ResourceDocumenter):
19
+ @property
20
+ def class_name(self) -> str: ...
@@ -0,0 +1,17 @@
1
+ """
2
+ Type annotations for boto3.docs.service module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from botocore.docs.bcdoc.restdoc import DocumentStructure
8
+ from botocore.docs.service import ServiceDocumenter as BaseServiceDocumenter
9
+ from botocore.session import Session
10
+
11
+ class ServiceDocumenter(BaseServiceDocumenter):
12
+ EXAMPLE_PATH: str
13
+ sections: list[str]
14
+ def __init__(self, service_name: str, session: Session, root_docs_path: str) -> None: ...
15
+ def document_service(self) -> bytes: ...
16
+ def client_api(self, section: DocumentStructure) -> None: ...
17
+ def resource_section(self, section: DocumentStructure) -> None: ...
@@ -0,0 +1,22 @@
1
+ """
2
+ Type annotations for boto3.docs.subresource module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from boto3.resources.model import ResourceModel
8
+ from botocore.docs.bcdoc.restdoc import DocumentStructure
9
+ from botocore.model import ServiceModel
10
+
11
+ from .base import NestedDocumenter
12
+
13
+ class SubResourceDocumenter(NestedDocumenter):
14
+ def document_sub_resources(self, section: DocumentStructure) -> None: ...
15
+
16
+ def document_sub_resource(
17
+ section: DocumentStructure,
18
+ resource_name: str,
19
+ sub_resource_model: ResourceModel,
20
+ service_model: ServiceModel,
21
+ include_signature: bool = ...,
22
+ ) -> None: ...
@@ -1,13 +1,24 @@
1
- from typing import Any, Iterable, List, Mapping, Optional
1
+ """
2
+ Type annotations for boto3.docs.utils module.
2
3
 
3
- def get_resource_ignore_params(params: Mapping[str, Any]) -> List[str]: ...
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from typing import Any, Iterable, Mapping
8
+
9
+ from botocore.docs.bcdoc.restdoc import DocumentStructure
10
+
11
+ def get_resource_ignore_params(params: Mapping[str, Any]) -> list[str]: ...
4
12
  def is_resource_action(action_handle: Any) -> bool: ...
5
- def get_resource_public_actions(resource_class: Any) -> List[Any]: ...
13
+ def get_resource_public_actions(resource_class: Any) -> list[Any]: ...
6
14
  def get_identifier_values_for_example(identifier_names: Iterable[str]) -> str: ...
7
15
  def get_identifier_args_for_signature(identifier_names: Iterable[str]) -> str: ...
8
16
  def get_identifier_description(resource_name: str, identifier_name: str) -> str: ...
9
17
  def add_resource_type_overview(
10
- section: Any, resource_type: str, description: str, intro_link: Optional[str] = ...
18
+ section: DocumentStructure,
19
+ resource_type: str,
20
+ description: str,
21
+ intro_link: str | None = ...,
11
22
  ) -> None: ...
12
23
 
13
24
  class DocumentModifiedShape:
@@ -15,5 +26,5 @@ class DocumentModifiedShape:
15
26
  self, shape_name: str, new_type: str, new_description: str, new_example_value: str
16
27
  ) -> None: ...
17
28
  def replace_documentation_for_matching_shape(
18
- self, event_name: str, section: Any, **kwargs: Any
29
+ self, event_name: str, section: DocumentStructure, **kwargs: Any
19
30
  ) -> None: ...
@@ -0,0 +1,33 @@
1
+ """
2
+ Type annotations for boto3.docs.waiter module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from typing import Any
8
+
9
+ from botocore.docs.bcdoc.restdoc import DocumentStructure
10
+ from botocore.hooks import BaseEventHooks
11
+ from botocore.model import ServiceModel
12
+ from botocore.waiter import WaiterModel
13
+
14
+ from .base import NestedDocumenter
15
+
16
+ class WaiterResourceDocumenter(NestedDocumenter):
17
+ def __init__(
18
+ self,
19
+ resource: Any,
20
+ service_waiter_model: WaiterModel,
21
+ root_docs_path: str,
22
+ ) -> None: ...
23
+ def document_resource_waiters(self, section: DocumentStructure) -> None: ...
24
+
25
+ def document_resource_waiter(
26
+ section: DocumentStructure,
27
+ resource_name: str,
28
+ event_emitter: BaseEventHooks,
29
+ service_model: ServiceModel,
30
+ resource_waiter_model: Any,
31
+ service_waiter_model: WaiterModel,
32
+ include_signature: bool = ...,
33
+ ) -> None: ...
@@ -1,32 +1,29 @@
1
- import sys
2
- from typing import Any, Dict, List, NamedTuple, Pattern
3
-
4
- if sys.version_info >= (3, 12):
5
- from typing import Literal
6
- else:
7
- from typing_extensions import Literal
8
- if sys.version_info >= (3, 12):
9
- from typing import TypedDict
10
- else:
11
- from typing_extensions import TypedDict
1
+ """
2
+ Type annotations for boto3.dynamodb.conditions module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from typing import Any, Literal, NamedTuple, Pattern, TypedDict
12
8
 
13
9
  ATTR_NAME_REGEX: Pattern[str]
14
10
 
15
- _ConditionBaseExpressionType = TypedDict(
16
- "_ConditionBaseExpressionType", {"format": str, "operator": str, "values": List[Any]}
17
- )
11
+ class _ConditionBaseExpressionType(TypedDict):
12
+ format: str
13
+ operator: str
14
+ values: list[Any]
18
15
 
19
16
  class ConditionBase:
20
17
  expression_format: str
21
18
  expression_operator: str
22
19
  has_grouped_values: bool
23
20
  def __init__(self, *values: Any) -> None: ...
24
- def __and__(self, other: ConditionBase) -> "And": ...
25
- def __or__(self, other: ConditionBase) -> "Or": ...
26
- def __invert__(self) -> "Not": ...
21
+ def __and__(self, other: ConditionBase) -> And: ...
22
+ def __or__(self, other: ConditionBase) -> Or: ...
23
+ def __invert__(self) -> Not: ...
27
24
  def get_expression(self) -> _ConditionBaseExpressionType: ...
28
- def __eq__(self, other: Any) -> bool: ...
29
- def __ne__(self, other: Any) -> bool: ...
25
+ def __eq__(self, other: object) -> bool: ...
26
+ def __ne__(self, other: object) -> bool: ...
30
27
 
31
28
  class AttributeBase:
32
29
  def __init__(self, name: str) -> None:
@@ -35,20 +32,20 @@ class AttributeBase:
35
32
  def __and__(self, value: Any) -> Any: ...
36
33
  def __or__(self, value: Any) -> Any: ...
37
34
  def __invert__(self) -> Any: ...
38
- def eq(self, value: Any) -> "Equals": ...
39
- def lt(self, value: Any) -> "LessThan": ...
40
- def lte(self, value: Any) -> "LessThanEquals": ...
41
- def gt(self, value: Any) -> "GreaterThan": ...
42
- def gte(self, value: Any) -> "GreaterThanEquals": ...
43
- def begins_with(self, value: Any) -> "BeginsWith": ...
44
- def between(self, low_value: Any, high_value: Any) -> "Between": ...
45
- def __eq__(self, other: Any) -> bool: ...
46
- def __ne__(self, other: Any) -> bool: ...
35
+ def eq(self, value: Any) -> Equals: ...
36
+ def lt(self, value: Any) -> LessThan: ...
37
+ def lte(self, value: Any) -> LessThanEquals: ...
38
+ def gt(self, value: Any) -> GreaterThan: ...
39
+ def gte(self, value: Any) -> GreaterThanEquals: ...
40
+ def begins_with(self, value: Any) -> BeginsWith: ...
41
+ def between(self, low_value: Any, high_value: Any) -> Between: ...
42
+ def __eq__(self, other: object) -> bool: ...
43
+ def __ne__(self, other: object) -> bool: ...
47
44
 
48
45
  class ConditionAttributeBase(ConditionBase, AttributeBase):
49
46
  def __init__(self, *values: Any) -> None: ...
50
- def __eq__(self, other: Any) -> bool: ...
51
- def __ne__(self, other: Any) -> bool: ...
47
+ def __eq__(self, other: object) -> bool: ...
48
+ def __ne__(self, other: object) -> bool: ...
52
49
 
53
50
  class ComparisonCondition(ConditionBase):
54
51
  expression_format: Literal["{0} {operator} {1}"] # type: ignore [override]
@@ -126,14 +123,10 @@ class Attr(AttributeBase):
126
123
  def size(self) -> Size: ...
127
124
  def attribute_type(self, value: Any) -> AttributeType: ...
128
125
 
129
- BuiltConditionExpression = NamedTuple(
130
- "BuiltConditionExpression",
131
- [
132
- ("condition_expression", str),
133
- ("attribute_name_placeholders", Dict[str, str]),
134
- ("attribute_value_placeholders", Dict[str, Any]),
135
- ],
136
- )
126
+ class BuiltConditionExpression(NamedTuple):
127
+ condition_expression: str
128
+ attribute_name_placeholders: dict[str, str]
129
+ attribute_value_placeholders: dict[str, Any]
137
130
 
138
131
  class ConditionExpressionBuilder:
139
132
  def __init__(self) -> None: ...
@@ -1,16 +1,22 @@
1
+ """
2
+ Type annotations for boto3.dynamodb.table module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
1
7
  import logging
2
8
  from types import TracebackType
3
- from typing import Any, Dict, List, Optional, Type, TypeVar
9
+ from typing import Any, TypeVar
4
10
 
5
11
  from botocore.client import BaseClient
6
12
 
7
13
  logger: logging.Logger
8
14
 
9
- def register_table_methods(base_classes: List[Any], **kwargs: Any) -> None: ...
15
+ def register_table_methods(base_classes: list[Any], **kwargs: Any) -> None: ...
10
16
 
11
17
  class TableResource:
12
18
  def __init__(self, *args: Any, **kwargs: Any) -> None: ...
13
- def batch_writer(self, overwrite_by_pkeys: Optional[List[str]] = ...) -> "BatchWriter": ...
19
+ def batch_writer(self, overwrite_by_pkeys: list[str] | None = ...) -> BatchWriter: ...
14
20
 
15
21
  _R = TypeVar("_R")
16
22
 
@@ -20,14 +26,14 @@ class BatchWriter:
20
26
  table_name: str,
21
27
  client: BaseClient,
22
28
  flush_amount: int = ...,
23
- overwrite_by_pkeys: Optional[List[str]] = ...,
29
+ overwrite_by_pkeys: list[str] | None = ...,
24
30
  ) -> None: ...
25
- def put_item(self, Item: Dict[str, Any]) -> None: ...
26
- def delete_item(self, Key: Dict[str, Any]) -> None: ...
31
+ def put_item(self, Item: dict[str, Any]) -> None: ...
32
+ def delete_item(self, Key: dict[str, Any]) -> None: ...
27
33
  def __enter__(self: _R) -> _R: ...
28
34
  def __exit__(
29
35
  self,
30
- exc_type: Optional[Type[Exception]],
31
- exc_value: Optional[Exception],
32
- tb: Optional[TracebackType],
36
+ exc_type: type[BaseException] | None,
37
+ exc_value: BaseException | None,
38
+ tb: TracebackType | None,
33
39
  ) -> None: ...
@@ -1,11 +1,17 @@
1
- from typing import Any, Callable, Dict, List, Optional
1
+ """
2
+ Type annotations for boto3.dynamodb.transform module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
7
+ from typing import Any, Callable
2
8
 
3
9
  from boto3.dynamodb.conditions import ConditionExpressionBuilder
4
10
  from boto3.dynamodb.types import TypeDeserializer, TypeSerializer
5
11
  from boto3.resources.model import ResourceModel
6
12
  from botocore.model import Shape
7
13
 
8
- def register_high_level_interface(base_classes: List[Any], **kwargs: Any) -> None: ...
14
+ def register_high_level_interface(base_classes: list[Any], **kwargs: Any) -> None: ...
9
15
  def copy_dynamodb_params(params: Any, **kwargs: Any) -> Any: ...
10
16
 
11
17
  class DynamoDBHighLevelResource:
@@ -14,27 +20,27 @@ class DynamoDBHighLevelResource:
14
20
  class TransformationInjector:
15
21
  def __init__(
16
22
  self,
17
- transformer: Optional[ParameterTransformer] = ...,
18
- condition_builder: Optional[ConditionExpressionBuilder] = ...,
19
- serializer: Optional[TypeSerializer] = ...,
20
- deserializer: Optional[TypeDeserializer] = ...,
23
+ transformer: ParameterTransformer | None = ...,
24
+ condition_builder: ConditionExpressionBuilder | None = ...,
25
+ serializer: TypeSerializer | None = ...,
26
+ deserializer: TypeDeserializer | None = ...,
21
27
  ) -> None: ...
22
28
  def inject_condition_expressions(
23
- self, params: Dict[str, Any], model: ResourceModel
29
+ self, params: dict[str, Any], model: ResourceModel
24
30
  ) -> None: ...
25
31
  def inject_attribute_value_input(
26
- self, params: Dict[str, Any], model: ResourceModel
32
+ self, params: dict[str, Any], model: ResourceModel
27
33
  ) -> None: ...
28
34
  def inject_attribute_value_output(
29
- self, parsed: Dict[str, Any], model: ResourceModel
35
+ self, parsed: dict[str, Any], model: ResourceModel
30
36
  ) -> None: ...
31
37
 
32
38
  class ConditionExpressionTransformation:
33
39
  def __init__(
34
40
  self,
35
41
  condition_builder: ConditionExpressionBuilder,
36
- placeholder_names: List[str],
37
- placeholder_values: List[str],
42
+ placeholder_names: list[str],
43
+ placeholder_values: list[str],
38
44
  is_key_condition: bool = ...,
39
45
  ) -> None: ...
40
46
  def __call__(self, value: Any) -> Any: ...
@@ -42,7 +48,7 @@ class ConditionExpressionTransformation:
42
48
  class ParameterTransformer:
43
49
  def transform(
44
50
  self,
45
- params: Dict[str, Any],
51
+ params: dict[str, Any],
46
52
  model: Shape,
47
53
  transformation: Callable[[Any], Any],
48
54
  target_shape: str,
@@ -1,32 +1,23 @@
1
- import sys
1
+ """
2
+ Type annotations for boto3.dynamodb.types module.
3
+
4
+ Copyright 2024 Vlad Emelianov
5
+ """
6
+
2
7
  from decimal import Context
3
- from typing import Any, Mapping, Sequence, Tuple
4
-
5
- if sys.version_info >= (3, 12):
6
- from typing import Literal
7
- else:
8
- from typing_extensions import Literal
9
- if sys.version_info >= (3, 12):
10
- from typing import TypedDict
11
- else:
12
- from typing_extensions import TypedDict
13
-
14
- _AttributeValueTypeDef = TypedDict(
15
- "_AttributeValueTypeDef",
16
- {
17
- "S": str,
18
- "N": str,
19
- "B": bytes,
20
- "SS": Sequence[str],
21
- "NS": Sequence[str],
22
- "BS": Sequence[bytes],
23
- "M": Mapping[str, Any],
24
- "L": Sequence[Any],
25
- "NULL": bool,
26
- "BOOL": bool,
27
- },
28
- total=False,
29
- )
8
+ from typing import Any, Literal, Mapping, Sequence, TypedDict
9
+
10
+ class _AttributeValueTypeDef(TypedDict, total=False):
11
+ S: str
12
+ N: str
13
+ B: bytes
14
+ SS: Sequence[str]
15
+ NS: Sequence[str]
16
+ BS: Sequence[bytes]
17
+ M: Mapping[str, Any]
18
+ L: Sequence[Any]
19
+ NULL: bool
20
+ BOOL: bool
30
21
 
31
22
  STRING: Literal["S"]
32
23
  NUMBER: Literal["N"]
@@ -41,14 +32,12 @@ LIST: Literal["L"]
41
32
 
42
33
  DYNAMODB_CONTEXT: Context
43
34
 
44
- BINARY_TYPES: Tuple[Any, ...]
35
+ BINARY_TYPES: tuple[Any, ...]
45
36
 
46
37
  class Binary:
47
38
  def __init__(self, value: Any) -> None: ...
48
- def __eq__(self, other: Any) -> bool: ...
49
- def __ne__(self, other: Any) -> bool: ...
50
- def __repr__(self) -> str: ...
51
- def __str__(self) -> str: ...
39
+ def __eq__(self, other: object) -> bool: ...
40
+ def __ne__(self, other: object) -> bool: ...
52
41
  def __bytes__(self) -> str: ...
53
42
  def __hash__(self) -> int: ...
54
43