Type annotations for boto3.SNS 1.14.17 service, generated by mypy-boto3-buider 2.2.0
Project description
mypy-boto3-sns
Type annotations for boto3.SNS 1.14.17 service compatible with mypy, VSCode, PyCharm and other tools.
Generated by mypy-boto3-buider 2.2.0.
More information can be found on boto3-stubs page.
How to install
Make sure you have mypy installed and activated in your IDE.
Install boto3-stubs
for SNS
service.
python -m pip install boto3-stubs[sns]
How to use
Client annotations
SNSClient
provides annotations for boto3.client("sns")
.
import boto3
from mypy_boto3_sns import SNSClient, SNSServiceResource
from mypy_boto3_sns.paginator import (
ListEndpointsByPlatformApplicationPaginator,
ListPhoneNumbersOptedOutPaginator,
ListPlatformApplicationsPaginator,
ListSubscriptionsByTopicPaginator,
ListSubscriptionsPaginator,
ListTopicsPaginator,
)
from mypy_boto3_sns.service_resource import (
PlatformApplication,
PlatformEndpoint,
ServiceResourcePlatformApplicationsCollection,
ServiceResourceSubscriptionsCollection,
ServiceResourceTopicsCollection,
Subscription,
Topic,
)
from mypy_boto3_sns.type_defs import EndpointTypeDef, ...
client: SNSClient = boto3.client("sns")
# now client usage is checked by mypy and IDE should provide code auto-complete
# works for session as well
session = boto3.session.Session(region="us-west-1")
session_client: SNSClient = session.client("sns")
Paginators annotations
mypy_boto3_sns.paginator
module contains type annotations for all paginators.
client: SNSClient = boto3.client("sns")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
# VSCode requires explicit type annotations
list_endpoints_by_platform_application_paginator: ListEndpointsByPlatformApplicationPaginator = client.get_paginator("list_endpoints_by_platform_application")
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_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")
.
resource: SNSServiceResource = boto3.resource("sns")
# now resource usage is checked by mypy and IDE should provide code auto-complete
# works for session as well
session = boto3.session.Session(region="us-west-1")
session_resource: SNSServiceResource = session.resource("sns")
Other resources annotations
mypy_boto3_sns.service_resource
module contains type annotations for all resources.
resource: SNSServiceResource = boto3.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.
resource: SNSServiceResource = boto3.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
Typed dictionations
mypy_boto3_sns.type_defs
module contains structures and shapes assembled
to typed dictionaries for additional type checking.
def get_structure() -> EndpointTypeDef:
return {
...
}
Dynamic type annotations
mypy_boto3
command generates boto3.client/resource
type annotations for
mypy_boto3_sns
and other installed services.
# Run this command after you add or remove service packages
python -m mypy_boto3
Generated type annotations provide overloads for boto3.client
and boto3.resource
,
boto3.Session.client
and boto3.Session.resource
functions,
so explicit type annotations are not needed.
mypy
supports function overloads as expectedPyCharm
also supports function overloads, but consumes a lot of RAM, use carefully if you have many services installedVSCode
does not currently support function overloads, use explicit type annotations
# Type is discovered correctly by mypy and PyCharm
# VSCode still needs explicit type annotations
client = boto3.client("sns")
resource = boto3.resource("sns")
session_client = boto3.Session().client("sns")
session_resource = boto3.Session().resource("sns")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file mypy-boto3-sns-1.14.17.0.tar.gz
.
File metadata
- Download URL: mypy-boto3-sns-1.14.17.0.tar.gz
- Upload date:
- Size: 10.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 404cbb9fac2227c245a15164f6eeb48dc99a40a8ff36223392603fbd5ebf5265 |
|
MD5 | a46b1a4c2d248584d6a783dabbcd70eb |
|
BLAKE2b-256 | 96f17757c52cbf0e057b67def23cf9a28e5efec4d5445fface0cb649b11521e5 |
File details
Details for the file mypy_boto3_sns-1.14.17.0-py3-none-any.whl
.
File metadata
- Download URL: mypy_boto3_sns-1.14.17.0-py3-none-any.whl
- Upload date:
- Size: 10.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8fdac265f33b608925e7e53ad2012ad158b530195edd256fb0d0b9c9cf081bd7 |
|
MD5 | 413f9ec137aa48b2066a007c2833ac9f |
|
BLAKE2b-256 | 2be356a70b861866f70869b16a2ec9845433c8fc0c5cec1b0ab9452c871cf584 |