Type annotations for boto3.WAF 1.14.22 service, generated by mypy-boto3-buider 2.2.0
Project description
mypy-boto3-waf
Type annotations for boto3.WAF 1.14.22 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 WAF
service.
python -m pip install boto3-stubs[waf]
How to use
Client annotations
WAFClient
provides annotations for boto3.client("waf")
.
import boto3
from mypy_boto3_waf import WAFClient
from mypy_boto3_waf.paginator import (
GetRateBasedRuleManagedKeysPaginator,
ListActivatedRulesInRuleGroupPaginator,
ListByteMatchSetsPaginator,
ListGeoMatchSetsPaginator,
ListIPSetsPaginator,
ListLoggingConfigurationsPaginator,
ListRateBasedRulesPaginator,
ListRegexMatchSetsPaginator,
ListRegexPatternSetsPaginator,
ListRuleGroupsPaginator,
ListRulesPaginator,
ListSizeConstraintSetsPaginator,
ListSqlInjectionMatchSetsPaginator,
ListSubscribedRuleGroupsPaginator,
ListWebACLsPaginator,
ListXssMatchSetsPaginator,
)
from mypy_boto3_waf.type_defs import ActivatedRuleTypeDef, ...
client: WAFClient = boto3.client("waf")
# 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: WAFClient = session.client("waf")
Paginators annotations
mypy_boto3_waf.paginator
module contains type annotations for all paginators.
client: WAFClient = boto3.client("waf")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
# VSCode requires explicit type annotations
get_rate_based_rule_managed_keys_paginator: GetRateBasedRuleManagedKeysPaginator = client.get_paginator("get_rate_based_rule_managed_keys")
list_activated_rules_in_rule_group_paginator: ListActivatedRulesInRuleGroupPaginator = client.get_paginator("list_activated_rules_in_rule_group")
list_byte_match_sets_paginator: ListByteMatchSetsPaginator = client.get_paginator("list_byte_match_sets")
list_geo_match_sets_paginator: ListGeoMatchSetsPaginator = client.get_paginator("list_geo_match_sets")
list_ip_sets_paginator: ListIPSetsPaginator = client.get_paginator("list_ip_sets")
list_logging_configurations_paginator: ListLoggingConfigurationsPaginator = client.get_paginator("list_logging_configurations")
list_rate_based_rules_paginator: ListRateBasedRulesPaginator = client.get_paginator("list_rate_based_rules")
list_regex_match_sets_paginator: ListRegexMatchSetsPaginator = client.get_paginator("list_regex_match_sets")
list_regex_pattern_sets_paginator: ListRegexPatternSetsPaginator = client.get_paginator("list_regex_pattern_sets")
list_rule_groups_paginator: ListRuleGroupsPaginator = client.get_paginator("list_rule_groups")
list_rules_paginator: ListRulesPaginator = client.get_paginator("list_rules")
list_size_constraint_sets_paginator: ListSizeConstraintSetsPaginator = client.get_paginator("list_size_constraint_sets")
list_sql_injection_match_sets_paginator: ListSqlInjectionMatchSetsPaginator = client.get_paginator("list_sql_injection_match_sets")
list_subscribed_rule_groups_paginator: ListSubscribedRuleGroupsPaginator = client.get_paginator("list_subscribed_rule_groups")
list_web_acls_paginator: ListWebACLsPaginator = client.get_paginator("list_web_acls")
list_xss_match_sets_paginator: ListXssMatchSetsPaginator = client.get_paginator("list_xss_match_sets")
Typed dictionations
mypy_boto3_waf.type_defs
module contains structures and shapes assembled
to typed dictionaries for additional type checking.
def get_structure() -> ActivatedRuleTypeDef:
return {
...
}
Dynamic type annotations
mypy_boto3
command generates boto3.client/resource
type annotations for
mypy_boto3_waf
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("waf")
session_client = boto3.Session().client("waf")
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
Hashes for mypy_boto3_waf-1.14.22.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 702c2bc15b9b21677f0d1d07d51b44715083baee9b107f8f2f06b067f7a8c891 |
|
MD5 | c16bc1a35669366dbe6b1cb7446be8ab |
|
BLAKE2b-256 | 45a9be9d1f5e7a2a1d66b6d5df89065b4696b984976a9b3558b9f43288467c7c |