%global _empty_manifest_terminate_build 0 Name: python-mypy-boto3-sns Version: 1.26.69 Release: 1 Summary: Type annotations for boto3.SNS 1.26.69 service generated with mypy-boto3-builder 7.12.3 License: MIT License URL: https://github.com/youtype/mypy_boto3_builder Source0: https://mirrors.nju.edu.cn/pypi/web/packages/c3/83/09b3b6f25505178b5ea4f5ab67e4ce08975ea0316346a919752d8dcb8db5/mypy-boto3-sns-1.26.69.tar.gz BuildArch: noarch Requires: python3-typing-extensions %description # mypy-boto3-sns [![PyPI - mypy-boto3-sns](https://img.shields.io/pypi/v/mypy-boto3-sns.svg?color=blue)](https://pypi.org/project/mypy-boto3-sns) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-sns.svg?color=blue)](https://pypi.org/project/mypy-boto3-sns) [![Docs](https://img.shields.io/readthedocs/mypy-boto3-builder.svg?color=blue)](https://mypy-boto3-builder.readthedocs.io/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-sns?color=blue)](https://pypistats.org/packages/mypy-boto3-sns) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.SNS 1.26.69](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sns.html#SNS) 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.12.3](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-sns docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sns/). 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-sns](#mypy-boto3-sns) - [How to install](#how-to-install) - [VSCode extension](#vscode-extension) - [From PyPI with pip](#from-pypi-with-pip) - [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) - [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) ## How to install ### 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 `SNS`. ### From PyPI with pip Install `boto3-stubs` for `SNS` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[sns]' # 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[sns]' # standalone installation python -m pip install mypy-boto3-sns ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-sns ``` ## Usage ### 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[sns]` in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` Both type checking and code completion should now work. No explicit type annotations required, write your `boto3` code as usual. ### PyCharm Install `boto3-stubs-lite[sns]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[sns]'` ``` Both type checking and code completion should now work. Explicit type annotations **are required**. Use `boto3-stubs` package instead for implicit type discovery. ### Emacs - Install `boto3-stubs` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` - 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. ### Sublime Text - Install `boto3-stubs[sns]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` - 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. ### Other IDEs Not tested, but as long as your IDE supports `mypy` or `pyright`, everything should work. ### mypy - Install `mypy`: `python -m pip install mypy` - Install `boto3-stubs[sns]` in your environment: ```bash python -m pip install 'boto3-stubs[sns]'` ``` Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### pyright - Install `pyright`: `npm i -g pyright` - Install `boto3-stubs[sns]` in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` 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. ## Explicit type annotations ### Client annotations `SNSClient` provides annotations for `boto3.client("sns")`. ```python from boto3.session import Session from mypy_boto3_sns import SNSClient client: SNSClient = Session().client("sns") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_sns.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_sns import SNSClient from mypy_boto3_sns.paginator import ( ListEndpointsByPlatformApplicationPaginator, ListOriginationNumbersPaginator, ListPhoneNumbersOptedOutPaginator, ListPlatformApplicationsPaginator, ListSMSSandboxPhoneNumbersPaginator, ListSubscriptionsPaginator, ListSubscriptionsByTopicPaginator, ListTopicsPaginator, ) client: SNSClient = Session().client("sns") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs list_endpoints_by_platform_application_paginator: ListEndpointsByPlatformApplicationPaginator = ( client.get_paginator("list_endpoints_by_platform_application") ) list_origination_numbers_paginator: ListOriginationNumbersPaginator = client.get_paginator( "list_origination_numbers" ) list_phone_numbers_opted_out_paginator: ListPhoneNumbersOptedOutPaginator = client.get_paginator( "list_phone_numbers_opted_out" ) list_platform_applications_paginator: ListPlatformApplicationsPaginator = client.get_paginator( "list_platform_applications" ) list_sms_sandbox_phone_numbers_paginator: ListSMSSandboxPhoneNumbersPaginator = ( client.get_paginator("list_sms_sandbox_phone_numbers") ) list_subscriptions_paginator: ListSubscriptionsPaginator = client.get_paginator( "list_subscriptions" ) list_subscriptions_by_topic_paginator: ListSubscriptionsByTopicPaginator = client.get_paginator( "list_subscriptions_by_topic" ) list_topics_paginator: ListTopicsPaginator = client.get_paginator("list_topics") ``` ### Service Resource annotations `SNSServiceResource` provides annotations for `boto3.resource("sns")`. ```python from boto3.session import Session from mypy_boto3_sns import SNSServiceResource resource: SNSServiceResource = Session().resource("sns") # now resource usage is checked by mypy and IDE should provide code completion ``` ### Other resources annotations `mypy_boto3_sns.service_resource` module contains type annotations for all resources. ```python from boto3.session import Session from mypy_boto3_sns import SNSServiceResource from mypy_boto3_sns.service_resource import ( PlatformApplication, PlatformEndpoint, Subscription, Topic, ) resource: SNSServiceResource = Session().resource("sns") # Explicit type annotations are optional here # Type should be correctly discovered by mypy and IDEs my_platform_application: PlatformApplication = resource.PlatformApplication(...) my_platform_endpoint: PlatformEndpoint = resource.PlatformEndpoint(...) my_subscription: Subscription = resource.Subscription(...) my_topic: Topic = resource.Topic(...) ``` ### Collections annotations `mypy_boto3_sns.service_resource` module contains type annotations for all `SNSServiceResource` collections. ```python from boto3.session import Session from mypy_boto3_sns import SNSServiceResource from mypy_boto3_sns.service_resource import ( ServiceResourcePlatformApplicationsCollection, ServiceResourceSubscriptionsCollection, ServiceResourceTopicsCollection, ) resource: SNSServiceResource = Session().resource("sns") # Explicit type annotations are optional here # Type should be correctly discovered by mypy and IDEs platform_applications: sns_resources.ServiceResourcePlatformApplicationsCollection = ( resource.platform_applications ) subscriptions: sns_resources.ServiceResourceSubscriptionsCollection = resource.subscriptions topics: sns_resources.ServiceResourceTopicsCollection = resource.topics ``` ### Literals `mypy_boto3_sns.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_sns.literals import ( LanguageCodeStringType, ListEndpointsByPlatformApplicationPaginatorName, ListOriginationNumbersPaginatorName, ListPhoneNumbersOptedOutPaginatorName, ListPlatformApplicationsPaginatorName, ListSMSSandboxPhoneNumbersPaginatorName, ListSubscriptionsByTopicPaginatorName, ListSubscriptionsPaginatorName, ListTopicsPaginatorName, NumberCapabilityType, RouteTypeType, SMSSandboxPhoneNumberVerificationStatusType, SNSServiceName, ServiceName, ResourceServiceName, PaginatorName, RegionName, ) def check_value(value: LanguageCodeStringType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_sns.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_sns.type_defs import ( AddPermissionInputRequestTypeDef, AddPermissionInputTopicAddPermissionTypeDef, BatchResultErrorEntryTypeDef, CheckIfPhoneNumberIsOptedOutInputRequestTypeDef, ResponseMetadataTypeDef, ConfirmSubscriptionInputRequestTypeDef, ConfirmSubscriptionInputTopicConfirmSubscriptionTypeDef, CreatePlatformApplicationInputRequestTypeDef, CreatePlatformApplicationInputServiceResourceCreatePlatformApplicationTypeDef, CreatePlatformEndpointInputPlatformApplicationCreatePlatformEndpointTypeDef, CreatePlatformEndpointInputRequestTypeDef, CreateSMSSandboxPhoneNumberInputRequestTypeDef, TagTypeDef, DeleteEndpointInputRequestTypeDef, DeletePlatformApplicationInputRequestTypeDef, DeleteSMSSandboxPhoneNumberInputRequestTypeDef, DeleteTopicInputRequestTypeDef, EndpointTypeDef, GetDataProtectionPolicyInputRequestTypeDef, GetEndpointAttributesInputRequestTypeDef, GetPlatformApplicationAttributesInputRequestTypeDef, GetSMSAttributesInputRequestTypeDef, GetSubscriptionAttributesInputRequestTypeDef, GetTopicAttributesInputRequestTypeDef, PaginatorConfigTypeDef, ListEndpointsByPlatformApplicationInputRequestTypeDef, ListOriginationNumbersRequestRequestTypeDef, PhoneNumberInformationTypeDef, ListPhoneNumbersOptedOutInputRequestTypeDef, ListPlatformApplicationsInputRequestTypeDef, PlatformApplicationTypeDef, ListSMSSandboxPhoneNumbersInputRequestTypeDef, SMSSandboxPhoneNumberTypeDef, ListSubscriptionsByTopicInputRequestTypeDef, SubscriptionTypeDef, ListSubscriptionsInputRequestTypeDef, ListTagsForResourceRequestRequestTypeDef, ListTopicsInputRequestTypeDef, TopicTypeDef, MessageAttributeValueTypeDef, OptInPhoneNumberInputRequestTypeDef, PublishBatchResultEntryTypeDef, PutDataProtectionPolicyInputRequestTypeDef, RemovePermissionInputRequestTypeDef, RemovePermissionInputTopicRemovePermissionTypeDef, ServiceResourcePlatformApplicationRequestTypeDef, ServiceResourcePlatformEndpointRequestTypeDef, ServiceResourceSubscriptionRequestTypeDef, ServiceResourceTopicRequestTypeDef, SetEndpointAttributesInputPlatformEndpointSetAttributesTypeDef, SetEndpointAttributesInputRequestTypeDef, SetPlatformApplicationAttributesInputPlatformApplicationSetAttributesTypeDef, SetPlatformApplicationAttributesInputRequestTypeDef, SetSMSAttributesInputRequestTypeDef, SetSubscriptionAttributesInputRequestTypeDef, SetSubscriptionAttributesInputSubscriptionSetAttributesTypeDef, SetTopicAttributesInputRequestTypeDef, SetTopicAttributesInputTopicSetAttributesTypeDef, SubscribeInputRequestTypeDef, SubscribeInputTopicSubscribeTypeDef, UnsubscribeInputRequestTypeDef, UntagResourceRequestRequestTypeDef, VerifySMSSandboxPhoneNumberInputRequestTypeDef, CheckIfPhoneNumberIsOptedOutResponseTypeDef, ConfirmSubscriptionResponseTypeDef, CreateEndpointResponseTypeDef, CreatePlatformApplicationResponseTypeDef, CreateTopicResponseTypeDef, EmptyResponseMetadataTypeDef, GetDataProtectionPolicyResponseTypeDef, GetEndpointAttributesResponseTypeDef, GetPlatformApplicationAttributesResponseTypeDef, GetSMSAttributesResponseTypeDef, GetSMSSandboxAccountStatusResultTypeDef, GetSubscriptionAttributesResponseTypeDef, GetTopicAttributesResponseTypeDef, ListPhoneNumbersOptedOutResponseTypeDef, PublishResponseTypeDef, SubscribeResponseTypeDef, CreateTopicInputRequestTypeDef, CreateTopicInputServiceResourceCreateTopicTypeDef, ListTagsForResourceResponseTypeDef, TagResourceRequestRequestTypeDef, ListEndpointsByPlatformApplicationResponseTypeDef, ListEndpointsByPlatformApplicationInputListEndpointsByPlatformApplicationPaginateTypeDef, ListOriginationNumbersRequestListOriginationNumbersPaginateTypeDef, ListPhoneNumbersOptedOutInputListPhoneNumbersOptedOutPaginateTypeDef, ListPlatformApplicationsInputListPlatformApplicationsPaginateTypeDef, ListSMSSandboxPhoneNumbersInputListSMSSandboxPhoneNumbersPaginateTypeDef, ListSubscriptionsByTopicInputListSubscriptionsByTopicPaginateTypeDef, ListSubscriptionsInputListSubscriptionsPaginateTypeDef, ListTopicsInputListTopicsPaginateTypeDef, ListOriginationNumbersResultTypeDef, ListPlatformApplicationsResponseTypeDef, ListSMSSandboxPhoneNumbersResultTypeDef, ListSubscriptionsByTopicResponseTypeDef, ListSubscriptionsResponseTypeDef, ListTopicsResponseTypeDef, PublishBatchRequestEntryTypeDef, PublishInputPlatformEndpointPublishTypeDef, PublishInputRequestTypeDef, PublishInputTopicPublishTypeDef, PublishBatchResponseTypeDef, PublishBatchInputRequestTypeDef, ) def get_structure() -> AddPermissionInputRequestTypeDef: return {...} ``` ## 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 a 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 the documentation (blame `botocore` docs if types are incorrect). - 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. ## What's new ### Implemented features - Fully type annotated `boto3`, `botocore` and `aiobotocore` 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.session` calls - Auto discovery of types for `session.client` and `session.session` 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 ### Latest changes Builder changelog can be found in [Releases](https://github.com/youtype/mypy_boto3_builder/releases). ## Versioning `mypy-boto3-sns` version is the same as related `boto3` version and follows [PEP 440](https://www.python.org/dev/peps/pep-0440/) format. ## 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 ## Documentation All services type annotations can be found in [boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sns/) ## 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-sns Summary: Type annotations for boto3.SNS 1.26.69 service generated with mypy-boto3-builder 7.12.3 Provides: python-mypy-boto3-sns BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-mypy-boto3-sns # mypy-boto3-sns [![PyPI - mypy-boto3-sns](https://img.shields.io/pypi/v/mypy-boto3-sns.svg?color=blue)](https://pypi.org/project/mypy-boto3-sns) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-sns.svg?color=blue)](https://pypi.org/project/mypy-boto3-sns) [![Docs](https://img.shields.io/readthedocs/mypy-boto3-builder.svg?color=blue)](https://mypy-boto3-builder.readthedocs.io/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-sns?color=blue)](https://pypistats.org/packages/mypy-boto3-sns) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.SNS 1.26.69](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sns.html#SNS) 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.12.3](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-sns docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sns/). 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-sns](#mypy-boto3-sns) - [How to install](#how-to-install) - [VSCode extension](#vscode-extension) - [From PyPI with pip](#from-pypi-with-pip) - [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) - [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) ## How to install ### 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 `SNS`. ### From PyPI with pip Install `boto3-stubs` for `SNS` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[sns]' # 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[sns]' # standalone installation python -m pip install mypy-boto3-sns ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-sns ``` ## Usage ### 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[sns]` in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` Both type checking and code completion should now work. No explicit type annotations required, write your `boto3` code as usual. ### PyCharm Install `boto3-stubs-lite[sns]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[sns]'` ``` Both type checking and code completion should now work. Explicit type annotations **are required**. Use `boto3-stubs` package instead for implicit type discovery. ### Emacs - Install `boto3-stubs` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` - 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. ### Sublime Text - Install `boto3-stubs[sns]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` - 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. ### Other IDEs Not tested, but as long as your IDE supports `mypy` or `pyright`, everything should work. ### mypy - Install `mypy`: `python -m pip install mypy` - Install `boto3-stubs[sns]` in your environment: ```bash python -m pip install 'boto3-stubs[sns]'` ``` Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### pyright - Install `pyright`: `npm i -g pyright` - Install `boto3-stubs[sns]` in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` 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. ## Explicit type annotations ### Client annotations `SNSClient` provides annotations for `boto3.client("sns")`. ```python from boto3.session import Session from mypy_boto3_sns import SNSClient client: SNSClient = Session().client("sns") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_sns.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_sns import SNSClient from mypy_boto3_sns.paginator import ( ListEndpointsByPlatformApplicationPaginator, ListOriginationNumbersPaginator, ListPhoneNumbersOptedOutPaginator, ListPlatformApplicationsPaginator, ListSMSSandboxPhoneNumbersPaginator, ListSubscriptionsPaginator, ListSubscriptionsByTopicPaginator, ListTopicsPaginator, ) client: SNSClient = Session().client("sns") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs list_endpoints_by_platform_application_paginator: ListEndpointsByPlatformApplicationPaginator = ( client.get_paginator("list_endpoints_by_platform_application") ) list_origination_numbers_paginator: ListOriginationNumbersPaginator = client.get_paginator( "list_origination_numbers" ) list_phone_numbers_opted_out_paginator: ListPhoneNumbersOptedOutPaginator = client.get_paginator( "list_phone_numbers_opted_out" ) list_platform_applications_paginator: ListPlatformApplicationsPaginator = client.get_paginator( "list_platform_applications" ) list_sms_sandbox_phone_numbers_paginator: ListSMSSandboxPhoneNumbersPaginator = ( client.get_paginator("list_sms_sandbox_phone_numbers") ) list_subscriptions_paginator: ListSubscriptionsPaginator = client.get_paginator( "list_subscriptions" ) list_subscriptions_by_topic_paginator: ListSubscriptionsByTopicPaginator = client.get_paginator( "list_subscriptions_by_topic" ) list_topics_paginator: ListTopicsPaginator = client.get_paginator("list_topics") ``` ### Service Resource annotations `SNSServiceResource` provides annotations for `boto3.resource("sns")`. ```python from boto3.session import Session from mypy_boto3_sns import SNSServiceResource resource: SNSServiceResource = Session().resource("sns") # now resource usage is checked by mypy and IDE should provide code completion ``` ### Other resources annotations `mypy_boto3_sns.service_resource` module contains type annotations for all resources. ```python from boto3.session import Session from mypy_boto3_sns import SNSServiceResource from mypy_boto3_sns.service_resource import ( PlatformApplication, PlatformEndpoint, Subscription, Topic, ) resource: SNSServiceResource = Session().resource("sns") # Explicit type annotations are optional here # Type should be correctly discovered by mypy and IDEs my_platform_application: PlatformApplication = resource.PlatformApplication(...) my_platform_endpoint: PlatformEndpoint = resource.PlatformEndpoint(...) my_subscription: Subscription = resource.Subscription(...) my_topic: Topic = resource.Topic(...) ``` ### Collections annotations `mypy_boto3_sns.service_resource` module contains type annotations for all `SNSServiceResource` collections. ```python from boto3.session import Session from mypy_boto3_sns import SNSServiceResource from mypy_boto3_sns.service_resource import ( ServiceResourcePlatformApplicationsCollection, ServiceResourceSubscriptionsCollection, ServiceResourceTopicsCollection, ) resource: SNSServiceResource = Session().resource("sns") # Explicit type annotations are optional here # Type should be correctly discovered by mypy and IDEs platform_applications: sns_resources.ServiceResourcePlatformApplicationsCollection = ( resource.platform_applications ) subscriptions: sns_resources.ServiceResourceSubscriptionsCollection = resource.subscriptions topics: sns_resources.ServiceResourceTopicsCollection = resource.topics ``` ### Literals `mypy_boto3_sns.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_sns.literals import ( LanguageCodeStringType, ListEndpointsByPlatformApplicationPaginatorName, ListOriginationNumbersPaginatorName, ListPhoneNumbersOptedOutPaginatorName, ListPlatformApplicationsPaginatorName, ListSMSSandboxPhoneNumbersPaginatorName, ListSubscriptionsByTopicPaginatorName, ListSubscriptionsPaginatorName, ListTopicsPaginatorName, NumberCapabilityType, RouteTypeType, SMSSandboxPhoneNumberVerificationStatusType, SNSServiceName, ServiceName, ResourceServiceName, PaginatorName, RegionName, ) def check_value(value: LanguageCodeStringType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_sns.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_sns.type_defs import ( AddPermissionInputRequestTypeDef, AddPermissionInputTopicAddPermissionTypeDef, BatchResultErrorEntryTypeDef, CheckIfPhoneNumberIsOptedOutInputRequestTypeDef, ResponseMetadataTypeDef, ConfirmSubscriptionInputRequestTypeDef, ConfirmSubscriptionInputTopicConfirmSubscriptionTypeDef, CreatePlatformApplicationInputRequestTypeDef, CreatePlatformApplicationInputServiceResourceCreatePlatformApplicationTypeDef, CreatePlatformEndpointInputPlatformApplicationCreatePlatformEndpointTypeDef, CreatePlatformEndpointInputRequestTypeDef, CreateSMSSandboxPhoneNumberInputRequestTypeDef, TagTypeDef, DeleteEndpointInputRequestTypeDef, DeletePlatformApplicationInputRequestTypeDef, DeleteSMSSandboxPhoneNumberInputRequestTypeDef, DeleteTopicInputRequestTypeDef, EndpointTypeDef, GetDataProtectionPolicyInputRequestTypeDef, GetEndpointAttributesInputRequestTypeDef, GetPlatformApplicationAttributesInputRequestTypeDef, GetSMSAttributesInputRequestTypeDef, GetSubscriptionAttributesInputRequestTypeDef, GetTopicAttributesInputRequestTypeDef, PaginatorConfigTypeDef, ListEndpointsByPlatformApplicationInputRequestTypeDef, ListOriginationNumbersRequestRequestTypeDef, PhoneNumberInformationTypeDef, ListPhoneNumbersOptedOutInputRequestTypeDef, ListPlatformApplicationsInputRequestTypeDef, PlatformApplicationTypeDef, ListSMSSandboxPhoneNumbersInputRequestTypeDef, SMSSandboxPhoneNumberTypeDef, ListSubscriptionsByTopicInputRequestTypeDef, SubscriptionTypeDef, ListSubscriptionsInputRequestTypeDef, ListTagsForResourceRequestRequestTypeDef, ListTopicsInputRequestTypeDef, TopicTypeDef, MessageAttributeValueTypeDef, OptInPhoneNumberInputRequestTypeDef, PublishBatchResultEntryTypeDef, PutDataProtectionPolicyInputRequestTypeDef, RemovePermissionInputRequestTypeDef, RemovePermissionInputTopicRemovePermissionTypeDef, ServiceResourcePlatformApplicationRequestTypeDef, ServiceResourcePlatformEndpointRequestTypeDef, ServiceResourceSubscriptionRequestTypeDef, ServiceResourceTopicRequestTypeDef, SetEndpointAttributesInputPlatformEndpointSetAttributesTypeDef, SetEndpointAttributesInputRequestTypeDef, SetPlatformApplicationAttributesInputPlatformApplicationSetAttributesTypeDef, SetPlatformApplicationAttributesInputRequestTypeDef, SetSMSAttributesInputRequestTypeDef, SetSubscriptionAttributesInputRequestTypeDef, SetSubscriptionAttributesInputSubscriptionSetAttributesTypeDef, SetTopicAttributesInputRequestTypeDef, SetTopicAttributesInputTopicSetAttributesTypeDef, SubscribeInputRequestTypeDef, SubscribeInputTopicSubscribeTypeDef, UnsubscribeInputRequestTypeDef, UntagResourceRequestRequestTypeDef, VerifySMSSandboxPhoneNumberInputRequestTypeDef, CheckIfPhoneNumberIsOptedOutResponseTypeDef, ConfirmSubscriptionResponseTypeDef, CreateEndpointResponseTypeDef, CreatePlatformApplicationResponseTypeDef, CreateTopicResponseTypeDef, EmptyResponseMetadataTypeDef, GetDataProtectionPolicyResponseTypeDef, GetEndpointAttributesResponseTypeDef, GetPlatformApplicationAttributesResponseTypeDef, GetSMSAttributesResponseTypeDef, GetSMSSandboxAccountStatusResultTypeDef, GetSubscriptionAttributesResponseTypeDef, GetTopicAttributesResponseTypeDef, ListPhoneNumbersOptedOutResponseTypeDef, PublishResponseTypeDef, SubscribeResponseTypeDef, CreateTopicInputRequestTypeDef, CreateTopicInputServiceResourceCreateTopicTypeDef, ListTagsForResourceResponseTypeDef, TagResourceRequestRequestTypeDef, ListEndpointsByPlatformApplicationResponseTypeDef, ListEndpointsByPlatformApplicationInputListEndpointsByPlatformApplicationPaginateTypeDef, ListOriginationNumbersRequestListOriginationNumbersPaginateTypeDef, ListPhoneNumbersOptedOutInputListPhoneNumbersOptedOutPaginateTypeDef, ListPlatformApplicationsInputListPlatformApplicationsPaginateTypeDef, ListSMSSandboxPhoneNumbersInputListSMSSandboxPhoneNumbersPaginateTypeDef, ListSubscriptionsByTopicInputListSubscriptionsByTopicPaginateTypeDef, ListSubscriptionsInputListSubscriptionsPaginateTypeDef, ListTopicsInputListTopicsPaginateTypeDef, ListOriginationNumbersResultTypeDef, ListPlatformApplicationsResponseTypeDef, ListSMSSandboxPhoneNumbersResultTypeDef, ListSubscriptionsByTopicResponseTypeDef, ListSubscriptionsResponseTypeDef, ListTopicsResponseTypeDef, PublishBatchRequestEntryTypeDef, PublishInputPlatformEndpointPublishTypeDef, PublishInputRequestTypeDef, PublishInputTopicPublishTypeDef, PublishBatchResponseTypeDef, PublishBatchInputRequestTypeDef, ) def get_structure() -> AddPermissionInputRequestTypeDef: return {...} ``` ## 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 a 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 the documentation (blame `botocore` docs if types are incorrect). - 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. ## What's new ### Implemented features - Fully type annotated `boto3`, `botocore` and `aiobotocore` 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.session` calls - Auto discovery of types for `session.client` and `session.session` 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 ### Latest changes Builder changelog can be found in [Releases](https://github.com/youtype/mypy_boto3_builder/releases). ## Versioning `mypy-boto3-sns` version is the same as related `boto3` version and follows [PEP 440](https://www.python.org/dev/peps/pep-0440/) format. ## 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 ## Documentation All services type annotations can be found in [boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sns/) ## 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-sns Provides: python3-mypy-boto3-sns-doc %description help # mypy-boto3-sns [![PyPI - mypy-boto3-sns](https://img.shields.io/pypi/v/mypy-boto3-sns.svg?color=blue)](https://pypi.org/project/mypy-boto3-sns) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-sns.svg?color=blue)](https://pypi.org/project/mypy-boto3-sns) [![Docs](https://img.shields.io/readthedocs/mypy-boto3-builder.svg?color=blue)](https://mypy-boto3-builder.readthedocs.io/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-sns?color=blue)](https://pypistats.org/packages/mypy-boto3-sns) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.SNS 1.26.69](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sns.html#SNS) 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.12.3](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-sns docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sns/). 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-sns](#mypy-boto3-sns) - [How to install](#how-to-install) - [VSCode extension](#vscode-extension) - [From PyPI with pip](#from-pypi-with-pip) - [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) - [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) ## How to install ### 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 `SNS`. ### From PyPI with pip Install `boto3-stubs` for `SNS` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[sns]' # 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[sns]' # standalone installation python -m pip install mypy-boto3-sns ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-sns ``` ## Usage ### 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[sns]` in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` Both type checking and code completion should now work. No explicit type annotations required, write your `boto3` code as usual. ### PyCharm Install `boto3-stubs-lite[sns]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[sns]'` ``` Both type checking and code completion should now work. Explicit type annotations **are required**. Use `boto3-stubs` package instead for implicit type discovery. ### Emacs - Install `boto3-stubs` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` - 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. ### Sublime Text - Install `boto3-stubs[sns]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` - 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. ### Other IDEs Not tested, but as long as your IDE supports `mypy` or `pyright`, everything should work. ### mypy - Install `mypy`: `python -m pip install mypy` - Install `boto3-stubs[sns]` in your environment: ```bash python -m pip install 'boto3-stubs[sns]'` ``` Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### pyright - Install `pyright`: `npm i -g pyright` - Install `boto3-stubs[sns]` in your environment: ```bash python -m pip install 'boto3-stubs[sns]' ``` 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. ## Explicit type annotations ### Client annotations `SNSClient` provides annotations for `boto3.client("sns")`. ```python from boto3.session import Session from mypy_boto3_sns import SNSClient client: SNSClient = Session().client("sns") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_sns.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_sns import SNSClient from mypy_boto3_sns.paginator import ( ListEndpointsByPlatformApplicationPaginator, ListOriginationNumbersPaginator, ListPhoneNumbersOptedOutPaginator, ListPlatformApplicationsPaginator, ListSMSSandboxPhoneNumbersPaginator, ListSubscriptionsPaginator, ListSubscriptionsByTopicPaginator, ListTopicsPaginator, ) client: SNSClient = Session().client("sns") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs list_endpoints_by_platform_application_paginator: ListEndpointsByPlatformApplicationPaginator = ( client.get_paginator("list_endpoints_by_platform_application") ) list_origination_numbers_paginator: ListOriginationNumbersPaginator = client.get_paginator( "list_origination_numbers" ) list_phone_numbers_opted_out_paginator: ListPhoneNumbersOptedOutPaginator = client.get_paginator( "list_phone_numbers_opted_out" ) list_platform_applications_paginator: ListPlatformApplicationsPaginator = client.get_paginator( "list_platform_applications" ) list_sms_sandbox_phone_numbers_paginator: ListSMSSandboxPhoneNumbersPaginator = ( client.get_paginator("list_sms_sandbox_phone_numbers") ) list_subscriptions_paginator: ListSubscriptionsPaginator = client.get_paginator( "list_subscriptions" ) list_subscriptions_by_topic_paginator: ListSubscriptionsByTopicPaginator = client.get_paginator( "list_subscriptions_by_topic" ) list_topics_paginator: ListTopicsPaginator = client.get_paginator("list_topics") ``` ### Service Resource annotations `SNSServiceResource` provides annotations for `boto3.resource("sns")`. ```python from boto3.session import Session from mypy_boto3_sns import SNSServiceResource resource: SNSServiceResource = Session().resource("sns") # now resource usage is checked by mypy and IDE should provide code completion ``` ### Other resources annotations `mypy_boto3_sns.service_resource` module contains type annotations for all resources. ```python from boto3.session import Session from mypy_boto3_sns import SNSServiceResource from mypy_boto3_sns.service_resource import ( PlatformApplication, PlatformEndpoint, Subscription, Topic, ) resource: SNSServiceResource = Session().resource("sns") # Explicit type annotations are optional here # Type should be correctly discovered by mypy and IDEs my_platform_application: PlatformApplication = resource.PlatformApplication(...) my_platform_endpoint: PlatformEndpoint = resource.PlatformEndpoint(...) my_subscription: Subscription = resource.Subscription(...) my_topic: Topic = resource.Topic(...) ``` ### Collections annotations `mypy_boto3_sns.service_resource` module contains type annotations for all `SNSServiceResource` collections. ```python from boto3.session import Session from mypy_boto3_sns import SNSServiceResource from mypy_boto3_sns.service_resource import ( ServiceResourcePlatformApplicationsCollection, ServiceResourceSubscriptionsCollection, ServiceResourceTopicsCollection, ) resource: SNSServiceResource = Session().resource("sns") # Explicit type annotations are optional here # Type should be correctly discovered by mypy and IDEs platform_applications: sns_resources.ServiceResourcePlatformApplicationsCollection = ( resource.platform_applications ) subscriptions: sns_resources.ServiceResourceSubscriptionsCollection = resource.subscriptions topics: sns_resources.ServiceResourceTopicsCollection = resource.topics ``` ### Literals `mypy_boto3_sns.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_sns.literals import ( LanguageCodeStringType, ListEndpointsByPlatformApplicationPaginatorName, ListOriginationNumbersPaginatorName, ListPhoneNumbersOptedOutPaginatorName, ListPlatformApplicationsPaginatorName, ListSMSSandboxPhoneNumbersPaginatorName, ListSubscriptionsByTopicPaginatorName, ListSubscriptionsPaginatorName, ListTopicsPaginatorName, NumberCapabilityType, RouteTypeType, SMSSandboxPhoneNumberVerificationStatusType, SNSServiceName, ServiceName, ResourceServiceName, PaginatorName, RegionName, ) def check_value(value: LanguageCodeStringType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_sns.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_sns.type_defs import ( AddPermissionInputRequestTypeDef, AddPermissionInputTopicAddPermissionTypeDef, BatchResultErrorEntryTypeDef, CheckIfPhoneNumberIsOptedOutInputRequestTypeDef, ResponseMetadataTypeDef, ConfirmSubscriptionInputRequestTypeDef, ConfirmSubscriptionInputTopicConfirmSubscriptionTypeDef, CreatePlatformApplicationInputRequestTypeDef, CreatePlatformApplicationInputServiceResourceCreatePlatformApplicationTypeDef, CreatePlatformEndpointInputPlatformApplicationCreatePlatformEndpointTypeDef, CreatePlatformEndpointInputRequestTypeDef, CreateSMSSandboxPhoneNumberInputRequestTypeDef, TagTypeDef, DeleteEndpointInputRequestTypeDef, DeletePlatformApplicationInputRequestTypeDef, DeleteSMSSandboxPhoneNumberInputRequestTypeDef, DeleteTopicInputRequestTypeDef, EndpointTypeDef, GetDataProtectionPolicyInputRequestTypeDef, GetEndpointAttributesInputRequestTypeDef, GetPlatformApplicationAttributesInputRequestTypeDef, GetSMSAttributesInputRequestTypeDef, GetSubscriptionAttributesInputRequestTypeDef, GetTopicAttributesInputRequestTypeDef, PaginatorConfigTypeDef, ListEndpointsByPlatformApplicationInputRequestTypeDef, ListOriginationNumbersRequestRequestTypeDef, PhoneNumberInformationTypeDef, ListPhoneNumbersOptedOutInputRequestTypeDef, ListPlatformApplicationsInputRequestTypeDef, PlatformApplicationTypeDef, ListSMSSandboxPhoneNumbersInputRequestTypeDef, SMSSandboxPhoneNumberTypeDef, ListSubscriptionsByTopicInputRequestTypeDef, SubscriptionTypeDef, ListSubscriptionsInputRequestTypeDef, ListTagsForResourceRequestRequestTypeDef, ListTopicsInputRequestTypeDef, TopicTypeDef, MessageAttributeValueTypeDef, OptInPhoneNumberInputRequestTypeDef, PublishBatchResultEntryTypeDef, PutDataProtectionPolicyInputRequestTypeDef, RemovePermissionInputRequestTypeDef, RemovePermissionInputTopicRemovePermissionTypeDef, ServiceResourcePlatformApplicationRequestTypeDef, ServiceResourcePlatformEndpointRequestTypeDef, ServiceResourceSubscriptionRequestTypeDef, ServiceResourceTopicRequestTypeDef, SetEndpointAttributesInputPlatformEndpointSetAttributesTypeDef, SetEndpointAttributesInputRequestTypeDef, SetPlatformApplicationAttributesInputPlatformApplicationSetAttributesTypeDef, SetPlatformApplicationAttributesInputRequestTypeDef, SetSMSAttributesInputRequestTypeDef, SetSubscriptionAttributesInputRequestTypeDef, SetSubscriptionAttributesInputSubscriptionSetAttributesTypeDef, SetTopicAttributesInputRequestTypeDef, SetTopicAttributesInputTopicSetAttributesTypeDef, SubscribeInputRequestTypeDef, SubscribeInputTopicSubscribeTypeDef, UnsubscribeInputRequestTypeDef, UntagResourceRequestRequestTypeDef, VerifySMSSandboxPhoneNumberInputRequestTypeDef, CheckIfPhoneNumberIsOptedOutResponseTypeDef, ConfirmSubscriptionResponseTypeDef, CreateEndpointResponseTypeDef, CreatePlatformApplicationResponseTypeDef, CreateTopicResponseTypeDef, EmptyResponseMetadataTypeDef, GetDataProtectionPolicyResponseTypeDef, GetEndpointAttributesResponseTypeDef, GetPlatformApplicationAttributesResponseTypeDef, GetSMSAttributesResponseTypeDef, GetSMSSandboxAccountStatusResultTypeDef, GetSubscriptionAttributesResponseTypeDef, GetTopicAttributesResponseTypeDef, ListPhoneNumbersOptedOutResponseTypeDef, PublishResponseTypeDef, SubscribeResponseTypeDef, CreateTopicInputRequestTypeDef, CreateTopicInputServiceResourceCreateTopicTypeDef, ListTagsForResourceResponseTypeDef, TagResourceRequestRequestTypeDef, ListEndpointsByPlatformApplicationResponseTypeDef, ListEndpointsByPlatformApplicationInputListEndpointsByPlatformApplicationPaginateTypeDef, ListOriginationNumbersRequestListOriginationNumbersPaginateTypeDef, ListPhoneNumbersOptedOutInputListPhoneNumbersOptedOutPaginateTypeDef, ListPlatformApplicationsInputListPlatformApplicationsPaginateTypeDef, ListSMSSandboxPhoneNumbersInputListSMSSandboxPhoneNumbersPaginateTypeDef, ListSubscriptionsByTopicInputListSubscriptionsByTopicPaginateTypeDef, ListSubscriptionsInputListSubscriptionsPaginateTypeDef, ListTopicsInputListTopicsPaginateTypeDef, ListOriginationNumbersResultTypeDef, ListPlatformApplicationsResponseTypeDef, ListSMSSandboxPhoneNumbersResultTypeDef, ListSubscriptionsByTopicResponseTypeDef, ListSubscriptionsResponseTypeDef, ListTopicsResponseTypeDef, PublishBatchRequestEntryTypeDef, PublishInputPlatformEndpointPublishTypeDef, PublishInputRequestTypeDef, PublishInputTopicPublishTypeDef, PublishBatchResponseTypeDef, PublishBatchInputRequestTypeDef, ) def get_structure() -> AddPermissionInputRequestTypeDef: return {...} ``` ## 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 a 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 the documentation (blame `botocore` docs if types are incorrect). - 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. ## What's new ### Implemented features - Fully type annotated `boto3`, `botocore` and `aiobotocore` 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.session` calls - Auto discovery of types for `session.client` and `session.session` 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 ### Latest changes Builder changelog can be found in [Releases](https://github.com/youtype/mypy_boto3_builder/releases). ## Versioning `mypy-boto3-sns` version is the same as related `boto3` version and follows [PEP 440](https://www.python.org/dev/peps/pep-0440/) format. ## 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 ## Documentation All services type annotations can be found in [boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_sns/) ## 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-sns-1.26.69 %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-sns -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Sun Apr 23 2023 Python_Bot - 1.26.69-1 - Package Spec generated