summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--python-mypy-boto3-s3.spec3019
-rw-r--r--sources1
3 files changed, 3021 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..3c70a57 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/mypy-boto3-s3-1.26.104.tar.gz
diff --git a/python-mypy-boto3-s3.spec b/python-mypy-boto3-s3.spec
new file mode 100644
index 0000000..633674c
--- /dev/null
+++ b/python-mypy-boto3-s3.spec
@@ -0,0 +1,3019 @@
+%global _empty_manifest_terminate_build 0
+Name: python-mypy-boto3-s3
+Version: 1.26.104
+Release: 1
+Summary: Type annotations for boto3.S3 1.26.104 service generated with mypy-boto3-builder 7.14.5
+License: MIT License
+URL: https://github.com/youtype/mypy_boto3_builder
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/16/5b/97dc29ff1d91a22d2e64cb4e41a03c21a8497f310a986274437472e1d113/mypy-boto3-s3-1.26.104.tar.gz
+BuildArch: noarch
+
+Requires: python3-typing-extensions
+
+%description
+<a id="mypy-boto3-s3"></a>
+
+# mypy-boto3-s3
+
+[![PyPI - mypy-boto3-s3](https://img.shields.io/pypi/v/mypy-boto3-s3.svg?color=blue)](https://pypi.org/project/mypy-boto3-s3)
+[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-s3.svg?color=blue)](https://pypi.org/project/mypy-boto3-s3)
+[![Docs](https://img.shields.io/readthedocs/boto3-stubs.svg?color=blue)](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3/)
+[![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-s3?color=blue)](https://pypistats.org/packages/mypy-boto3-s3)
+
+![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png)
+
+Type annotations for
+[boto3.S3 1.26.104](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3)
+service compatible with [VSCode](https://code.visualstudio.com/),
+[PyCharm](https://www.jetbrains.com/pycharm/),
+[Emacs](https://www.gnu.org/software/emacs/),
+[Sublime Text](https://www.sublimetext.com/),
+[mypy](https://github.com/python/mypy),
+[pyright](https://github.com/microsoft/pyright) and other tools.
+
+Generated by
+[mypy-boto3-builder 7.14.5](https://github.com/youtype/mypy_boto3_builder).
+
+More information can be found on
+[boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in
+[mypy-boto3-s3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3/).
+
+See how it helps to find and fix potential bugs:
+
+![boto3-stubs demo](https://github.com/youtype/mypy_boto3_builder/raw/main/demo.gif)
+
+- [mypy-boto3-s3](#mypy-boto3-s3)
+ - [How to install](#how-to-install)
+ - [VSCode extension](#vscode-extension)
+ - [From PyPI with pip](#from-pypi-with-pip)
+ - [From conda-forge](#from-conda-forge)
+ - [How to uninstall](#how-to-uninstall)
+ - [Usage](#usage)
+ - [VSCode](#vscode)
+ - [PyCharm](#pycharm)
+ - [Emacs](#emacs)
+ - [Sublime Text](#sublime-text)
+ - [Other IDEs](#other-ides)
+ - [mypy](#mypy)
+ - [pyright](#pyright)
+ - [Explicit type annotations](#explicit-type-annotations)
+ - [Client annotations](#client-annotations)
+ - [Paginators annotations](#paginators-annotations)
+ - [Waiters annotations](#waiters-annotations)
+ - [Service Resource annotations](#service-resource-annotations)
+ - [Other resources annotations](#other-resources-annotations)
+ - [Collections annotations](#collections-annotations)
+ - [Literals](#literals)
+ - [Typed dictionaries](#typed-dictionaries)
+ - [How it works](#how-it-works)
+ - [What's new](#what's-new)
+ - [Implemented features](#implemented-features)
+ - [Latest changes](#latest-changes)
+ - [Versioning](#versioning)
+ - [Thank you](#thank-you)
+ - [Documentation](#documentation)
+ - [Support and contributing](#support-and-contributing)
+
+<a id="how-to-install"></a>
+
+## How to install
+
+<a id="vscode-extension"></a>
+
+### VSCode extension
+
+Add
+[AWS Boto3](https://marketplace.visualstudio.com/items?itemName=Boto3typed.boto3-ide)
+extension to your VSCode and run `AWS boto3: Quick Start` command.
+
+Click `Modify` and select `boto3 common` and `S3`.
+
+<a id="from-pypi-with-pip"></a>
+
+### From PyPI with pip
+
+Install `boto3-stubs` for `S3` service.
+
+```bash
+# install with boto3 type annotations
+python -m pip install 'boto3-stubs[s3]'
+
+
+# Lite version does not provide session.client/resource overloads
+# it is more RAM-friendly, but requires explicit type annotations
+python -m pip install 'boto3-stubs-lite[s3]'
+
+
+# standalone installation
+python -m pip install mypy-boto3-s3
+```
+
+<a id="from-conda-forge"></a>
+
+### From conda-forge
+
+Installing `mypy-boto3-s3` from the `conda-forge` channel can be achieved by
+adding `conda-forge` to your channels with:
+
+```bash
+conda config --add channels conda-forge
+conda config --set channel_priority strict
+```
+
+Once the `conda-forge` channel has been enabled, `mypy-boto3-s3` can be
+installed with:
+
+```bash
+conda install mypy-boto3-s3
+```
+
+It is possible to list all of the versions of `mypy-boto3-s3` available on your
+platform with:
+
+```bash
+conda search mypy-boto3-s3 --channel conda-forge
+```
+
+<a id="how-to-uninstall"></a>
+
+## How to uninstall
+
+```bash
+python -m pip uninstall -y mypy-boto3-s3
+```
+
+<a id="usage"></a>
+
+## Usage
+
+<a id="vscode"></a>
+
+### VSCode
+
+- Install
+ [Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
+- Install
+ [Pylance extension](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance)
+- Set `Pylance` as your Python Language Server
+- Install `boto3-stubs[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+Both type checking and code completion should now work. No explicit type
+annotations required, write your `boto3` code as usual.
+
+<a id="pycharm"></a>
+
+### PyCharm
+
+Install `boto3-stubs-lite[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs-lite[s3]'`
+```
+
+Both type checking and code completion should now work. Explicit type
+annotations **are required**.
+
+Use `boto3-stubs` package instead for implicit type discovery.
+
+<a id="emacs"></a>
+
+### Emacs
+
+- Install `boto3-stubs` with services you use in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+- Install [use-package](https://github.com/jwiegley/use-package),
+ [lsp](https://github.com/emacs-lsp/lsp-mode/),
+ [company](https://github.com/company-mode/company-mode) and
+ [flycheck](https://github.com/flycheck/flycheck) packages
+- Install [lsp-pyright](https://github.com/emacs-lsp/lsp-pyright) package
+
+```elisp
+(use-package lsp-pyright
+ :ensure t
+ :hook (python-mode . (lambda ()
+ (require 'lsp-pyright)
+ (lsp))) ; or lsp-deferred
+ :init (when (executable-find "python3")
+ (setq lsp-pyright-python-executable-cmd "python3"))
+ )
+```
+
+- Make sure emacs uses the environment where you have installed `boto3-stubs`
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="sublime-text"></a>
+
+### Sublime Text
+
+- Install `boto3-stubs[s3]` with services you use in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+- Install [LSP-pyright](https://github.com/sublimelsp/LSP-pyright) package
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="other-ides"></a>
+
+### Other IDEs
+
+Not tested, but as long as your IDE supports `mypy` or `pyright`, everything
+should work.
+
+<a id="mypy"></a>
+
+### mypy
+
+- Install `mypy`: `python -m pip install mypy`
+- Install `boto3-stubs[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'`
+```
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="pyright"></a>
+
+### pyright
+
+- Install `pyright`: `npm i -g pyright`
+- Install `boto3-stubs[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+Optionally, you can install `boto3-stubs` to `typings` folder.
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="explicit-type-annotations"></a>
+
+## Explicit type annotations
+
+<a id="client-annotations"></a>
+
+### Client annotations
+
+`S3Client` provides annotations for `boto3.client("s3")`.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3Client
+
+client: S3Client = Session().client("s3")
+
+# now client usage is checked by mypy and IDE should provide code completion
+```
+
+<a id="paginators-annotations"></a>
+
+### Paginators annotations
+
+`mypy_boto3_s3.paginator` module contains type annotations for all paginators.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3Client
+from mypy_boto3_s3.paginator import (
+ ListMultipartUploadsPaginator,
+ ListObjectVersionsPaginator,
+ ListObjectsPaginator,
+ ListObjectsV2Paginator,
+ ListPartsPaginator,
+)
+
+client: S3Client = Session().client("s3")
+
+# Explicit type annotations are optional here
+# Types should be correctly discovered by mypy and IDEs
+list_multipart_uploads_paginator: ListMultipartUploadsPaginator = client.get_paginator(
+ "list_multipart_uploads"
+)
+list_object_versions_paginator: ListObjectVersionsPaginator = client.get_paginator(
+ "list_object_versions"
+)
+list_objects_paginator: ListObjectsPaginator = client.get_paginator("list_objects")
+list_objects_v2_paginator: ListObjectsV2Paginator = client.get_paginator("list_objects_v2")
+list_parts_paginator: ListPartsPaginator = client.get_paginator("list_parts")
+```
+
+<a id="waiters-annotations"></a>
+
+### Waiters annotations
+
+`mypy_boto3_s3.waiter` module contains type annotations for all waiters.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3Client
+from mypy_boto3_s3.waiter import (
+ BucketExistsWaiter,
+ BucketNotExistsWaiter,
+ ObjectExistsWaiter,
+ ObjectNotExistsWaiter,
+)
+
+client: S3Client = Session().client("s3")
+
+# Explicit type annotations are optional here
+# Types should be correctly discovered by mypy and IDEs
+bucket_exists_waiter: BucketExistsWaiter = client.get_waiter("bucket_exists")
+bucket_not_exists_waiter: BucketNotExistsWaiter = client.get_waiter("bucket_not_exists")
+object_exists_waiter: ObjectExistsWaiter = client.get_waiter("object_exists")
+object_not_exists_waiter: ObjectNotExistsWaiter = client.get_waiter("object_not_exists")
+```
+
+<a id="service-resource-annotations"></a>
+
+### Service Resource annotations
+
+`S3ServiceResource` provides annotations for `boto3.resource("s3")`.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3ServiceResource
+
+resource: S3ServiceResource = Session().resource("s3")
+
+# now resource usage is checked by mypy and IDE should provide code completion
+```
+
+<a id="other-resources-annotations"></a>
+
+### Other resources annotations
+
+`mypy_boto3_s3.service_resource` module contains type annotations for all
+resources.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3ServiceResource
+from mypy_boto3_s3.service_resource import (
+ Bucket,
+ BucketAcl,
+ BucketCors,
+ BucketLifecycle,
+ BucketLifecycleConfiguration,
+ BucketLogging,
+ BucketNotification,
+ BucketPolicy,
+ BucketRequestPayment,
+ BucketTagging,
+ BucketVersioning,
+ BucketWebsite,
+ MultipartUpload,
+ MultipartUploadPart,
+ Object,
+ ObjectAcl,
+ ObjectSummary,
+ ObjectVersion,
+)
+
+resource: S3ServiceResource = Session().resource("s3")
+
+# Explicit type annotations are optional here
+# Type should be correctly discovered by mypy and IDEs
+my_bucket: Bucket = resource.Bucket(...)
+my_bucket_acl: BucketAcl = resource.BucketAcl(...)
+my_bucket_cors: BucketCors = resource.BucketCors(...)
+my_bucket_lifecycle: BucketLifecycle = resource.BucketLifecycle(...)
+my_bucket_lifecycle_configuration: BucketLifecycleConfiguration = (
+ resource.BucketLifecycleConfiguration(...)
+)
+my_bucket_logging: BucketLogging = resource.BucketLogging(...)
+my_bucket_notification: BucketNotification = resource.BucketNotification(...)
+my_bucket_policy: BucketPolicy = resource.BucketPolicy(...)
+my_bucket_request_payment: BucketRequestPayment = resource.BucketRequestPayment(...)
+my_bucket_tagging: BucketTagging = resource.BucketTagging(...)
+my_bucket_versioning: BucketVersioning = resource.BucketVersioning(...)
+my_bucket_website: BucketWebsite = resource.BucketWebsite(...)
+my_multipart_upload: MultipartUpload = resource.MultipartUpload(...)
+my_multipart_upload_part: MultipartUploadPart = resource.MultipartUploadPart(...)
+my_object: Object = resource.Object(...)
+my_object_acl: ObjectAcl = resource.ObjectAcl(...)
+my_object_summary: ObjectSummary = resource.ObjectSummary(...)
+my_object_version: ObjectVersion = resource.ObjectVersion(...)
+```
+
+<a id="collections-annotations"></a>
+
+### Collections annotations
+
+`mypy_boto3_s3.service_resource` module contains type annotations for all
+`S3ServiceResource` collections.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3ServiceResource
+from mypy_boto3_s3.service_resource import ServiceResourceBucketsCollection
+
+resource: S3ServiceResource = Session().resource("s3")
+
+# Explicit type annotations are optional here
+# Type should be correctly discovered by mypy and IDEs
+buckets: s3_resources.ServiceResourceBucketsCollection = resource.buckets
+```
+
+<a id="literals"></a>
+
+### Literals
+
+`mypy_boto3_s3.literals` module contains literals extracted from shapes that
+can be used in user code for type checking.
+
+```python
+from mypy_boto3_s3.literals import (
+ AnalyticsS3ExportFileFormatType,
+ ArchiveStatusType,
+ BucketAccelerateStatusType,
+ BucketCannedACLType,
+ BucketExistsWaiterName,
+ BucketLocationConstraintType,
+ BucketLogsPermissionType,
+ BucketNotExistsWaiterName,
+ BucketVersioningStatusType,
+ ChecksumAlgorithmType,
+ ChecksumModeType,
+ CompressionTypeType,
+ DeleteMarkerReplicationStatusType,
+ EncodingTypeType,
+ EventType,
+ ExistingObjectReplicationStatusType,
+ ExpirationStatusType,
+ ExpressionTypeType,
+ FileHeaderInfoType,
+ FilterRuleNameType,
+ IntelligentTieringAccessTierType,
+ IntelligentTieringStatusType,
+ InventoryFormatType,
+ InventoryFrequencyType,
+ InventoryIncludedObjectVersionsType,
+ InventoryOptionalFieldType,
+ JSONTypeType,
+ ListMultipartUploadsPaginatorName,
+ ListObjectVersionsPaginatorName,
+ ListObjectsPaginatorName,
+ ListObjectsV2PaginatorName,
+ ListPartsPaginatorName,
+ MFADeleteStatusType,
+ MFADeleteType,
+ MetadataDirectiveType,
+ MetricsStatusType,
+ ObjectAttributesType,
+ ObjectCannedACLType,
+ ObjectExistsWaiterName,
+ ObjectLockEnabledType,
+ ObjectLockLegalHoldStatusType,
+ ObjectLockModeType,
+ ObjectLockRetentionModeType,
+ ObjectNotExistsWaiterName,
+ ObjectOwnershipType,
+ ObjectStorageClassType,
+ ObjectVersionStorageClassType,
+ OwnerOverrideType,
+ PayerType,
+ PermissionType,
+ ProtocolType,
+ QuoteFieldsType,
+ ReplicaModificationsStatusType,
+ ReplicationRuleStatusType,
+ ReplicationStatusType,
+ ReplicationTimeStatusType,
+ RequestChargedType,
+ RequestPayerType,
+ RestoreRequestTypeType,
+ ServerSideEncryptionType,
+ SseKmsEncryptedObjectsStatusType,
+ StorageClassAnalysisSchemaVersionType,
+ StorageClassType,
+ TaggingDirectiveType,
+ TierType,
+ TransitionStorageClassType,
+ TypeType,
+ S3ServiceName,
+ ServiceName,
+ ResourceServiceName,
+ PaginatorName,
+ WaiterName,
+ RegionName,
+)
+
+
+def check_value(value: AnalyticsS3ExportFileFormatType) -> bool:
+ ...
+```
+
+<a id="typed-dictionaries"></a>
+
+### Typed dictionaries
+
+`mypy_boto3_s3.type_defs` module contains structures and shapes assembled to
+typed dictionaries for additional type checking.
+
+```python
+from mypy_boto3_s3.type_defs import (
+ AbortIncompleteMultipartUploadTypeDef,
+ ResponseMetadataTypeDef,
+ AbortMultipartUploadRequestMultipartUploadAbortTypeDef,
+ AbortMultipartUploadRequestRequestTypeDef,
+ AccelerateConfigurationTypeDef,
+ OwnerTypeDef,
+ AccessControlTranslationTypeDef,
+ TagTypeDef,
+ AnalyticsS3BucketDestinationTypeDef,
+ CopySourceTypeDef,
+ BucketDownloadFileRequestTypeDef,
+ BucketDownloadFileobjRequestTypeDef,
+ BucketTypeDef,
+ BucketUploadFileRequestTypeDef,
+ BucketUploadFileobjRequestTypeDef,
+ CORSRuleTypeDef,
+ CSVInputTypeDef,
+ CSVOutputTypeDef,
+ ChecksumTypeDef,
+ ClientDownloadFileRequestTypeDef,
+ ClientDownloadFileobjRequestTypeDef,
+ ClientGeneratePresignedPostRequestTypeDef,
+ ClientUploadFileRequestTypeDef,
+ ClientUploadFileobjRequestTypeDef,
+ CloudFunctionConfigurationTypeDef,
+ CommonPrefixTypeDef,
+ CompletedPartTypeDef,
+ ConditionTypeDef,
+ CopyObjectResultTypeDef,
+ CopyObjectRequestObjectCopyFromTypeDef,
+ CopyObjectRequestObjectSummaryCopyFromTypeDef,
+ CopyPartResultTypeDef,
+ CreateBucketConfigurationTypeDef,
+ CreateMultipartUploadRequestObjectInitiateMultipartUploadTypeDef,
+ CreateMultipartUploadRequestObjectSummaryInitiateMultipartUploadTypeDef,
+ CreateMultipartUploadRequestRequestTypeDef,
+ DefaultRetentionTypeDef,
+ DeleteBucketAnalyticsConfigurationRequestRequestTypeDef,
+ DeleteBucketCorsRequestBucketCorsDeleteTypeDef,
+ DeleteBucketCorsRequestRequestTypeDef,
+ DeleteBucketEncryptionRequestRequestTypeDef,
+ DeleteBucketIntelligentTieringConfigurationRequestRequestTypeDef,
+ DeleteBucketInventoryConfigurationRequestRequestTypeDef,
+ DeleteBucketLifecycleRequestBucketLifecycleConfigurationDeleteTypeDef,
+ DeleteBucketLifecycleRequestBucketLifecycleDeleteTypeDef,
+ DeleteBucketLifecycleRequestRequestTypeDef,
+ DeleteBucketMetricsConfigurationRequestRequestTypeDef,
+ DeleteBucketOwnershipControlsRequestRequestTypeDef,
+ DeleteBucketPolicyRequestBucketPolicyDeleteTypeDef,
+ DeleteBucketPolicyRequestRequestTypeDef,
+ DeleteBucketReplicationRequestRequestTypeDef,
+ DeleteBucketRequestBucketDeleteTypeDef,
+ DeleteBucketRequestRequestTypeDef,
+ DeleteBucketTaggingRequestBucketTaggingDeleteTypeDef,
+ DeleteBucketTaggingRequestRequestTypeDef,
+ DeleteBucketWebsiteRequestBucketWebsiteDeleteTypeDef,
+ DeleteBucketWebsiteRequestRequestTypeDef,
+ DeleteMarkerReplicationTypeDef,
+ DeleteObjectRequestObjectDeleteTypeDef,
+ DeleteObjectRequestObjectSummaryDeleteTypeDef,
+ DeleteObjectRequestObjectVersionDeleteTypeDef,
+ DeleteObjectRequestRequestTypeDef,
+ DeleteObjectTaggingRequestRequestTypeDef,
+ DeletedObjectTypeDef,
+ ErrorTypeDef,
+ DeletePublicAccessBlockRequestRequestTypeDef,
+ ObjectIdentifierTypeDef,
+ EncryptionConfigurationTypeDef,
+ EncryptionTypeDef,
+ ErrorDocumentTypeDef,
+ ExistingObjectReplicationTypeDef,
+ FilterRuleTypeDef,
+ GetBucketAccelerateConfigurationRequestRequestTypeDef,
+ GetBucketAclRequestRequestTypeDef,
+ GetBucketAnalyticsConfigurationRequestRequestTypeDef,
+ GetBucketCorsRequestRequestTypeDef,
+ GetBucketEncryptionRequestRequestTypeDef,
+ GetBucketIntelligentTieringConfigurationRequestRequestTypeDef,
+ GetBucketInventoryConfigurationRequestRequestTypeDef,
+ GetBucketLifecycleConfigurationRequestRequestTypeDef,
+ GetBucketLifecycleRequestRequestTypeDef,
+ GetBucketLocationRequestRequestTypeDef,
+ GetBucketLoggingRequestRequestTypeDef,
+ GetBucketMetricsConfigurationRequestRequestTypeDef,
+ GetBucketNotificationConfigurationRequestRequestTypeDef,
+ GetBucketOwnershipControlsRequestRequestTypeDef,
+ GetBucketPolicyRequestRequestTypeDef,
+ PolicyStatusTypeDef,
+ GetBucketPolicyStatusRequestRequestTypeDef,
+ GetBucketReplicationRequestRequestTypeDef,
+ GetBucketRequestPaymentRequestRequestTypeDef,
+ GetBucketTaggingRequestRequestTypeDef,
+ GetBucketVersioningRequestRequestTypeDef,
+ IndexDocumentTypeDef,
+ RedirectAllRequestsToTypeDef,
+ GetBucketWebsiteRequestRequestTypeDef,
+ GetObjectAclRequestRequestTypeDef,
+ ObjectPartTypeDef,
+ GetObjectAttributesRequestRequestTypeDef,
+ ObjectLockLegalHoldTypeDef,
+ GetObjectLegalHoldRequestRequestTypeDef,
+ GetObjectLockConfigurationRequestRequestTypeDef,
+ GetObjectRequestObjectGetTypeDef,
+ GetObjectRequestObjectSummaryGetTypeDef,
+ GetObjectRequestObjectVersionGetTypeDef,
+ GetObjectRequestRequestTypeDef,
+ ObjectLockRetentionTypeDef,
+ GetObjectRetentionRequestRequestTypeDef,
+ GetObjectTaggingRequestRequestTypeDef,
+ GetObjectTorrentRequestRequestTypeDef,
+ PublicAccessBlockConfigurationTypeDef,
+ GetPublicAccessBlockRequestRequestTypeDef,
+ GlacierJobParametersTypeDef,
+ GranteeTypeDef,
+ WaiterConfigTypeDef,
+ HeadBucketRequestRequestTypeDef,
+ HeadObjectRequestObjectVersionHeadTypeDef,
+ HeadObjectRequestRequestTypeDef,
+ InitiatorTypeDef,
+ JSONInputTypeDef,
+ TieringTypeDef,
+ InventoryFilterTypeDef,
+ InventoryScheduleTypeDef,
+ SSEKMSTypeDef,
+ JSONOutputTypeDef,
+ LifecycleExpirationTypeDef,
+ NoncurrentVersionExpirationTypeDef,
+ NoncurrentVersionTransitionTypeDef,
+ TransitionTypeDef,
+ ListBucketAnalyticsConfigurationsRequestRequestTypeDef,
+ ListBucketIntelligentTieringConfigurationsRequestRequestTypeDef,
+ ListBucketInventoryConfigurationsRequestRequestTypeDef,
+ ListBucketMetricsConfigurationsRequestRequestTypeDef,
+ PaginatorConfigTypeDef,
+ ListMultipartUploadsRequestRequestTypeDef,
+ ListObjectVersionsRequestRequestTypeDef,
+ ListObjectsRequestRequestTypeDef,
+ ListObjectsV2RequestRequestTypeDef,
+ PartTypeDef,
+ ListPartsRequestRequestTypeDef,
+ MetadataEntryTypeDef,
+ ReplicationTimeValueTypeDef,
+ QueueConfigurationDeprecatedTypeDef,
+ TopicConfigurationDeprecatedTypeDef,
+ ObjectDownloadFileRequestTypeDef,
+ ObjectDownloadFileobjRequestTypeDef,
+ ObjectUploadFileRequestTypeDef,
+ ObjectUploadFileobjRequestTypeDef,
+ OwnershipControlsRuleTypeDef,
+ ProgressTypeDef,
+ PutBucketPolicyRequestBucketPolicyPutTypeDef,
+ PutBucketPolicyRequestRequestTypeDef,
+ RequestPaymentConfigurationTypeDef,
+ PutBucketVersioningRequestBucketVersioningEnableTypeDef,
+ VersioningConfigurationTypeDef,
+ PutBucketVersioningRequestBucketVersioningSuspendTypeDef,
+ PutObjectRequestBucketPutObjectTypeDef,
+ PutObjectRequestObjectPutTypeDef,
+ PutObjectRequestObjectSummaryPutTypeDef,
+ PutObjectRequestRequestTypeDef,
+ RecordsEventTypeDef,
+ RedirectTypeDef,
+ ReplicaModificationsTypeDef,
+ RequestProgressTypeDef,
+ ScanRangeTypeDef,
+ ServerSideEncryptionByDefaultTypeDef,
+ SseKmsEncryptedObjectsTypeDef,
+ StatsTypeDef,
+ UploadPartRequestMultipartUploadPartUploadTypeDef,
+ UploadPartRequestRequestTypeDef,
+ WriteGetObjectResponseRequestRequestTypeDef,
+ AbortMultipartUploadOutputTypeDef,
+ CompleteMultipartUploadOutputTypeDef,
+ CreateBucketOutputTypeDef,
+ CreateMultipartUploadOutputTypeDef,
+ DeleteObjectOutputTypeDef,
+ DeleteObjectTaggingOutputTypeDef,
+ EmptyResponseMetadataTypeDef,
+ ErrorDocumentResponseMetadataTypeDef,
+ GetBucketAccelerateConfigurationOutputTypeDef,
+ GetBucketLocationOutputTypeDef,
+ GetBucketPolicyOutputTypeDef,
+ GetBucketRequestPaymentOutputTypeDef,
+ GetBucketVersioningOutputTypeDef,
+ GetObjectOutputTypeDef,
+ GetObjectTorrentOutputTypeDef,
+ HeadObjectOutputTypeDef,
+ IndexDocumentResponseMetadataTypeDef,
+ InitiatorResponseMetadataTypeDef,
+ OwnerResponseMetadataTypeDef,
+ PutObjectAclOutputTypeDef,
+ PutObjectLegalHoldOutputTypeDef,
+ PutObjectLockConfigurationOutputTypeDef,
+ PutObjectOutputTypeDef,
+ PutObjectRetentionOutputTypeDef,
+ PutObjectTaggingOutputTypeDef,
+ RedirectAllRequestsToResponseMetadataTypeDef,
+ RestoreObjectOutputTypeDef,
+ UploadPartOutputTypeDef,
+ PutBucketAccelerateConfigurationRequestRequestTypeDef,
+ DeleteMarkerEntryTypeDef,
+ ObjectTypeDef,
+ ObjectVersionTypeDef,
+ AnalyticsAndOperatorTypeDef,
+ GetBucketTaggingOutputTypeDef,
+ GetObjectTaggingOutputTypeDef,
+ IntelligentTieringAndOperatorTypeDef,
+ LifecycleRuleAndOperatorTypeDef,
+ MetricsAndOperatorTypeDef,
+ ReplicationRuleAndOperatorTypeDef,
+ TaggingTypeDef,
+ AnalyticsExportDestinationTypeDef,
+ BucketCopyRequestTypeDef,
+ ClientCopyRequestTypeDef,
+ CopyObjectRequestRequestTypeDef,
+ ObjectCopyRequestTypeDef,
+ UploadPartCopyRequestMultipartUploadPartCopyFromTypeDef,
+ UploadPartCopyRequestRequestTypeDef,
+ ListBucketsOutputTypeDef,
+ CORSConfigurationTypeDef,
+ GetBucketCorsOutputTypeDef,
+ CompletedMultipartUploadTypeDef,
+ CopyObjectOutputTypeDef,
+ UploadPartCopyOutputTypeDef,
+ CreateBucketRequestBucketCreateTypeDef,
+ CreateBucketRequestRequestTypeDef,
+ CreateBucketRequestServiceResourceCreateBucketTypeDef,
+ ObjectLockRuleTypeDef,
+ DeleteObjectsOutputTypeDef,
+ DeleteTypeDef,
+ S3KeyFilterTypeDef,
+ GetBucketPolicyStatusOutputTypeDef,
+ GetObjectAttributesPartsTypeDef,
+ GetObjectLegalHoldOutputTypeDef,
+ PutObjectLegalHoldRequestRequestTypeDef,
+ GetObjectRetentionOutputTypeDef,
+ PutObjectRetentionRequestRequestTypeDef,
+ GetPublicAccessBlockOutputTypeDef,
+ PutPublicAccessBlockRequestRequestTypeDef,
+ GrantTypeDef,
+ TargetGrantTypeDef,
+ HeadBucketRequestBucketExistsWaitTypeDef,
+ HeadBucketRequestBucketNotExistsWaitTypeDef,
+ HeadObjectRequestObjectExistsWaitTypeDef,
+ HeadObjectRequestObjectNotExistsWaitTypeDef,
+ MultipartUploadTypeDef,
+ InputSerializationTypeDef,
+ InventoryEncryptionTypeDef,
+ OutputSerializationTypeDef,
+ RuleTypeDef,
+ ListMultipartUploadsRequestListMultipartUploadsPaginateTypeDef,
+ ListObjectVersionsRequestListObjectVersionsPaginateTypeDef,
+ ListObjectsRequestListObjectsPaginateTypeDef,
+ ListObjectsV2RequestListObjectsV2PaginateTypeDef,
+ ListPartsRequestListPartsPaginateTypeDef,
+ ListPartsOutputTypeDef,
+ MetricsTypeDef,
+ ReplicationTimeTypeDef,
+ NotificationConfigurationDeprecatedResponseMetadataTypeDef,
+ NotificationConfigurationDeprecatedTypeDef,
+ OwnershipControlsTypeDef,
+ ProgressEventTypeDef,
+ PutBucketRequestPaymentRequestBucketRequestPaymentPutTypeDef,
+ PutBucketRequestPaymentRequestRequestTypeDef,
+ PutBucketVersioningRequestBucketVersioningPutTypeDef,
+ PutBucketVersioningRequestRequestTypeDef,
+ RoutingRuleTypeDef,
+ ServerSideEncryptionRuleTypeDef,
+ SourceSelectionCriteriaTypeDef,
+ StatsEventTypeDef,
+ ListObjectsOutputTypeDef,
+ ListObjectsV2OutputTypeDef,
+ ListObjectVersionsOutputTypeDef,
+ AnalyticsFilterTypeDef,
+ IntelligentTieringFilterTypeDef,
+ LifecycleRuleFilterTypeDef,
+ MetricsFilterTypeDef,
+ ReplicationRuleFilterTypeDef,
+ PutBucketTaggingRequestBucketTaggingPutTypeDef,
+ PutBucketTaggingRequestRequestTypeDef,
+ PutObjectTaggingRequestRequestTypeDef,
+ StorageClassAnalysisDataExportTypeDef,
+ PutBucketCorsRequestBucketCorsPutTypeDef,
+ PutBucketCorsRequestRequestTypeDef,
+ CompleteMultipartUploadRequestMultipartUploadCompleteTypeDef,
+ CompleteMultipartUploadRequestRequestTypeDef,
+ ObjectLockConfigurationTypeDef,
+ DeleteObjectsRequestBucketDeleteObjectsTypeDef,
+ DeleteObjectsRequestRequestTypeDef,
+ NotificationConfigurationFilterTypeDef,
+ GetObjectAttributesOutputTypeDef,
+ AccessControlPolicyTypeDef,
+ GetBucketAclOutputTypeDef,
+ GetObjectAclOutputTypeDef,
+ S3LocationTypeDef,
+ LoggingEnabledResponseMetadataTypeDef,
+ LoggingEnabledTypeDef,
+ ListMultipartUploadsOutputTypeDef,
+ InventoryS3BucketDestinationTypeDef,
+ SelectObjectContentRequestRequestTypeDef,
+ SelectParametersTypeDef,
+ GetBucketLifecycleOutputTypeDef,
+ LifecycleConfigurationTypeDef,
+ DestinationTypeDef,
+ PutBucketNotificationRequestRequestTypeDef,
+ GetBucketOwnershipControlsOutputTypeDef,
+ PutBucketOwnershipControlsRequestRequestTypeDef,
+ GetBucketWebsiteOutputTypeDef,
+ WebsiteConfigurationTypeDef,
+ ServerSideEncryptionConfigurationTypeDef,
+ SelectObjectContentEventStreamTypeDef,
+ IntelligentTieringConfigurationTypeDef,
+ LifecycleRuleTypeDef,
+ MetricsConfigurationTypeDef,
+ StorageClassAnalysisTypeDef,
+ GetObjectLockConfigurationOutputTypeDef,
+ PutObjectLockConfigurationRequestRequestTypeDef,
+ LambdaFunctionConfigurationTypeDef,
+ QueueConfigurationTypeDef,
+ TopicConfigurationTypeDef,
+ PutBucketAclRequestBucketAclPutTypeDef,
+ PutBucketAclRequestRequestTypeDef,
+ PutObjectAclRequestObjectAclPutTypeDef,
+ PutObjectAclRequestRequestTypeDef,
+ OutputLocationTypeDef,
+ BucketLoggingStatusTypeDef,
+ GetBucketLoggingOutputTypeDef,
+ InventoryDestinationTypeDef,
+ PutBucketLifecycleRequestBucketLifecyclePutTypeDef,
+ PutBucketLifecycleRequestRequestTypeDef,
+ ReplicationRuleTypeDef,
+ PutBucketWebsiteRequestBucketWebsitePutTypeDef,
+ PutBucketWebsiteRequestRequestTypeDef,
+ GetBucketEncryptionOutputTypeDef,
+ PutBucketEncryptionRequestRequestTypeDef,
+ SelectObjectContentOutputTypeDef,
+ GetBucketIntelligentTieringConfigurationOutputTypeDef,
+ ListBucketIntelligentTieringConfigurationsOutputTypeDef,
+ PutBucketIntelligentTieringConfigurationRequestRequestTypeDef,
+ BucketLifecycleConfigurationTypeDef,
+ GetBucketLifecycleConfigurationOutputTypeDef,
+ GetBucketMetricsConfigurationOutputTypeDef,
+ ListBucketMetricsConfigurationsOutputTypeDef,
+ PutBucketMetricsConfigurationRequestRequestTypeDef,
+ AnalyticsConfigurationTypeDef,
+ NotificationConfigurationResponseMetadataTypeDef,
+ NotificationConfigurationTypeDef,
+ RestoreRequestTypeDef,
+ PutBucketLoggingRequestBucketLoggingPutTypeDef,
+ PutBucketLoggingRequestRequestTypeDef,
+ InventoryConfigurationTypeDef,
+ ReplicationConfigurationTypeDef,
+ PutBucketLifecycleConfigurationRequestBucketLifecycleConfigurationPutTypeDef,
+ PutBucketLifecycleConfigurationRequestRequestTypeDef,
+ GetBucketAnalyticsConfigurationOutputTypeDef,
+ ListBucketAnalyticsConfigurationsOutputTypeDef,
+ PutBucketAnalyticsConfigurationRequestRequestTypeDef,
+ PutBucketNotificationConfigurationRequestBucketNotificationPutTypeDef,
+ PutBucketNotificationConfigurationRequestRequestTypeDef,
+ RestoreObjectRequestObjectRestoreObjectTypeDef,
+ RestoreObjectRequestObjectSummaryRestoreObjectTypeDef,
+ RestoreObjectRequestRequestTypeDef,
+ GetBucketInventoryConfigurationOutputTypeDef,
+ ListBucketInventoryConfigurationsOutputTypeDef,
+ PutBucketInventoryConfigurationRequestRequestTypeDef,
+ GetBucketReplicationOutputTypeDef,
+ PutBucketReplicationRequestRequestTypeDef,
+)
+
+
+def get_structure() -> AbortIncompleteMultipartUploadTypeDef:
+ return {...}
+```
+
+<a id="how-it-works"></a>
+
+## How it works
+
+Fully automated
+[mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder) carefully
+generates type annotations for each service, patiently waiting for `boto3`
+updates. It delivers drop-in type annotations for you and makes sure that:
+
+- All available `boto3` services are covered.
+- Each public class and method of every `boto3` service gets valid type
+ annotations extracted from `botocore` schemas.
+- Type annotations include up-to-date documentation.
+- Link to documentation is provided for every method.
+- Code is processed by [black](https://github.com/psf/black) and
+ [isort](https://github.com/PyCQA/isort) for readability.
+
+<a id="what's-new"></a>
+
+## What's new
+
+<a id="implemented-features"></a>
+
+### Implemented features
+
+- Fully type annotated `boto3`, `botocore`, `aiobotocore` and `aioboto3`
+ libraries
+- `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs`
+ compatibility
+- `Client`, `ServiceResource`, `Resource`, `Waiter` `Paginator` type
+ annotations for each service
+- Generated `TypeDefs` for each service
+- Generated `Literals` for each service
+- Auto discovery of types for `boto3.client` and `boto3.resource` calls
+- Auto discovery of types for `session.client` and `session.resource` calls
+- Auto discovery of types for `client.get_waiter` and `client.get_paginator`
+ calls
+- Auto discovery of types for `ServiceResource` and `Resource` collections
+- Auto discovery of types for `aiobotocore.Session.create_client` calls
+
+<a id="latest-changes"></a>
+
+### Latest changes
+
+Builder changelog can be found in
+[Releases](https://github.com/youtype/mypy_boto3_builder/releases).
+
+<a id="versioning"></a>
+
+## Versioning
+
+`mypy-boto3-s3` version is the same as related `boto3` version and follows
+[PEP 440](https://www.python.org/dev/peps/pep-0440/) format.
+
+<a id="thank-you"></a>
+
+## Thank you
+
+- [Allie Fitter](https://github.com/alliefitter) for
+ [boto3-type-annotations](https://pypi.org/project/boto3-type-annotations/),
+ this package is based on top of his work
+- [black](https://github.com/psf/black) developers for an awesome formatting
+ tool
+- [Timothy Edmund Crosley](https://github.com/timothycrosley) for
+ [isort](https://github.com/PyCQA/isort) and how flexible it is
+- [mypy](https://github.com/python/mypy) developers for doing all dirty work
+ for us
+- [pyright](https://github.com/microsoft/pyright) team for the new era of typed
+ Python
+
+<a id="documentation"></a>
+
+## Documentation
+
+All services type annotations can be found in
+[boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3/)
+
+<a id="support-and-contributing"></a>
+
+## Support and contributing
+
+This package is auto-generated. Please reports any bugs or request new features
+in [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder/issues/)
+repository.
+
+
+%package -n python3-mypy-boto3-s3
+Summary: Type annotations for boto3.S3 1.26.104 service generated with mypy-boto3-builder 7.14.5
+Provides: python-mypy-boto3-s3
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-mypy-boto3-s3
+<a id="mypy-boto3-s3"></a>
+
+# mypy-boto3-s3
+
+[![PyPI - mypy-boto3-s3](https://img.shields.io/pypi/v/mypy-boto3-s3.svg?color=blue)](https://pypi.org/project/mypy-boto3-s3)
+[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-s3.svg?color=blue)](https://pypi.org/project/mypy-boto3-s3)
+[![Docs](https://img.shields.io/readthedocs/boto3-stubs.svg?color=blue)](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3/)
+[![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-s3?color=blue)](https://pypistats.org/packages/mypy-boto3-s3)
+
+![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png)
+
+Type annotations for
+[boto3.S3 1.26.104](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3)
+service compatible with [VSCode](https://code.visualstudio.com/),
+[PyCharm](https://www.jetbrains.com/pycharm/),
+[Emacs](https://www.gnu.org/software/emacs/),
+[Sublime Text](https://www.sublimetext.com/),
+[mypy](https://github.com/python/mypy),
+[pyright](https://github.com/microsoft/pyright) and other tools.
+
+Generated by
+[mypy-boto3-builder 7.14.5](https://github.com/youtype/mypy_boto3_builder).
+
+More information can be found on
+[boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in
+[mypy-boto3-s3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3/).
+
+See how it helps to find and fix potential bugs:
+
+![boto3-stubs demo](https://github.com/youtype/mypy_boto3_builder/raw/main/demo.gif)
+
+- [mypy-boto3-s3](#mypy-boto3-s3)
+ - [How to install](#how-to-install)
+ - [VSCode extension](#vscode-extension)
+ - [From PyPI with pip](#from-pypi-with-pip)
+ - [From conda-forge](#from-conda-forge)
+ - [How to uninstall](#how-to-uninstall)
+ - [Usage](#usage)
+ - [VSCode](#vscode)
+ - [PyCharm](#pycharm)
+ - [Emacs](#emacs)
+ - [Sublime Text](#sublime-text)
+ - [Other IDEs](#other-ides)
+ - [mypy](#mypy)
+ - [pyright](#pyright)
+ - [Explicit type annotations](#explicit-type-annotations)
+ - [Client annotations](#client-annotations)
+ - [Paginators annotations](#paginators-annotations)
+ - [Waiters annotations](#waiters-annotations)
+ - [Service Resource annotations](#service-resource-annotations)
+ - [Other resources annotations](#other-resources-annotations)
+ - [Collections annotations](#collections-annotations)
+ - [Literals](#literals)
+ - [Typed dictionaries](#typed-dictionaries)
+ - [How it works](#how-it-works)
+ - [What's new](#what's-new)
+ - [Implemented features](#implemented-features)
+ - [Latest changes](#latest-changes)
+ - [Versioning](#versioning)
+ - [Thank you](#thank-you)
+ - [Documentation](#documentation)
+ - [Support and contributing](#support-and-contributing)
+
+<a id="how-to-install"></a>
+
+## How to install
+
+<a id="vscode-extension"></a>
+
+### VSCode extension
+
+Add
+[AWS Boto3](https://marketplace.visualstudio.com/items?itemName=Boto3typed.boto3-ide)
+extension to your VSCode and run `AWS boto3: Quick Start` command.
+
+Click `Modify` and select `boto3 common` and `S3`.
+
+<a id="from-pypi-with-pip"></a>
+
+### From PyPI with pip
+
+Install `boto3-stubs` for `S3` service.
+
+```bash
+# install with boto3 type annotations
+python -m pip install 'boto3-stubs[s3]'
+
+
+# Lite version does not provide session.client/resource overloads
+# it is more RAM-friendly, but requires explicit type annotations
+python -m pip install 'boto3-stubs-lite[s3]'
+
+
+# standalone installation
+python -m pip install mypy-boto3-s3
+```
+
+<a id="from-conda-forge"></a>
+
+### From conda-forge
+
+Installing `mypy-boto3-s3` from the `conda-forge` channel can be achieved by
+adding `conda-forge` to your channels with:
+
+```bash
+conda config --add channels conda-forge
+conda config --set channel_priority strict
+```
+
+Once the `conda-forge` channel has been enabled, `mypy-boto3-s3` can be
+installed with:
+
+```bash
+conda install mypy-boto3-s3
+```
+
+It is possible to list all of the versions of `mypy-boto3-s3` available on your
+platform with:
+
+```bash
+conda search mypy-boto3-s3 --channel conda-forge
+```
+
+<a id="how-to-uninstall"></a>
+
+## How to uninstall
+
+```bash
+python -m pip uninstall -y mypy-boto3-s3
+```
+
+<a id="usage"></a>
+
+## Usage
+
+<a id="vscode"></a>
+
+### VSCode
+
+- Install
+ [Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
+- Install
+ [Pylance extension](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance)
+- Set `Pylance` as your Python Language Server
+- Install `boto3-stubs[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+Both type checking and code completion should now work. No explicit type
+annotations required, write your `boto3` code as usual.
+
+<a id="pycharm"></a>
+
+### PyCharm
+
+Install `boto3-stubs-lite[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs-lite[s3]'`
+```
+
+Both type checking and code completion should now work. Explicit type
+annotations **are required**.
+
+Use `boto3-stubs` package instead for implicit type discovery.
+
+<a id="emacs"></a>
+
+### Emacs
+
+- Install `boto3-stubs` with services you use in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+- Install [use-package](https://github.com/jwiegley/use-package),
+ [lsp](https://github.com/emacs-lsp/lsp-mode/),
+ [company](https://github.com/company-mode/company-mode) and
+ [flycheck](https://github.com/flycheck/flycheck) packages
+- Install [lsp-pyright](https://github.com/emacs-lsp/lsp-pyright) package
+
+```elisp
+(use-package lsp-pyright
+ :ensure t
+ :hook (python-mode . (lambda ()
+ (require 'lsp-pyright)
+ (lsp))) ; or lsp-deferred
+ :init (when (executable-find "python3")
+ (setq lsp-pyright-python-executable-cmd "python3"))
+ )
+```
+
+- Make sure emacs uses the environment where you have installed `boto3-stubs`
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="sublime-text"></a>
+
+### Sublime Text
+
+- Install `boto3-stubs[s3]` with services you use in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+- Install [LSP-pyright](https://github.com/sublimelsp/LSP-pyright) package
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="other-ides"></a>
+
+### Other IDEs
+
+Not tested, but as long as your IDE supports `mypy` or `pyright`, everything
+should work.
+
+<a id="mypy"></a>
+
+### mypy
+
+- Install `mypy`: `python -m pip install mypy`
+- Install `boto3-stubs[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'`
+```
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="pyright"></a>
+
+### pyright
+
+- Install `pyright`: `npm i -g pyright`
+- Install `boto3-stubs[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+Optionally, you can install `boto3-stubs` to `typings` folder.
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="explicit-type-annotations"></a>
+
+## Explicit type annotations
+
+<a id="client-annotations"></a>
+
+### Client annotations
+
+`S3Client` provides annotations for `boto3.client("s3")`.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3Client
+
+client: S3Client = Session().client("s3")
+
+# now client usage is checked by mypy and IDE should provide code completion
+```
+
+<a id="paginators-annotations"></a>
+
+### Paginators annotations
+
+`mypy_boto3_s3.paginator` module contains type annotations for all paginators.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3Client
+from mypy_boto3_s3.paginator import (
+ ListMultipartUploadsPaginator,
+ ListObjectVersionsPaginator,
+ ListObjectsPaginator,
+ ListObjectsV2Paginator,
+ ListPartsPaginator,
+)
+
+client: S3Client = Session().client("s3")
+
+# Explicit type annotations are optional here
+# Types should be correctly discovered by mypy and IDEs
+list_multipart_uploads_paginator: ListMultipartUploadsPaginator = client.get_paginator(
+ "list_multipart_uploads"
+)
+list_object_versions_paginator: ListObjectVersionsPaginator = client.get_paginator(
+ "list_object_versions"
+)
+list_objects_paginator: ListObjectsPaginator = client.get_paginator("list_objects")
+list_objects_v2_paginator: ListObjectsV2Paginator = client.get_paginator("list_objects_v2")
+list_parts_paginator: ListPartsPaginator = client.get_paginator("list_parts")
+```
+
+<a id="waiters-annotations"></a>
+
+### Waiters annotations
+
+`mypy_boto3_s3.waiter` module contains type annotations for all waiters.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3Client
+from mypy_boto3_s3.waiter import (
+ BucketExistsWaiter,
+ BucketNotExistsWaiter,
+ ObjectExistsWaiter,
+ ObjectNotExistsWaiter,
+)
+
+client: S3Client = Session().client("s3")
+
+# Explicit type annotations are optional here
+# Types should be correctly discovered by mypy and IDEs
+bucket_exists_waiter: BucketExistsWaiter = client.get_waiter("bucket_exists")
+bucket_not_exists_waiter: BucketNotExistsWaiter = client.get_waiter("bucket_not_exists")
+object_exists_waiter: ObjectExistsWaiter = client.get_waiter("object_exists")
+object_not_exists_waiter: ObjectNotExistsWaiter = client.get_waiter("object_not_exists")
+```
+
+<a id="service-resource-annotations"></a>
+
+### Service Resource annotations
+
+`S3ServiceResource` provides annotations for `boto3.resource("s3")`.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3ServiceResource
+
+resource: S3ServiceResource = Session().resource("s3")
+
+# now resource usage is checked by mypy and IDE should provide code completion
+```
+
+<a id="other-resources-annotations"></a>
+
+### Other resources annotations
+
+`mypy_boto3_s3.service_resource` module contains type annotations for all
+resources.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3ServiceResource
+from mypy_boto3_s3.service_resource import (
+ Bucket,
+ BucketAcl,
+ BucketCors,
+ BucketLifecycle,
+ BucketLifecycleConfiguration,
+ BucketLogging,
+ BucketNotification,
+ BucketPolicy,
+ BucketRequestPayment,
+ BucketTagging,
+ BucketVersioning,
+ BucketWebsite,
+ MultipartUpload,
+ MultipartUploadPart,
+ Object,
+ ObjectAcl,
+ ObjectSummary,
+ ObjectVersion,
+)
+
+resource: S3ServiceResource = Session().resource("s3")
+
+# Explicit type annotations are optional here
+# Type should be correctly discovered by mypy and IDEs
+my_bucket: Bucket = resource.Bucket(...)
+my_bucket_acl: BucketAcl = resource.BucketAcl(...)
+my_bucket_cors: BucketCors = resource.BucketCors(...)
+my_bucket_lifecycle: BucketLifecycle = resource.BucketLifecycle(...)
+my_bucket_lifecycle_configuration: BucketLifecycleConfiguration = (
+ resource.BucketLifecycleConfiguration(...)
+)
+my_bucket_logging: BucketLogging = resource.BucketLogging(...)
+my_bucket_notification: BucketNotification = resource.BucketNotification(...)
+my_bucket_policy: BucketPolicy = resource.BucketPolicy(...)
+my_bucket_request_payment: BucketRequestPayment = resource.BucketRequestPayment(...)
+my_bucket_tagging: BucketTagging = resource.BucketTagging(...)
+my_bucket_versioning: BucketVersioning = resource.BucketVersioning(...)
+my_bucket_website: BucketWebsite = resource.BucketWebsite(...)
+my_multipart_upload: MultipartUpload = resource.MultipartUpload(...)
+my_multipart_upload_part: MultipartUploadPart = resource.MultipartUploadPart(...)
+my_object: Object = resource.Object(...)
+my_object_acl: ObjectAcl = resource.ObjectAcl(...)
+my_object_summary: ObjectSummary = resource.ObjectSummary(...)
+my_object_version: ObjectVersion = resource.ObjectVersion(...)
+```
+
+<a id="collections-annotations"></a>
+
+### Collections annotations
+
+`mypy_boto3_s3.service_resource` module contains type annotations for all
+`S3ServiceResource` collections.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3ServiceResource
+from mypy_boto3_s3.service_resource import ServiceResourceBucketsCollection
+
+resource: S3ServiceResource = Session().resource("s3")
+
+# Explicit type annotations are optional here
+# Type should be correctly discovered by mypy and IDEs
+buckets: s3_resources.ServiceResourceBucketsCollection = resource.buckets
+```
+
+<a id="literals"></a>
+
+### Literals
+
+`mypy_boto3_s3.literals` module contains literals extracted from shapes that
+can be used in user code for type checking.
+
+```python
+from mypy_boto3_s3.literals import (
+ AnalyticsS3ExportFileFormatType,
+ ArchiveStatusType,
+ BucketAccelerateStatusType,
+ BucketCannedACLType,
+ BucketExistsWaiterName,
+ BucketLocationConstraintType,
+ BucketLogsPermissionType,
+ BucketNotExistsWaiterName,
+ BucketVersioningStatusType,
+ ChecksumAlgorithmType,
+ ChecksumModeType,
+ CompressionTypeType,
+ DeleteMarkerReplicationStatusType,
+ EncodingTypeType,
+ EventType,
+ ExistingObjectReplicationStatusType,
+ ExpirationStatusType,
+ ExpressionTypeType,
+ FileHeaderInfoType,
+ FilterRuleNameType,
+ IntelligentTieringAccessTierType,
+ IntelligentTieringStatusType,
+ InventoryFormatType,
+ InventoryFrequencyType,
+ InventoryIncludedObjectVersionsType,
+ InventoryOptionalFieldType,
+ JSONTypeType,
+ ListMultipartUploadsPaginatorName,
+ ListObjectVersionsPaginatorName,
+ ListObjectsPaginatorName,
+ ListObjectsV2PaginatorName,
+ ListPartsPaginatorName,
+ MFADeleteStatusType,
+ MFADeleteType,
+ MetadataDirectiveType,
+ MetricsStatusType,
+ ObjectAttributesType,
+ ObjectCannedACLType,
+ ObjectExistsWaiterName,
+ ObjectLockEnabledType,
+ ObjectLockLegalHoldStatusType,
+ ObjectLockModeType,
+ ObjectLockRetentionModeType,
+ ObjectNotExistsWaiterName,
+ ObjectOwnershipType,
+ ObjectStorageClassType,
+ ObjectVersionStorageClassType,
+ OwnerOverrideType,
+ PayerType,
+ PermissionType,
+ ProtocolType,
+ QuoteFieldsType,
+ ReplicaModificationsStatusType,
+ ReplicationRuleStatusType,
+ ReplicationStatusType,
+ ReplicationTimeStatusType,
+ RequestChargedType,
+ RequestPayerType,
+ RestoreRequestTypeType,
+ ServerSideEncryptionType,
+ SseKmsEncryptedObjectsStatusType,
+ StorageClassAnalysisSchemaVersionType,
+ StorageClassType,
+ TaggingDirectiveType,
+ TierType,
+ TransitionStorageClassType,
+ TypeType,
+ S3ServiceName,
+ ServiceName,
+ ResourceServiceName,
+ PaginatorName,
+ WaiterName,
+ RegionName,
+)
+
+
+def check_value(value: AnalyticsS3ExportFileFormatType) -> bool:
+ ...
+```
+
+<a id="typed-dictionaries"></a>
+
+### Typed dictionaries
+
+`mypy_boto3_s3.type_defs` module contains structures and shapes assembled to
+typed dictionaries for additional type checking.
+
+```python
+from mypy_boto3_s3.type_defs import (
+ AbortIncompleteMultipartUploadTypeDef,
+ ResponseMetadataTypeDef,
+ AbortMultipartUploadRequestMultipartUploadAbortTypeDef,
+ AbortMultipartUploadRequestRequestTypeDef,
+ AccelerateConfigurationTypeDef,
+ OwnerTypeDef,
+ AccessControlTranslationTypeDef,
+ TagTypeDef,
+ AnalyticsS3BucketDestinationTypeDef,
+ CopySourceTypeDef,
+ BucketDownloadFileRequestTypeDef,
+ BucketDownloadFileobjRequestTypeDef,
+ BucketTypeDef,
+ BucketUploadFileRequestTypeDef,
+ BucketUploadFileobjRequestTypeDef,
+ CORSRuleTypeDef,
+ CSVInputTypeDef,
+ CSVOutputTypeDef,
+ ChecksumTypeDef,
+ ClientDownloadFileRequestTypeDef,
+ ClientDownloadFileobjRequestTypeDef,
+ ClientGeneratePresignedPostRequestTypeDef,
+ ClientUploadFileRequestTypeDef,
+ ClientUploadFileobjRequestTypeDef,
+ CloudFunctionConfigurationTypeDef,
+ CommonPrefixTypeDef,
+ CompletedPartTypeDef,
+ ConditionTypeDef,
+ CopyObjectResultTypeDef,
+ CopyObjectRequestObjectCopyFromTypeDef,
+ CopyObjectRequestObjectSummaryCopyFromTypeDef,
+ CopyPartResultTypeDef,
+ CreateBucketConfigurationTypeDef,
+ CreateMultipartUploadRequestObjectInitiateMultipartUploadTypeDef,
+ CreateMultipartUploadRequestObjectSummaryInitiateMultipartUploadTypeDef,
+ CreateMultipartUploadRequestRequestTypeDef,
+ DefaultRetentionTypeDef,
+ DeleteBucketAnalyticsConfigurationRequestRequestTypeDef,
+ DeleteBucketCorsRequestBucketCorsDeleteTypeDef,
+ DeleteBucketCorsRequestRequestTypeDef,
+ DeleteBucketEncryptionRequestRequestTypeDef,
+ DeleteBucketIntelligentTieringConfigurationRequestRequestTypeDef,
+ DeleteBucketInventoryConfigurationRequestRequestTypeDef,
+ DeleteBucketLifecycleRequestBucketLifecycleConfigurationDeleteTypeDef,
+ DeleteBucketLifecycleRequestBucketLifecycleDeleteTypeDef,
+ DeleteBucketLifecycleRequestRequestTypeDef,
+ DeleteBucketMetricsConfigurationRequestRequestTypeDef,
+ DeleteBucketOwnershipControlsRequestRequestTypeDef,
+ DeleteBucketPolicyRequestBucketPolicyDeleteTypeDef,
+ DeleteBucketPolicyRequestRequestTypeDef,
+ DeleteBucketReplicationRequestRequestTypeDef,
+ DeleteBucketRequestBucketDeleteTypeDef,
+ DeleteBucketRequestRequestTypeDef,
+ DeleteBucketTaggingRequestBucketTaggingDeleteTypeDef,
+ DeleteBucketTaggingRequestRequestTypeDef,
+ DeleteBucketWebsiteRequestBucketWebsiteDeleteTypeDef,
+ DeleteBucketWebsiteRequestRequestTypeDef,
+ DeleteMarkerReplicationTypeDef,
+ DeleteObjectRequestObjectDeleteTypeDef,
+ DeleteObjectRequestObjectSummaryDeleteTypeDef,
+ DeleteObjectRequestObjectVersionDeleteTypeDef,
+ DeleteObjectRequestRequestTypeDef,
+ DeleteObjectTaggingRequestRequestTypeDef,
+ DeletedObjectTypeDef,
+ ErrorTypeDef,
+ DeletePublicAccessBlockRequestRequestTypeDef,
+ ObjectIdentifierTypeDef,
+ EncryptionConfigurationTypeDef,
+ EncryptionTypeDef,
+ ErrorDocumentTypeDef,
+ ExistingObjectReplicationTypeDef,
+ FilterRuleTypeDef,
+ GetBucketAccelerateConfigurationRequestRequestTypeDef,
+ GetBucketAclRequestRequestTypeDef,
+ GetBucketAnalyticsConfigurationRequestRequestTypeDef,
+ GetBucketCorsRequestRequestTypeDef,
+ GetBucketEncryptionRequestRequestTypeDef,
+ GetBucketIntelligentTieringConfigurationRequestRequestTypeDef,
+ GetBucketInventoryConfigurationRequestRequestTypeDef,
+ GetBucketLifecycleConfigurationRequestRequestTypeDef,
+ GetBucketLifecycleRequestRequestTypeDef,
+ GetBucketLocationRequestRequestTypeDef,
+ GetBucketLoggingRequestRequestTypeDef,
+ GetBucketMetricsConfigurationRequestRequestTypeDef,
+ GetBucketNotificationConfigurationRequestRequestTypeDef,
+ GetBucketOwnershipControlsRequestRequestTypeDef,
+ GetBucketPolicyRequestRequestTypeDef,
+ PolicyStatusTypeDef,
+ GetBucketPolicyStatusRequestRequestTypeDef,
+ GetBucketReplicationRequestRequestTypeDef,
+ GetBucketRequestPaymentRequestRequestTypeDef,
+ GetBucketTaggingRequestRequestTypeDef,
+ GetBucketVersioningRequestRequestTypeDef,
+ IndexDocumentTypeDef,
+ RedirectAllRequestsToTypeDef,
+ GetBucketWebsiteRequestRequestTypeDef,
+ GetObjectAclRequestRequestTypeDef,
+ ObjectPartTypeDef,
+ GetObjectAttributesRequestRequestTypeDef,
+ ObjectLockLegalHoldTypeDef,
+ GetObjectLegalHoldRequestRequestTypeDef,
+ GetObjectLockConfigurationRequestRequestTypeDef,
+ GetObjectRequestObjectGetTypeDef,
+ GetObjectRequestObjectSummaryGetTypeDef,
+ GetObjectRequestObjectVersionGetTypeDef,
+ GetObjectRequestRequestTypeDef,
+ ObjectLockRetentionTypeDef,
+ GetObjectRetentionRequestRequestTypeDef,
+ GetObjectTaggingRequestRequestTypeDef,
+ GetObjectTorrentRequestRequestTypeDef,
+ PublicAccessBlockConfigurationTypeDef,
+ GetPublicAccessBlockRequestRequestTypeDef,
+ GlacierJobParametersTypeDef,
+ GranteeTypeDef,
+ WaiterConfigTypeDef,
+ HeadBucketRequestRequestTypeDef,
+ HeadObjectRequestObjectVersionHeadTypeDef,
+ HeadObjectRequestRequestTypeDef,
+ InitiatorTypeDef,
+ JSONInputTypeDef,
+ TieringTypeDef,
+ InventoryFilterTypeDef,
+ InventoryScheduleTypeDef,
+ SSEKMSTypeDef,
+ JSONOutputTypeDef,
+ LifecycleExpirationTypeDef,
+ NoncurrentVersionExpirationTypeDef,
+ NoncurrentVersionTransitionTypeDef,
+ TransitionTypeDef,
+ ListBucketAnalyticsConfigurationsRequestRequestTypeDef,
+ ListBucketIntelligentTieringConfigurationsRequestRequestTypeDef,
+ ListBucketInventoryConfigurationsRequestRequestTypeDef,
+ ListBucketMetricsConfigurationsRequestRequestTypeDef,
+ PaginatorConfigTypeDef,
+ ListMultipartUploadsRequestRequestTypeDef,
+ ListObjectVersionsRequestRequestTypeDef,
+ ListObjectsRequestRequestTypeDef,
+ ListObjectsV2RequestRequestTypeDef,
+ PartTypeDef,
+ ListPartsRequestRequestTypeDef,
+ MetadataEntryTypeDef,
+ ReplicationTimeValueTypeDef,
+ QueueConfigurationDeprecatedTypeDef,
+ TopicConfigurationDeprecatedTypeDef,
+ ObjectDownloadFileRequestTypeDef,
+ ObjectDownloadFileobjRequestTypeDef,
+ ObjectUploadFileRequestTypeDef,
+ ObjectUploadFileobjRequestTypeDef,
+ OwnershipControlsRuleTypeDef,
+ ProgressTypeDef,
+ PutBucketPolicyRequestBucketPolicyPutTypeDef,
+ PutBucketPolicyRequestRequestTypeDef,
+ RequestPaymentConfigurationTypeDef,
+ PutBucketVersioningRequestBucketVersioningEnableTypeDef,
+ VersioningConfigurationTypeDef,
+ PutBucketVersioningRequestBucketVersioningSuspendTypeDef,
+ PutObjectRequestBucketPutObjectTypeDef,
+ PutObjectRequestObjectPutTypeDef,
+ PutObjectRequestObjectSummaryPutTypeDef,
+ PutObjectRequestRequestTypeDef,
+ RecordsEventTypeDef,
+ RedirectTypeDef,
+ ReplicaModificationsTypeDef,
+ RequestProgressTypeDef,
+ ScanRangeTypeDef,
+ ServerSideEncryptionByDefaultTypeDef,
+ SseKmsEncryptedObjectsTypeDef,
+ StatsTypeDef,
+ UploadPartRequestMultipartUploadPartUploadTypeDef,
+ UploadPartRequestRequestTypeDef,
+ WriteGetObjectResponseRequestRequestTypeDef,
+ AbortMultipartUploadOutputTypeDef,
+ CompleteMultipartUploadOutputTypeDef,
+ CreateBucketOutputTypeDef,
+ CreateMultipartUploadOutputTypeDef,
+ DeleteObjectOutputTypeDef,
+ DeleteObjectTaggingOutputTypeDef,
+ EmptyResponseMetadataTypeDef,
+ ErrorDocumentResponseMetadataTypeDef,
+ GetBucketAccelerateConfigurationOutputTypeDef,
+ GetBucketLocationOutputTypeDef,
+ GetBucketPolicyOutputTypeDef,
+ GetBucketRequestPaymentOutputTypeDef,
+ GetBucketVersioningOutputTypeDef,
+ GetObjectOutputTypeDef,
+ GetObjectTorrentOutputTypeDef,
+ HeadObjectOutputTypeDef,
+ IndexDocumentResponseMetadataTypeDef,
+ InitiatorResponseMetadataTypeDef,
+ OwnerResponseMetadataTypeDef,
+ PutObjectAclOutputTypeDef,
+ PutObjectLegalHoldOutputTypeDef,
+ PutObjectLockConfigurationOutputTypeDef,
+ PutObjectOutputTypeDef,
+ PutObjectRetentionOutputTypeDef,
+ PutObjectTaggingOutputTypeDef,
+ RedirectAllRequestsToResponseMetadataTypeDef,
+ RestoreObjectOutputTypeDef,
+ UploadPartOutputTypeDef,
+ PutBucketAccelerateConfigurationRequestRequestTypeDef,
+ DeleteMarkerEntryTypeDef,
+ ObjectTypeDef,
+ ObjectVersionTypeDef,
+ AnalyticsAndOperatorTypeDef,
+ GetBucketTaggingOutputTypeDef,
+ GetObjectTaggingOutputTypeDef,
+ IntelligentTieringAndOperatorTypeDef,
+ LifecycleRuleAndOperatorTypeDef,
+ MetricsAndOperatorTypeDef,
+ ReplicationRuleAndOperatorTypeDef,
+ TaggingTypeDef,
+ AnalyticsExportDestinationTypeDef,
+ BucketCopyRequestTypeDef,
+ ClientCopyRequestTypeDef,
+ CopyObjectRequestRequestTypeDef,
+ ObjectCopyRequestTypeDef,
+ UploadPartCopyRequestMultipartUploadPartCopyFromTypeDef,
+ UploadPartCopyRequestRequestTypeDef,
+ ListBucketsOutputTypeDef,
+ CORSConfigurationTypeDef,
+ GetBucketCorsOutputTypeDef,
+ CompletedMultipartUploadTypeDef,
+ CopyObjectOutputTypeDef,
+ UploadPartCopyOutputTypeDef,
+ CreateBucketRequestBucketCreateTypeDef,
+ CreateBucketRequestRequestTypeDef,
+ CreateBucketRequestServiceResourceCreateBucketTypeDef,
+ ObjectLockRuleTypeDef,
+ DeleteObjectsOutputTypeDef,
+ DeleteTypeDef,
+ S3KeyFilterTypeDef,
+ GetBucketPolicyStatusOutputTypeDef,
+ GetObjectAttributesPartsTypeDef,
+ GetObjectLegalHoldOutputTypeDef,
+ PutObjectLegalHoldRequestRequestTypeDef,
+ GetObjectRetentionOutputTypeDef,
+ PutObjectRetentionRequestRequestTypeDef,
+ GetPublicAccessBlockOutputTypeDef,
+ PutPublicAccessBlockRequestRequestTypeDef,
+ GrantTypeDef,
+ TargetGrantTypeDef,
+ HeadBucketRequestBucketExistsWaitTypeDef,
+ HeadBucketRequestBucketNotExistsWaitTypeDef,
+ HeadObjectRequestObjectExistsWaitTypeDef,
+ HeadObjectRequestObjectNotExistsWaitTypeDef,
+ MultipartUploadTypeDef,
+ InputSerializationTypeDef,
+ InventoryEncryptionTypeDef,
+ OutputSerializationTypeDef,
+ RuleTypeDef,
+ ListMultipartUploadsRequestListMultipartUploadsPaginateTypeDef,
+ ListObjectVersionsRequestListObjectVersionsPaginateTypeDef,
+ ListObjectsRequestListObjectsPaginateTypeDef,
+ ListObjectsV2RequestListObjectsV2PaginateTypeDef,
+ ListPartsRequestListPartsPaginateTypeDef,
+ ListPartsOutputTypeDef,
+ MetricsTypeDef,
+ ReplicationTimeTypeDef,
+ NotificationConfigurationDeprecatedResponseMetadataTypeDef,
+ NotificationConfigurationDeprecatedTypeDef,
+ OwnershipControlsTypeDef,
+ ProgressEventTypeDef,
+ PutBucketRequestPaymentRequestBucketRequestPaymentPutTypeDef,
+ PutBucketRequestPaymentRequestRequestTypeDef,
+ PutBucketVersioningRequestBucketVersioningPutTypeDef,
+ PutBucketVersioningRequestRequestTypeDef,
+ RoutingRuleTypeDef,
+ ServerSideEncryptionRuleTypeDef,
+ SourceSelectionCriteriaTypeDef,
+ StatsEventTypeDef,
+ ListObjectsOutputTypeDef,
+ ListObjectsV2OutputTypeDef,
+ ListObjectVersionsOutputTypeDef,
+ AnalyticsFilterTypeDef,
+ IntelligentTieringFilterTypeDef,
+ LifecycleRuleFilterTypeDef,
+ MetricsFilterTypeDef,
+ ReplicationRuleFilterTypeDef,
+ PutBucketTaggingRequestBucketTaggingPutTypeDef,
+ PutBucketTaggingRequestRequestTypeDef,
+ PutObjectTaggingRequestRequestTypeDef,
+ StorageClassAnalysisDataExportTypeDef,
+ PutBucketCorsRequestBucketCorsPutTypeDef,
+ PutBucketCorsRequestRequestTypeDef,
+ CompleteMultipartUploadRequestMultipartUploadCompleteTypeDef,
+ CompleteMultipartUploadRequestRequestTypeDef,
+ ObjectLockConfigurationTypeDef,
+ DeleteObjectsRequestBucketDeleteObjectsTypeDef,
+ DeleteObjectsRequestRequestTypeDef,
+ NotificationConfigurationFilterTypeDef,
+ GetObjectAttributesOutputTypeDef,
+ AccessControlPolicyTypeDef,
+ GetBucketAclOutputTypeDef,
+ GetObjectAclOutputTypeDef,
+ S3LocationTypeDef,
+ LoggingEnabledResponseMetadataTypeDef,
+ LoggingEnabledTypeDef,
+ ListMultipartUploadsOutputTypeDef,
+ InventoryS3BucketDestinationTypeDef,
+ SelectObjectContentRequestRequestTypeDef,
+ SelectParametersTypeDef,
+ GetBucketLifecycleOutputTypeDef,
+ LifecycleConfigurationTypeDef,
+ DestinationTypeDef,
+ PutBucketNotificationRequestRequestTypeDef,
+ GetBucketOwnershipControlsOutputTypeDef,
+ PutBucketOwnershipControlsRequestRequestTypeDef,
+ GetBucketWebsiteOutputTypeDef,
+ WebsiteConfigurationTypeDef,
+ ServerSideEncryptionConfigurationTypeDef,
+ SelectObjectContentEventStreamTypeDef,
+ IntelligentTieringConfigurationTypeDef,
+ LifecycleRuleTypeDef,
+ MetricsConfigurationTypeDef,
+ StorageClassAnalysisTypeDef,
+ GetObjectLockConfigurationOutputTypeDef,
+ PutObjectLockConfigurationRequestRequestTypeDef,
+ LambdaFunctionConfigurationTypeDef,
+ QueueConfigurationTypeDef,
+ TopicConfigurationTypeDef,
+ PutBucketAclRequestBucketAclPutTypeDef,
+ PutBucketAclRequestRequestTypeDef,
+ PutObjectAclRequestObjectAclPutTypeDef,
+ PutObjectAclRequestRequestTypeDef,
+ OutputLocationTypeDef,
+ BucketLoggingStatusTypeDef,
+ GetBucketLoggingOutputTypeDef,
+ InventoryDestinationTypeDef,
+ PutBucketLifecycleRequestBucketLifecyclePutTypeDef,
+ PutBucketLifecycleRequestRequestTypeDef,
+ ReplicationRuleTypeDef,
+ PutBucketWebsiteRequestBucketWebsitePutTypeDef,
+ PutBucketWebsiteRequestRequestTypeDef,
+ GetBucketEncryptionOutputTypeDef,
+ PutBucketEncryptionRequestRequestTypeDef,
+ SelectObjectContentOutputTypeDef,
+ GetBucketIntelligentTieringConfigurationOutputTypeDef,
+ ListBucketIntelligentTieringConfigurationsOutputTypeDef,
+ PutBucketIntelligentTieringConfigurationRequestRequestTypeDef,
+ BucketLifecycleConfigurationTypeDef,
+ GetBucketLifecycleConfigurationOutputTypeDef,
+ GetBucketMetricsConfigurationOutputTypeDef,
+ ListBucketMetricsConfigurationsOutputTypeDef,
+ PutBucketMetricsConfigurationRequestRequestTypeDef,
+ AnalyticsConfigurationTypeDef,
+ NotificationConfigurationResponseMetadataTypeDef,
+ NotificationConfigurationTypeDef,
+ RestoreRequestTypeDef,
+ PutBucketLoggingRequestBucketLoggingPutTypeDef,
+ PutBucketLoggingRequestRequestTypeDef,
+ InventoryConfigurationTypeDef,
+ ReplicationConfigurationTypeDef,
+ PutBucketLifecycleConfigurationRequestBucketLifecycleConfigurationPutTypeDef,
+ PutBucketLifecycleConfigurationRequestRequestTypeDef,
+ GetBucketAnalyticsConfigurationOutputTypeDef,
+ ListBucketAnalyticsConfigurationsOutputTypeDef,
+ PutBucketAnalyticsConfigurationRequestRequestTypeDef,
+ PutBucketNotificationConfigurationRequestBucketNotificationPutTypeDef,
+ PutBucketNotificationConfigurationRequestRequestTypeDef,
+ RestoreObjectRequestObjectRestoreObjectTypeDef,
+ RestoreObjectRequestObjectSummaryRestoreObjectTypeDef,
+ RestoreObjectRequestRequestTypeDef,
+ GetBucketInventoryConfigurationOutputTypeDef,
+ ListBucketInventoryConfigurationsOutputTypeDef,
+ PutBucketInventoryConfigurationRequestRequestTypeDef,
+ GetBucketReplicationOutputTypeDef,
+ PutBucketReplicationRequestRequestTypeDef,
+)
+
+
+def get_structure() -> AbortIncompleteMultipartUploadTypeDef:
+ return {...}
+```
+
+<a id="how-it-works"></a>
+
+## How it works
+
+Fully automated
+[mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder) carefully
+generates type annotations for each service, patiently waiting for `boto3`
+updates. It delivers drop-in type annotations for you and makes sure that:
+
+- All available `boto3` services are covered.
+- Each public class and method of every `boto3` service gets valid type
+ annotations extracted from `botocore` schemas.
+- Type annotations include up-to-date documentation.
+- Link to documentation is provided for every method.
+- Code is processed by [black](https://github.com/psf/black) and
+ [isort](https://github.com/PyCQA/isort) for readability.
+
+<a id="what's-new"></a>
+
+## What's new
+
+<a id="implemented-features"></a>
+
+### Implemented features
+
+- Fully type annotated `boto3`, `botocore`, `aiobotocore` and `aioboto3`
+ libraries
+- `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs`
+ compatibility
+- `Client`, `ServiceResource`, `Resource`, `Waiter` `Paginator` type
+ annotations for each service
+- Generated `TypeDefs` for each service
+- Generated `Literals` for each service
+- Auto discovery of types for `boto3.client` and `boto3.resource` calls
+- Auto discovery of types for `session.client` and `session.resource` calls
+- Auto discovery of types for `client.get_waiter` and `client.get_paginator`
+ calls
+- Auto discovery of types for `ServiceResource` and `Resource` collections
+- Auto discovery of types for `aiobotocore.Session.create_client` calls
+
+<a id="latest-changes"></a>
+
+### Latest changes
+
+Builder changelog can be found in
+[Releases](https://github.com/youtype/mypy_boto3_builder/releases).
+
+<a id="versioning"></a>
+
+## Versioning
+
+`mypy-boto3-s3` version is the same as related `boto3` version and follows
+[PEP 440](https://www.python.org/dev/peps/pep-0440/) format.
+
+<a id="thank-you"></a>
+
+## Thank you
+
+- [Allie Fitter](https://github.com/alliefitter) for
+ [boto3-type-annotations](https://pypi.org/project/boto3-type-annotations/),
+ this package is based on top of his work
+- [black](https://github.com/psf/black) developers for an awesome formatting
+ tool
+- [Timothy Edmund Crosley](https://github.com/timothycrosley) for
+ [isort](https://github.com/PyCQA/isort) and how flexible it is
+- [mypy](https://github.com/python/mypy) developers for doing all dirty work
+ for us
+- [pyright](https://github.com/microsoft/pyright) team for the new era of typed
+ Python
+
+<a id="documentation"></a>
+
+## Documentation
+
+All services type annotations can be found in
+[boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3/)
+
+<a id="support-and-contributing"></a>
+
+## Support and contributing
+
+This package is auto-generated. Please reports any bugs or request new features
+in [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder/issues/)
+repository.
+
+
+%package help
+Summary: Development documents and examples for mypy-boto3-s3
+Provides: python3-mypy-boto3-s3-doc
+%description help
+<a id="mypy-boto3-s3"></a>
+
+# mypy-boto3-s3
+
+[![PyPI - mypy-boto3-s3](https://img.shields.io/pypi/v/mypy-boto3-s3.svg?color=blue)](https://pypi.org/project/mypy-boto3-s3)
+[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-s3.svg?color=blue)](https://pypi.org/project/mypy-boto3-s3)
+[![Docs](https://img.shields.io/readthedocs/boto3-stubs.svg?color=blue)](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3/)
+[![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-s3?color=blue)](https://pypistats.org/packages/mypy-boto3-s3)
+
+![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png)
+
+Type annotations for
+[boto3.S3 1.26.104](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3)
+service compatible with [VSCode](https://code.visualstudio.com/),
+[PyCharm](https://www.jetbrains.com/pycharm/),
+[Emacs](https://www.gnu.org/software/emacs/),
+[Sublime Text](https://www.sublimetext.com/),
+[mypy](https://github.com/python/mypy),
+[pyright](https://github.com/microsoft/pyright) and other tools.
+
+Generated by
+[mypy-boto3-builder 7.14.5](https://github.com/youtype/mypy_boto3_builder).
+
+More information can be found on
+[boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in
+[mypy-boto3-s3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3/).
+
+See how it helps to find and fix potential bugs:
+
+![boto3-stubs demo](https://github.com/youtype/mypy_boto3_builder/raw/main/demo.gif)
+
+- [mypy-boto3-s3](#mypy-boto3-s3)
+ - [How to install](#how-to-install)
+ - [VSCode extension](#vscode-extension)
+ - [From PyPI with pip](#from-pypi-with-pip)
+ - [From conda-forge](#from-conda-forge)
+ - [How to uninstall](#how-to-uninstall)
+ - [Usage](#usage)
+ - [VSCode](#vscode)
+ - [PyCharm](#pycharm)
+ - [Emacs](#emacs)
+ - [Sublime Text](#sublime-text)
+ - [Other IDEs](#other-ides)
+ - [mypy](#mypy)
+ - [pyright](#pyright)
+ - [Explicit type annotations](#explicit-type-annotations)
+ - [Client annotations](#client-annotations)
+ - [Paginators annotations](#paginators-annotations)
+ - [Waiters annotations](#waiters-annotations)
+ - [Service Resource annotations](#service-resource-annotations)
+ - [Other resources annotations](#other-resources-annotations)
+ - [Collections annotations](#collections-annotations)
+ - [Literals](#literals)
+ - [Typed dictionaries](#typed-dictionaries)
+ - [How it works](#how-it-works)
+ - [What's new](#what's-new)
+ - [Implemented features](#implemented-features)
+ - [Latest changes](#latest-changes)
+ - [Versioning](#versioning)
+ - [Thank you](#thank-you)
+ - [Documentation](#documentation)
+ - [Support and contributing](#support-and-contributing)
+
+<a id="how-to-install"></a>
+
+## How to install
+
+<a id="vscode-extension"></a>
+
+### VSCode extension
+
+Add
+[AWS Boto3](https://marketplace.visualstudio.com/items?itemName=Boto3typed.boto3-ide)
+extension to your VSCode and run `AWS boto3: Quick Start` command.
+
+Click `Modify` and select `boto3 common` and `S3`.
+
+<a id="from-pypi-with-pip"></a>
+
+### From PyPI with pip
+
+Install `boto3-stubs` for `S3` service.
+
+```bash
+# install with boto3 type annotations
+python -m pip install 'boto3-stubs[s3]'
+
+
+# Lite version does not provide session.client/resource overloads
+# it is more RAM-friendly, but requires explicit type annotations
+python -m pip install 'boto3-stubs-lite[s3]'
+
+
+# standalone installation
+python -m pip install mypy-boto3-s3
+```
+
+<a id="from-conda-forge"></a>
+
+### From conda-forge
+
+Installing `mypy-boto3-s3` from the `conda-forge` channel can be achieved by
+adding `conda-forge` to your channels with:
+
+```bash
+conda config --add channels conda-forge
+conda config --set channel_priority strict
+```
+
+Once the `conda-forge` channel has been enabled, `mypy-boto3-s3` can be
+installed with:
+
+```bash
+conda install mypy-boto3-s3
+```
+
+It is possible to list all of the versions of `mypy-boto3-s3` available on your
+platform with:
+
+```bash
+conda search mypy-boto3-s3 --channel conda-forge
+```
+
+<a id="how-to-uninstall"></a>
+
+## How to uninstall
+
+```bash
+python -m pip uninstall -y mypy-boto3-s3
+```
+
+<a id="usage"></a>
+
+## Usage
+
+<a id="vscode"></a>
+
+### VSCode
+
+- Install
+ [Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
+- Install
+ [Pylance extension](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance)
+- Set `Pylance` as your Python Language Server
+- Install `boto3-stubs[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+Both type checking and code completion should now work. No explicit type
+annotations required, write your `boto3` code as usual.
+
+<a id="pycharm"></a>
+
+### PyCharm
+
+Install `boto3-stubs-lite[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs-lite[s3]'`
+```
+
+Both type checking and code completion should now work. Explicit type
+annotations **are required**.
+
+Use `boto3-stubs` package instead for implicit type discovery.
+
+<a id="emacs"></a>
+
+### Emacs
+
+- Install `boto3-stubs` with services you use in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+- Install [use-package](https://github.com/jwiegley/use-package),
+ [lsp](https://github.com/emacs-lsp/lsp-mode/),
+ [company](https://github.com/company-mode/company-mode) and
+ [flycheck](https://github.com/flycheck/flycheck) packages
+- Install [lsp-pyright](https://github.com/emacs-lsp/lsp-pyright) package
+
+```elisp
+(use-package lsp-pyright
+ :ensure t
+ :hook (python-mode . (lambda ()
+ (require 'lsp-pyright)
+ (lsp))) ; or lsp-deferred
+ :init (when (executable-find "python3")
+ (setq lsp-pyright-python-executable-cmd "python3"))
+ )
+```
+
+- Make sure emacs uses the environment where you have installed `boto3-stubs`
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="sublime-text"></a>
+
+### Sublime Text
+
+- Install `boto3-stubs[s3]` with services you use in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+- Install [LSP-pyright](https://github.com/sublimelsp/LSP-pyright) package
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="other-ides"></a>
+
+### Other IDEs
+
+Not tested, but as long as your IDE supports `mypy` or `pyright`, everything
+should work.
+
+<a id="mypy"></a>
+
+### mypy
+
+- Install `mypy`: `python -m pip install mypy`
+- Install `boto3-stubs[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'`
+```
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="pyright"></a>
+
+### pyright
+
+- Install `pyright`: `npm i -g pyright`
+- Install `boto3-stubs[s3]` in your environment:
+
+```bash
+python -m pip install 'boto3-stubs[s3]'
+```
+
+Optionally, you can install `boto3-stubs` to `typings` folder.
+
+Type checking should now work. No explicit type annotations required, write
+your `boto3` code as usual.
+
+<a id="explicit-type-annotations"></a>
+
+## Explicit type annotations
+
+<a id="client-annotations"></a>
+
+### Client annotations
+
+`S3Client` provides annotations for `boto3.client("s3")`.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3Client
+
+client: S3Client = Session().client("s3")
+
+# now client usage is checked by mypy and IDE should provide code completion
+```
+
+<a id="paginators-annotations"></a>
+
+### Paginators annotations
+
+`mypy_boto3_s3.paginator` module contains type annotations for all paginators.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3Client
+from mypy_boto3_s3.paginator import (
+ ListMultipartUploadsPaginator,
+ ListObjectVersionsPaginator,
+ ListObjectsPaginator,
+ ListObjectsV2Paginator,
+ ListPartsPaginator,
+)
+
+client: S3Client = Session().client("s3")
+
+# Explicit type annotations are optional here
+# Types should be correctly discovered by mypy and IDEs
+list_multipart_uploads_paginator: ListMultipartUploadsPaginator = client.get_paginator(
+ "list_multipart_uploads"
+)
+list_object_versions_paginator: ListObjectVersionsPaginator = client.get_paginator(
+ "list_object_versions"
+)
+list_objects_paginator: ListObjectsPaginator = client.get_paginator("list_objects")
+list_objects_v2_paginator: ListObjectsV2Paginator = client.get_paginator("list_objects_v2")
+list_parts_paginator: ListPartsPaginator = client.get_paginator("list_parts")
+```
+
+<a id="waiters-annotations"></a>
+
+### Waiters annotations
+
+`mypy_boto3_s3.waiter` module contains type annotations for all waiters.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3Client
+from mypy_boto3_s3.waiter import (
+ BucketExistsWaiter,
+ BucketNotExistsWaiter,
+ ObjectExistsWaiter,
+ ObjectNotExistsWaiter,
+)
+
+client: S3Client = Session().client("s3")
+
+# Explicit type annotations are optional here
+# Types should be correctly discovered by mypy and IDEs
+bucket_exists_waiter: BucketExistsWaiter = client.get_waiter("bucket_exists")
+bucket_not_exists_waiter: BucketNotExistsWaiter = client.get_waiter("bucket_not_exists")
+object_exists_waiter: ObjectExistsWaiter = client.get_waiter("object_exists")
+object_not_exists_waiter: ObjectNotExistsWaiter = client.get_waiter("object_not_exists")
+```
+
+<a id="service-resource-annotations"></a>
+
+### Service Resource annotations
+
+`S3ServiceResource` provides annotations for `boto3.resource("s3")`.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3ServiceResource
+
+resource: S3ServiceResource = Session().resource("s3")
+
+# now resource usage is checked by mypy and IDE should provide code completion
+```
+
+<a id="other-resources-annotations"></a>
+
+### Other resources annotations
+
+`mypy_boto3_s3.service_resource` module contains type annotations for all
+resources.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3ServiceResource
+from mypy_boto3_s3.service_resource import (
+ Bucket,
+ BucketAcl,
+ BucketCors,
+ BucketLifecycle,
+ BucketLifecycleConfiguration,
+ BucketLogging,
+ BucketNotification,
+ BucketPolicy,
+ BucketRequestPayment,
+ BucketTagging,
+ BucketVersioning,
+ BucketWebsite,
+ MultipartUpload,
+ MultipartUploadPart,
+ Object,
+ ObjectAcl,
+ ObjectSummary,
+ ObjectVersion,
+)
+
+resource: S3ServiceResource = Session().resource("s3")
+
+# Explicit type annotations are optional here
+# Type should be correctly discovered by mypy and IDEs
+my_bucket: Bucket = resource.Bucket(...)
+my_bucket_acl: BucketAcl = resource.BucketAcl(...)
+my_bucket_cors: BucketCors = resource.BucketCors(...)
+my_bucket_lifecycle: BucketLifecycle = resource.BucketLifecycle(...)
+my_bucket_lifecycle_configuration: BucketLifecycleConfiguration = (
+ resource.BucketLifecycleConfiguration(...)
+)
+my_bucket_logging: BucketLogging = resource.BucketLogging(...)
+my_bucket_notification: BucketNotification = resource.BucketNotification(...)
+my_bucket_policy: BucketPolicy = resource.BucketPolicy(...)
+my_bucket_request_payment: BucketRequestPayment = resource.BucketRequestPayment(...)
+my_bucket_tagging: BucketTagging = resource.BucketTagging(...)
+my_bucket_versioning: BucketVersioning = resource.BucketVersioning(...)
+my_bucket_website: BucketWebsite = resource.BucketWebsite(...)
+my_multipart_upload: MultipartUpload = resource.MultipartUpload(...)
+my_multipart_upload_part: MultipartUploadPart = resource.MultipartUploadPart(...)
+my_object: Object = resource.Object(...)
+my_object_acl: ObjectAcl = resource.ObjectAcl(...)
+my_object_summary: ObjectSummary = resource.ObjectSummary(...)
+my_object_version: ObjectVersion = resource.ObjectVersion(...)
+```
+
+<a id="collections-annotations"></a>
+
+### Collections annotations
+
+`mypy_boto3_s3.service_resource` module contains type annotations for all
+`S3ServiceResource` collections.
+
+```python
+from boto3.session import Session
+
+from mypy_boto3_s3 import S3ServiceResource
+from mypy_boto3_s3.service_resource import ServiceResourceBucketsCollection
+
+resource: S3ServiceResource = Session().resource("s3")
+
+# Explicit type annotations are optional here
+# Type should be correctly discovered by mypy and IDEs
+buckets: s3_resources.ServiceResourceBucketsCollection = resource.buckets
+```
+
+<a id="literals"></a>
+
+### Literals
+
+`mypy_boto3_s3.literals` module contains literals extracted from shapes that
+can be used in user code for type checking.
+
+```python
+from mypy_boto3_s3.literals import (
+ AnalyticsS3ExportFileFormatType,
+ ArchiveStatusType,
+ BucketAccelerateStatusType,
+ BucketCannedACLType,
+ BucketExistsWaiterName,
+ BucketLocationConstraintType,
+ BucketLogsPermissionType,
+ BucketNotExistsWaiterName,
+ BucketVersioningStatusType,
+ ChecksumAlgorithmType,
+ ChecksumModeType,
+ CompressionTypeType,
+ DeleteMarkerReplicationStatusType,
+ EncodingTypeType,
+ EventType,
+ ExistingObjectReplicationStatusType,
+ ExpirationStatusType,
+ ExpressionTypeType,
+ FileHeaderInfoType,
+ FilterRuleNameType,
+ IntelligentTieringAccessTierType,
+ IntelligentTieringStatusType,
+ InventoryFormatType,
+ InventoryFrequencyType,
+ InventoryIncludedObjectVersionsType,
+ InventoryOptionalFieldType,
+ JSONTypeType,
+ ListMultipartUploadsPaginatorName,
+ ListObjectVersionsPaginatorName,
+ ListObjectsPaginatorName,
+ ListObjectsV2PaginatorName,
+ ListPartsPaginatorName,
+ MFADeleteStatusType,
+ MFADeleteType,
+ MetadataDirectiveType,
+ MetricsStatusType,
+ ObjectAttributesType,
+ ObjectCannedACLType,
+ ObjectExistsWaiterName,
+ ObjectLockEnabledType,
+ ObjectLockLegalHoldStatusType,
+ ObjectLockModeType,
+ ObjectLockRetentionModeType,
+ ObjectNotExistsWaiterName,
+ ObjectOwnershipType,
+ ObjectStorageClassType,
+ ObjectVersionStorageClassType,
+ OwnerOverrideType,
+ PayerType,
+ PermissionType,
+ ProtocolType,
+ QuoteFieldsType,
+ ReplicaModificationsStatusType,
+ ReplicationRuleStatusType,
+ ReplicationStatusType,
+ ReplicationTimeStatusType,
+ RequestChargedType,
+ RequestPayerType,
+ RestoreRequestTypeType,
+ ServerSideEncryptionType,
+ SseKmsEncryptedObjectsStatusType,
+ StorageClassAnalysisSchemaVersionType,
+ StorageClassType,
+ TaggingDirectiveType,
+ TierType,
+ TransitionStorageClassType,
+ TypeType,
+ S3ServiceName,
+ ServiceName,
+ ResourceServiceName,
+ PaginatorName,
+ WaiterName,
+ RegionName,
+)
+
+
+def check_value(value: AnalyticsS3ExportFileFormatType) -> bool:
+ ...
+```
+
+<a id="typed-dictionaries"></a>
+
+### Typed dictionaries
+
+`mypy_boto3_s3.type_defs` module contains structures and shapes assembled to
+typed dictionaries for additional type checking.
+
+```python
+from mypy_boto3_s3.type_defs import (
+ AbortIncompleteMultipartUploadTypeDef,
+ ResponseMetadataTypeDef,
+ AbortMultipartUploadRequestMultipartUploadAbortTypeDef,
+ AbortMultipartUploadRequestRequestTypeDef,
+ AccelerateConfigurationTypeDef,
+ OwnerTypeDef,
+ AccessControlTranslationTypeDef,
+ TagTypeDef,
+ AnalyticsS3BucketDestinationTypeDef,
+ CopySourceTypeDef,
+ BucketDownloadFileRequestTypeDef,
+ BucketDownloadFileobjRequestTypeDef,
+ BucketTypeDef,
+ BucketUploadFileRequestTypeDef,
+ BucketUploadFileobjRequestTypeDef,
+ CORSRuleTypeDef,
+ CSVInputTypeDef,
+ CSVOutputTypeDef,
+ ChecksumTypeDef,
+ ClientDownloadFileRequestTypeDef,
+ ClientDownloadFileobjRequestTypeDef,
+ ClientGeneratePresignedPostRequestTypeDef,
+ ClientUploadFileRequestTypeDef,
+ ClientUploadFileobjRequestTypeDef,
+ CloudFunctionConfigurationTypeDef,
+ CommonPrefixTypeDef,
+ CompletedPartTypeDef,
+ ConditionTypeDef,
+ CopyObjectResultTypeDef,
+ CopyObjectRequestObjectCopyFromTypeDef,
+ CopyObjectRequestObjectSummaryCopyFromTypeDef,
+ CopyPartResultTypeDef,
+ CreateBucketConfigurationTypeDef,
+ CreateMultipartUploadRequestObjectInitiateMultipartUploadTypeDef,
+ CreateMultipartUploadRequestObjectSummaryInitiateMultipartUploadTypeDef,
+ CreateMultipartUploadRequestRequestTypeDef,
+ DefaultRetentionTypeDef,
+ DeleteBucketAnalyticsConfigurationRequestRequestTypeDef,
+ DeleteBucketCorsRequestBucketCorsDeleteTypeDef,
+ DeleteBucketCorsRequestRequestTypeDef,
+ DeleteBucketEncryptionRequestRequestTypeDef,
+ DeleteBucketIntelligentTieringConfigurationRequestRequestTypeDef,
+ DeleteBucketInventoryConfigurationRequestRequestTypeDef,
+ DeleteBucketLifecycleRequestBucketLifecycleConfigurationDeleteTypeDef,
+ DeleteBucketLifecycleRequestBucketLifecycleDeleteTypeDef,
+ DeleteBucketLifecycleRequestRequestTypeDef,
+ DeleteBucketMetricsConfigurationRequestRequestTypeDef,
+ DeleteBucketOwnershipControlsRequestRequestTypeDef,
+ DeleteBucketPolicyRequestBucketPolicyDeleteTypeDef,
+ DeleteBucketPolicyRequestRequestTypeDef,
+ DeleteBucketReplicationRequestRequestTypeDef,
+ DeleteBucketRequestBucketDeleteTypeDef,
+ DeleteBucketRequestRequestTypeDef,
+ DeleteBucketTaggingRequestBucketTaggingDeleteTypeDef,
+ DeleteBucketTaggingRequestRequestTypeDef,
+ DeleteBucketWebsiteRequestBucketWebsiteDeleteTypeDef,
+ DeleteBucketWebsiteRequestRequestTypeDef,
+ DeleteMarkerReplicationTypeDef,
+ DeleteObjectRequestObjectDeleteTypeDef,
+ DeleteObjectRequestObjectSummaryDeleteTypeDef,
+ DeleteObjectRequestObjectVersionDeleteTypeDef,
+ DeleteObjectRequestRequestTypeDef,
+ DeleteObjectTaggingRequestRequestTypeDef,
+ DeletedObjectTypeDef,
+ ErrorTypeDef,
+ DeletePublicAccessBlockRequestRequestTypeDef,
+ ObjectIdentifierTypeDef,
+ EncryptionConfigurationTypeDef,
+ EncryptionTypeDef,
+ ErrorDocumentTypeDef,
+ ExistingObjectReplicationTypeDef,
+ FilterRuleTypeDef,
+ GetBucketAccelerateConfigurationRequestRequestTypeDef,
+ GetBucketAclRequestRequestTypeDef,
+ GetBucketAnalyticsConfigurationRequestRequestTypeDef,
+ GetBucketCorsRequestRequestTypeDef,
+ GetBucketEncryptionRequestRequestTypeDef,
+ GetBucketIntelligentTieringConfigurationRequestRequestTypeDef,
+ GetBucketInventoryConfigurationRequestRequestTypeDef,
+ GetBucketLifecycleConfigurationRequestRequestTypeDef,
+ GetBucketLifecycleRequestRequestTypeDef,
+ GetBucketLocationRequestRequestTypeDef,
+ GetBucketLoggingRequestRequestTypeDef,
+ GetBucketMetricsConfigurationRequestRequestTypeDef,
+ GetBucketNotificationConfigurationRequestRequestTypeDef,
+ GetBucketOwnershipControlsRequestRequestTypeDef,
+ GetBucketPolicyRequestRequestTypeDef,
+ PolicyStatusTypeDef,
+ GetBucketPolicyStatusRequestRequestTypeDef,
+ GetBucketReplicationRequestRequestTypeDef,
+ GetBucketRequestPaymentRequestRequestTypeDef,
+ GetBucketTaggingRequestRequestTypeDef,
+ GetBucketVersioningRequestRequestTypeDef,
+ IndexDocumentTypeDef,
+ RedirectAllRequestsToTypeDef,
+ GetBucketWebsiteRequestRequestTypeDef,
+ GetObjectAclRequestRequestTypeDef,
+ ObjectPartTypeDef,
+ GetObjectAttributesRequestRequestTypeDef,
+ ObjectLockLegalHoldTypeDef,
+ GetObjectLegalHoldRequestRequestTypeDef,
+ GetObjectLockConfigurationRequestRequestTypeDef,
+ GetObjectRequestObjectGetTypeDef,
+ GetObjectRequestObjectSummaryGetTypeDef,
+ GetObjectRequestObjectVersionGetTypeDef,
+ GetObjectRequestRequestTypeDef,
+ ObjectLockRetentionTypeDef,
+ GetObjectRetentionRequestRequestTypeDef,
+ GetObjectTaggingRequestRequestTypeDef,
+ GetObjectTorrentRequestRequestTypeDef,
+ PublicAccessBlockConfigurationTypeDef,
+ GetPublicAccessBlockRequestRequestTypeDef,
+ GlacierJobParametersTypeDef,
+ GranteeTypeDef,
+ WaiterConfigTypeDef,
+ HeadBucketRequestRequestTypeDef,
+ HeadObjectRequestObjectVersionHeadTypeDef,
+ HeadObjectRequestRequestTypeDef,
+ InitiatorTypeDef,
+ JSONInputTypeDef,
+ TieringTypeDef,
+ InventoryFilterTypeDef,
+ InventoryScheduleTypeDef,
+ SSEKMSTypeDef,
+ JSONOutputTypeDef,
+ LifecycleExpirationTypeDef,
+ NoncurrentVersionExpirationTypeDef,
+ NoncurrentVersionTransitionTypeDef,
+ TransitionTypeDef,
+ ListBucketAnalyticsConfigurationsRequestRequestTypeDef,
+ ListBucketIntelligentTieringConfigurationsRequestRequestTypeDef,
+ ListBucketInventoryConfigurationsRequestRequestTypeDef,
+ ListBucketMetricsConfigurationsRequestRequestTypeDef,
+ PaginatorConfigTypeDef,
+ ListMultipartUploadsRequestRequestTypeDef,
+ ListObjectVersionsRequestRequestTypeDef,
+ ListObjectsRequestRequestTypeDef,
+ ListObjectsV2RequestRequestTypeDef,
+ PartTypeDef,
+ ListPartsRequestRequestTypeDef,
+ MetadataEntryTypeDef,
+ ReplicationTimeValueTypeDef,
+ QueueConfigurationDeprecatedTypeDef,
+ TopicConfigurationDeprecatedTypeDef,
+ ObjectDownloadFileRequestTypeDef,
+ ObjectDownloadFileobjRequestTypeDef,
+ ObjectUploadFileRequestTypeDef,
+ ObjectUploadFileobjRequestTypeDef,
+ OwnershipControlsRuleTypeDef,
+ ProgressTypeDef,
+ PutBucketPolicyRequestBucketPolicyPutTypeDef,
+ PutBucketPolicyRequestRequestTypeDef,
+ RequestPaymentConfigurationTypeDef,
+ PutBucketVersioningRequestBucketVersioningEnableTypeDef,
+ VersioningConfigurationTypeDef,
+ PutBucketVersioningRequestBucketVersioningSuspendTypeDef,
+ PutObjectRequestBucketPutObjectTypeDef,
+ PutObjectRequestObjectPutTypeDef,
+ PutObjectRequestObjectSummaryPutTypeDef,
+ PutObjectRequestRequestTypeDef,
+ RecordsEventTypeDef,
+ RedirectTypeDef,
+ ReplicaModificationsTypeDef,
+ RequestProgressTypeDef,
+ ScanRangeTypeDef,
+ ServerSideEncryptionByDefaultTypeDef,
+ SseKmsEncryptedObjectsTypeDef,
+ StatsTypeDef,
+ UploadPartRequestMultipartUploadPartUploadTypeDef,
+ UploadPartRequestRequestTypeDef,
+ WriteGetObjectResponseRequestRequestTypeDef,
+ AbortMultipartUploadOutputTypeDef,
+ CompleteMultipartUploadOutputTypeDef,
+ CreateBucketOutputTypeDef,
+ CreateMultipartUploadOutputTypeDef,
+ DeleteObjectOutputTypeDef,
+ DeleteObjectTaggingOutputTypeDef,
+ EmptyResponseMetadataTypeDef,
+ ErrorDocumentResponseMetadataTypeDef,
+ GetBucketAccelerateConfigurationOutputTypeDef,
+ GetBucketLocationOutputTypeDef,
+ GetBucketPolicyOutputTypeDef,
+ GetBucketRequestPaymentOutputTypeDef,
+ GetBucketVersioningOutputTypeDef,
+ GetObjectOutputTypeDef,
+ GetObjectTorrentOutputTypeDef,
+ HeadObjectOutputTypeDef,
+ IndexDocumentResponseMetadataTypeDef,
+ InitiatorResponseMetadataTypeDef,
+ OwnerResponseMetadataTypeDef,
+ PutObjectAclOutputTypeDef,
+ PutObjectLegalHoldOutputTypeDef,
+ PutObjectLockConfigurationOutputTypeDef,
+ PutObjectOutputTypeDef,
+ PutObjectRetentionOutputTypeDef,
+ PutObjectTaggingOutputTypeDef,
+ RedirectAllRequestsToResponseMetadataTypeDef,
+ RestoreObjectOutputTypeDef,
+ UploadPartOutputTypeDef,
+ PutBucketAccelerateConfigurationRequestRequestTypeDef,
+ DeleteMarkerEntryTypeDef,
+ ObjectTypeDef,
+ ObjectVersionTypeDef,
+ AnalyticsAndOperatorTypeDef,
+ GetBucketTaggingOutputTypeDef,
+ GetObjectTaggingOutputTypeDef,
+ IntelligentTieringAndOperatorTypeDef,
+ LifecycleRuleAndOperatorTypeDef,
+ MetricsAndOperatorTypeDef,
+ ReplicationRuleAndOperatorTypeDef,
+ TaggingTypeDef,
+ AnalyticsExportDestinationTypeDef,
+ BucketCopyRequestTypeDef,
+ ClientCopyRequestTypeDef,
+ CopyObjectRequestRequestTypeDef,
+ ObjectCopyRequestTypeDef,
+ UploadPartCopyRequestMultipartUploadPartCopyFromTypeDef,
+ UploadPartCopyRequestRequestTypeDef,
+ ListBucketsOutputTypeDef,
+ CORSConfigurationTypeDef,
+ GetBucketCorsOutputTypeDef,
+ CompletedMultipartUploadTypeDef,
+ CopyObjectOutputTypeDef,
+ UploadPartCopyOutputTypeDef,
+ CreateBucketRequestBucketCreateTypeDef,
+ CreateBucketRequestRequestTypeDef,
+ CreateBucketRequestServiceResourceCreateBucketTypeDef,
+ ObjectLockRuleTypeDef,
+ DeleteObjectsOutputTypeDef,
+ DeleteTypeDef,
+ S3KeyFilterTypeDef,
+ GetBucketPolicyStatusOutputTypeDef,
+ GetObjectAttributesPartsTypeDef,
+ GetObjectLegalHoldOutputTypeDef,
+ PutObjectLegalHoldRequestRequestTypeDef,
+ GetObjectRetentionOutputTypeDef,
+ PutObjectRetentionRequestRequestTypeDef,
+ GetPublicAccessBlockOutputTypeDef,
+ PutPublicAccessBlockRequestRequestTypeDef,
+ GrantTypeDef,
+ TargetGrantTypeDef,
+ HeadBucketRequestBucketExistsWaitTypeDef,
+ HeadBucketRequestBucketNotExistsWaitTypeDef,
+ HeadObjectRequestObjectExistsWaitTypeDef,
+ HeadObjectRequestObjectNotExistsWaitTypeDef,
+ MultipartUploadTypeDef,
+ InputSerializationTypeDef,
+ InventoryEncryptionTypeDef,
+ OutputSerializationTypeDef,
+ RuleTypeDef,
+ ListMultipartUploadsRequestListMultipartUploadsPaginateTypeDef,
+ ListObjectVersionsRequestListObjectVersionsPaginateTypeDef,
+ ListObjectsRequestListObjectsPaginateTypeDef,
+ ListObjectsV2RequestListObjectsV2PaginateTypeDef,
+ ListPartsRequestListPartsPaginateTypeDef,
+ ListPartsOutputTypeDef,
+ MetricsTypeDef,
+ ReplicationTimeTypeDef,
+ NotificationConfigurationDeprecatedResponseMetadataTypeDef,
+ NotificationConfigurationDeprecatedTypeDef,
+ OwnershipControlsTypeDef,
+ ProgressEventTypeDef,
+ PutBucketRequestPaymentRequestBucketRequestPaymentPutTypeDef,
+ PutBucketRequestPaymentRequestRequestTypeDef,
+ PutBucketVersioningRequestBucketVersioningPutTypeDef,
+ PutBucketVersioningRequestRequestTypeDef,
+ RoutingRuleTypeDef,
+ ServerSideEncryptionRuleTypeDef,
+ SourceSelectionCriteriaTypeDef,
+ StatsEventTypeDef,
+ ListObjectsOutputTypeDef,
+ ListObjectsV2OutputTypeDef,
+ ListObjectVersionsOutputTypeDef,
+ AnalyticsFilterTypeDef,
+ IntelligentTieringFilterTypeDef,
+ LifecycleRuleFilterTypeDef,
+ MetricsFilterTypeDef,
+ ReplicationRuleFilterTypeDef,
+ PutBucketTaggingRequestBucketTaggingPutTypeDef,
+ PutBucketTaggingRequestRequestTypeDef,
+ PutObjectTaggingRequestRequestTypeDef,
+ StorageClassAnalysisDataExportTypeDef,
+ PutBucketCorsRequestBucketCorsPutTypeDef,
+ PutBucketCorsRequestRequestTypeDef,
+ CompleteMultipartUploadRequestMultipartUploadCompleteTypeDef,
+ CompleteMultipartUploadRequestRequestTypeDef,
+ ObjectLockConfigurationTypeDef,
+ DeleteObjectsRequestBucketDeleteObjectsTypeDef,
+ DeleteObjectsRequestRequestTypeDef,
+ NotificationConfigurationFilterTypeDef,
+ GetObjectAttributesOutputTypeDef,
+ AccessControlPolicyTypeDef,
+ GetBucketAclOutputTypeDef,
+ GetObjectAclOutputTypeDef,
+ S3LocationTypeDef,
+ LoggingEnabledResponseMetadataTypeDef,
+ LoggingEnabledTypeDef,
+ ListMultipartUploadsOutputTypeDef,
+ InventoryS3BucketDestinationTypeDef,
+ SelectObjectContentRequestRequestTypeDef,
+ SelectParametersTypeDef,
+ GetBucketLifecycleOutputTypeDef,
+ LifecycleConfigurationTypeDef,
+ DestinationTypeDef,
+ PutBucketNotificationRequestRequestTypeDef,
+ GetBucketOwnershipControlsOutputTypeDef,
+ PutBucketOwnershipControlsRequestRequestTypeDef,
+ GetBucketWebsiteOutputTypeDef,
+ WebsiteConfigurationTypeDef,
+ ServerSideEncryptionConfigurationTypeDef,
+ SelectObjectContentEventStreamTypeDef,
+ IntelligentTieringConfigurationTypeDef,
+ LifecycleRuleTypeDef,
+ MetricsConfigurationTypeDef,
+ StorageClassAnalysisTypeDef,
+ GetObjectLockConfigurationOutputTypeDef,
+ PutObjectLockConfigurationRequestRequestTypeDef,
+ LambdaFunctionConfigurationTypeDef,
+ QueueConfigurationTypeDef,
+ TopicConfigurationTypeDef,
+ PutBucketAclRequestBucketAclPutTypeDef,
+ PutBucketAclRequestRequestTypeDef,
+ PutObjectAclRequestObjectAclPutTypeDef,
+ PutObjectAclRequestRequestTypeDef,
+ OutputLocationTypeDef,
+ BucketLoggingStatusTypeDef,
+ GetBucketLoggingOutputTypeDef,
+ InventoryDestinationTypeDef,
+ PutBucketLifecycleRequestBucketLifecyclePutTypeDef,
+ PutBucketLifecycleRequestRequestTypeDef,
+ ReplicationRuleTypeDef,
+ PutBucketWebsiteRequestBucketWebsitePutTypeDef,
+ PutBucketWebsiteRequestRequestTypeDef,
+ GetBucketEncryptionOutputTypeDef,
+ PutBucketEncryptionRequestRequestTypeDef,
+ SelectObjectContentOutputTypeDef,
+ GetBucketIntelligentTieringConfigurationOutputTypeDef,
+ ListBucketIntelligentTieringConfigurationsOutputTypeDef,
+ PutBucketIntelligentTieringConfigurationRequestRequestTypeDef,
+ BucketLifecycleConfigurationTypeDef,
+ GetBucketLifecycleConfigurationOutputTypeDef,
+ GetBucketMetricsConfigurationOutputTypeDef,
+ ListBucketMetricsConfigurationsOutputTypeDef,
+ PutBucketMetricsConfigurationRequestRequestTypeDef,
+ AnalyticsConfigurationTypeDef,
+ NotificationConfigurationResponseMetadataTypeDef,
+ NotificationConfigurationTypeDef,
+ RestoreRequestTypeDef,
+ PutBucketLoggingRequestBucketLoggingPutTypeDef,
+ PutBucketLoggingRequestRequestTypeDef,
+ InventoryConfigurationTypeDef,
+ ReplicationConfigurationTypeDef,
+ PutBucketLifecycleConfigurationRequestBucketLifecycleConfigurationPutTypeDef,
+ PutBucketLifecycleConfigurationRequestRequestTypeDef,
+ GetBucketAnalyticsConfigurationOutputTypeDef,
+ ListBucketAnalyticsConfigurationsOutputTypeDef,
+ PutBucketAnalyticsConfigurationRequestRequestTypeDef,
+ PutBucketNotificationConfigurationRequestBucketNotificationPutTypeDef,
+ PutBucketNotificationConfigurationRequestRequestTypeDef,
+ RestoreObjectRequestObjectRestoreObjectTypeDef,
+ RestoreObjectRequestObjectSummaryRestoreObjectTypeDef,
+ RestoreObjectRequestRequestTypeDef,
+ GetBucketInventoryConfigurationOutputTypeDef,
+ ListBucketInventoryConfigurationsOutputTypeDef,
+ PutBucketInventoryConfigurationRequestRequestTypeDef,
+ GetBucketReplicationOutputTypeDef,
+ PutBucketReplicationRequestRequestTypeDef,
+)
+
+
+def get_structure() -> AbortIncompleteMultipartUploadTypeDef:
+ return {...}
+```
+
+<a id="how-it-works"></a>
+
+## How it works
+
+Fully automated
+[mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder) carefully
+generates type annotations for each service, patiently waiting for `boto3`
+updates. It delivers drop-in type annotations for you and makes sure that:
+
+- All available `boto3` services are covered.
+- Each public class and method of every `boto3` service gets valid type
+ annotations extracted from `botocore` schemas.
+- Type annotations include up-to-date documentation.
+- Link to documentation is provided for every method.
+- Code is processed by [black](https://github.com/psf/black) and
+ [isort](https://github.com/PyCQA/isort) for readability.
+
+<a id="what's-new"></a>
+
+## What's new
+
+<a id="implemented-features"></a>
+
+### Implemented features
+
+- Fully type annotated `boto3`, `botocore`, `aiobotocore` and `aioboto3`
+ libraries
+- `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs`
+ compatibility
+- `Client`, `ServiceResource`, `Resource`, `Waiter` `Paginator` type
+ annotations for each service
+- Generated `TypeDefs` for each service
+- Generated `Literals` for each service
+- Auto discovery of types for `boto3.client` and `boto3.resource` calls
+- Auto discovery of types for `session.client` and `session.resource` calls
+- Auto discovery of types for `client.get_waiter` and `client.get_paginator`
+ calls
+- Auto discovery of types for `ServiceResource` and `Resource` collections
+- Auto discovery of types for `aiobotocore.Session.create_client` calls
+
+<a id="latest-changes"></a>
+
+### Latest changes
+
+Builder changelog can be found in
+[Releases](https://github.com/youtype/mypy_boto3_builder/releases).
+
+<a id="versioning"></a>
+
+## Versioning
+
+`mypy-boto3-s3` version is the same as related `boto3` version and follows
+[PEP 440](https://www.python.org/dev/peps/pep-0440/) format.
+
+<a id="thank-you"></a>
+
+## Thank you
+
+- [Allie Fitter](https://github.com/alliefitter) for
+ [boto3-type-annotations](https://pypi.org/project/boto3-type-annotations/),
+ this package is based on top of his work
+- [black](https://github.com/psf/black) developers for an awesome formatting
+ tool
+- [Timothy Edmund Crosley](https://github.com/timothycrosley) for
+ [isort](https://github.com/PyCQA/isort) and how flexible it is
+- [mypy](https://github.com/python/mypy) developers for doing all dirty work
+ for us
+- [pyright](https://github.com/microsoft/pyright) team for the new era of typed
+ Python
+
+<a id="documentation"></a>
+
+## Documentation
+
+All services type annotations can be found in
+[boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_s3/)
+
+<a id="support-and-contributing"></a>
+
+## Support and contributing
+
+This package is auto-generated. Please reports any bugs or request new features
+in [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder/issues/)
+repository.
+
+
+%prep
+%autosetup -n mypy-boto3-s3-1.26.104
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-mypy-boto3-s3 -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 1.26.104-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..ad070ef
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+434af71d6b73991f756568fc90512c5a mypy-boto3-s3-1.26.104.tar.gz