types-boto3-cloudformation 1.36.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. types_boto3_cloudformation-1.36.0/LICENSE +21 -0
  2. types_boto3_cloudformation-1.36.0/PKG-INFO +651 -0
  3. types_boto3_cloudformation-1.36.0/README.md +605 -0
  4. types_boto3_cloudformation-1.36.0/setup.cfg +4 -0
  5. types_boto3_cloudformation-1.36.0/setup.py +54 -0
  6. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/__init__.py +153 -0
  7. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/__init__.pyi +150 -0
  8. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/__main__.py +43 -0
  9. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/client.py +1435 -0
  10. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/client.pyi +1432 -0
  11. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/literals.py +833 -0
  12. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/literals.pyi +831 -0
  13. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/paginator.py +512 -0
  14. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/paginator.pyi +457 -0
  15. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/py.typed +0 -0
  16. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/service_resource.py +549 -0
  17. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/service_resource.pyi +532 -0
  18. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/type_defs.py +2351 -0
  19. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/type_defs.pyi +2101 -0
  20. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/version.py +7 -0
  21. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/waiter.py +186 -0
  22. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation/waiter.pyi +169 -0
  23. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation.egg-info/PKG-INFO +651 -0
  24. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation.egg-info/SOURCES.txt +26 -0
  25. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation.egg-info/dependency_links.txt +1 -0
  26. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation.egg-info/not-zip-safe +1 -0
  27. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation.egg-info/requires.txt +3 -0
  28. types_boto3_cloudformation-1.36.0/types_boto3_cloudformation.egg-info/top_level.txt +1 -0
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Vlad Emelianov
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,651 @@
1
+ Metadata-Version: 2.2
2
+ Name: types-boto3-cloudformation
3
+ Version: 1.36.0
4
+ Summary: Type annotations for boto3 CloudFormation 1.36.0 service generated with mypy-boto3-builder 8.8.0
5
+ Home-page: https://github.com/youtype/mypy_boto3_builder
6
+ Author: Vlad Emelianov
7
+ Author-email: vlad.emelianov.nz@gmail.com
8
+ License: MIT License
9
+ Project-URL: Documentation, https://youtype.github.io/types_boto3_docs/types_boto3_cloudformation/
10
+ Project-URL: Source, https://github.com/youtype/mypy_boto3_builder
11
+ Project-URL: Tracker, https://github.com/youtype/mypy_boto3_builder/issues
12
+ Keywords: boto3 cloudformation boto3-stubs type-annotations mypy typeshed autocomplete
13
+ Classifier: Development Status :: 5 - Production/Stable
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: Environment :: Console
16
+ Classifier: License :: OSI Approved :: MIT License
17
+ Classifier: Natural Language :: English
18
+ Classifier: Operating System :: OS Independent
19
+ Classifier: Programming Language :: Python :: 3
20
+ Classifier: Programming Language :: Python :: 3.8
21
+ Classifier: Programming Language :: Python :: 3.9
22
+ Classifier: Programming Language :: Python :: 3.10
23
+ Classifier: Programming Language :: Python :: 3.11
24
+ Classifier: Programming Language :: Python :: 3.12
25
+ Classifier: Programming Language :: Python :: 3.13
26
+ Classifier: Programming Language :: Python :: 3.14
27
+ Classifier: Programming Language :: Python :: 3 :: Only
28
+ Classifier: Programming Language :: Python :: Implementation :: CPython
29
+ Classifier: Typing :: Stubs Only
30
+ Requires-Python: >=3.8
31
+ Description-Content-Type: text/markdown
32
+ License-File: LICENSE
33
+ Requires-Dist: typing-extensions; python_version < "3.12"
34
+ Dynamic: author
35
+ Dynamic: author-email
36
+ Dynamic: classifier
37
+ Dynamic: description
38
+ Dynamic: description-content-type
39
+ Dynamic: home-page
40
+ Dynamic: keywords
41
+ Dynamic: license
42
+ Dynamic: project-url
43
+ Dynamic: requires-dist
44
+ Dynamic: requires-python
45
+ Dynamic: summary
46
+
47
+ <a id="types-boto3-cloudformation"></a>
48
+
49
+ # types-boto3-cloudformation
50
+
51
+ [![PyPI - types-boto3-cloudformation](https://img.shields.io/pypi/v/types-boto3-cloudformation.svg?color=blue)](https://pypi.org/project/types-boto3-cloudformation/)
52
+ [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/types-boto3-cloudformation.svg?color=blue)](https://pypi.org/project/types-boto3-cloudformation/)
53
+ [![Docs](https://img.shields.io/readthedocs/boto3-stubs.svg?color=blue)](https://youtype.github.io/types_boto3_docs/)
54
+ [![PyPI - Downloads](https://static.pepy.tech/badge/types-boto3-cloudformation)](https://pypistats.org/packages/types-boto3-cloudformation)
55
+
56
+ ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png)
57
+
58
+ Type annotations for
59
+ [boto3 CloudFormation 1.36.0](https://pypi.org/project/boto3/) compatible with
60
+ [VSCode](https://code.visualstudio.com/),
61
+ [PyCharm](https://www.jetbrains.com/pycharm/),
62
+ [Emacs](https://www.gnu.org/software/emacs/),
63
+ [Sublime Text](https://www.sublimetext.com/),
64
+ [mypy](https://github.com/python/mypy),
65
+ [pyright](https://github.com/microsoft/pyright) and other tools.
66
+
67
+ Generated with
68
+ [mypy-boto3-builder 8.8.0](https://github.com/youtype/mypy_boto3_builder).
69
+
70
+ More information can be found on
71
+ [types-boto3](https://pypi.org/project/types-boto3/) page and in
72
+ [types-boto3-cloudformation docs](https://youtype.github.io/types_boto3_docs/types_boto3_cloudformation/).
73
+
74
+ See how it helps you find and fix potential bugs:
75
+
76
+ ![types-boto3 demo](https://github.com/youtype/mypy_boto3_builder/raw/main/demo.gif)
77
+
78
+ - [types-boto3-cloudformation](#types-boto3-cloudformation)
79
+ - [How to install](#how-to-install)
80
+ - [Generate locally (recommended)](<#generate-locally-(recommended)>)
81
+ - [VSCode extension](#vscode-extension)
82
+ - [From PyPI with pip](#from-pypi-with-pip)
83
+ - [How to uninstall](#how-to-uninstall)
84
+ - [Usage](#usage)
85
+ - [VSCode](#vscode)
86
+ - [PyCharm](#pycharm)
87
+ - [Emacs](#emacs)
88
+ - [Sublime Text](#sublime-text)
89
+ - [Other IDEs](#other-ides)
90
+ - [mypy](#mypy)
91
+ - [pyright](#pyright)
92
+ - [Pylint compatibility](#pylint-compatibility)
93
+ - [Explicit type annotations](#explicit-type-annotations)
94
+ - [Client annotations](#client-annotations)
95
+ - [Paginators annotations](#paginators-annotations)
96
+ - [Waiters annotations](#waiters-annotations)
97
+ - [Service Resource annotations](#service-resource-annotations)
98
+ - [Other resources annotations](#other-resources-annotations)
99
+ - [Collections annotations](#collections-annotations)
100
+ - [Literals](#literals)
101
+ - [Type definitions](#type-definitions)
102
+ - [How it works](#how-it-works)
103
+ - [What's new](#what's-new)
104
+ - [Implemented features](#implemented-features)
105
+ - [Latest changes](#latest-changes)
106
+ - [Versioning](#versioning)
107
+ - [Thank you](#thank-you)
108
+ - [Documentation](#documentation)
109
+ - [Support and contributing](#support-and-contributing)
110
+
111
+ <a id="how-to-install"></a>
112
+
113
+ ## How to install
114
+
115
+ <a id="generate-locally-(recommended)"></a>
116
+
117
+ ### Generate locally (recommended)
118
+
119
+ You can generate type annotations for `boto3` package locally with
120
+ `mypy_boto3_builder`. Use
121
+ [uv](https://docs.astral.sh/uv/getting-started/installation/) for build
122
+ isolation.
123
+
124
+ 1. Run mypy-boto3-builder in your package root directory:
125
+ `uvx --with 'boto3==1.36.0' mypy_boto3_builder`
126
+ 2. Select `boto3` AWS SDK.
127
+ 3. Add `CloudFormation` service.
128
+ 4. Use provided commands to install generated packages.
129
+
130
+ <a id="vscode-extension"></a>
131
+
132
+ ### VSCode extension
133
+
134
+ Add
135
+ [AWS Boto3](https://marketplace.visualstudio.com/items?itemName=Boto3typed.boto3-ide)
136
+ extension to your VSCode and run `AWS boto3: Quick Start` command.
137
+
138
+ Click `Modify` and select `boto3 common` and `CloudFormation`.
139
+
140
+ <a id="from-pypi-with-pip"></a>
141
+
142
+ ### From PyPI with pip
143
+
144
+ Install `types-boto3` for `CloudFormation` service.
145
+
146
+ ```bash
147
+ # install with boto3 type annotations
148
+ python -m pip install 'types-boto3[cloudformation]'
149
+
150
+ # Lite version does not provide session.client/resource overloads
151
+ # it is more RAM-friendly, but requires explicit type annotations
152
+ python -m pip install 'types-boto3-lite[cloudformation]'
153
+
154
+ # standalone installation
155
+ python -m pip install types-boto3-cloudformation
156
+ ```
157
+
158
+ <a id="how-to-uninstall"></a>
159
+
160
+ ## How to uninstall
161
+
162
+ ```bash
163
+ python -m pip uninstall -y types-boto3-cloudformation
164
+ ```
165
+
166
+ <a id="usage"></a>
167
+
168
+ ## Usage
169
+
170
+ <a id="vscode"></a>
171
+
172
+ ### VSCode
173
+
174
+ - Install
175
+ [Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
176
+ - Install
177
+ [Pylance extension](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance)
178
+ - Set `Pylance` as your Python Language Server
179
+ - Install `types-boto3[cloudformation]` in your environment:
180
+
181
+ ```bash
182
+ python -m pip install 'types-boto3[cloudformation]'
183
+ ```
184
+
185
+ Both type checking and code completion should now work. No explicit type
186
+ annotations required, write your `boto3` code as usual.
187
+
188
+ <a id="pycharm"></a>
189
+
190
+ ### PyCharm
191
+
192
+ > ⚠️ Due to slow PyCharm performance on `Literal` overloads (issue
193
+ > [PY-40997](https://youtrack.jetbrains.com/issue/PY-40997)), it is recommended
194
+ > to use [types-boto3-lite](https://pypi.org/project/types-boto3-lite/) until
195
+ > the issue is resolved.
196
+
197
+ > ⚠️ If you experience slow performance and high CPU usage, try to disable
198
+ > `PyCharm` type checker and use [mypy](https://github.com/python/mypy) or
199
+ > [pyright](https://github.com/microsoft/pyright) instead.
200
+
201
+ > ⚠️ To continue using `PyCharm` type checker, you can try to replace
202
+ > `types-boto3` with
203
+ > [types-boto3-lite](https://pypi.org/project/types-boto3-lite/):
204
+
205
+ ```bash
206
+ pip uninstall types-boto3
207
+ pip install types-boto3-lite
208
+ ```
209
+
210
+ Install `types-boto3[cloudformation]` in your environment:
211
+
212
+ ```bash
213
+ python -m pip install 'types-boto3[cloudformation]'
214
+ ```
215
+
216
+ Both type checking and code completion should now work.
217
+
218
+ <a id="emacs"></a>
219
+
220
+ ### Emacs
221
+
222
+ - Install `types-boto3` with services you use in your environment:
223
+
224
+ ```bash
225
+ python -m pip install 'types-boto3[cloudformation]'
226
+ ```
227
+
228
+ - Install [use-package](https://github.com/jwiegley/use-package),
229
+ [lsp](https://github.com/emacs-lsp/lsp-mode/),
230
+ [company](https://github.com/company-mode/company-mode) and
231
+ [flycheck](https://github.com/flycheck/flycheck) packages
232
+ - Install [lsp-pyright](https://github.com/emacs-lsp/lsp-pyright) package
233
+
234
+ ```elisp
235
+ (use-package lsp-pyright
236
+ :ensure t
237
+ :hook (python-mode . (lambda ()
238
+ (require 'lsp-pyright)
239
+ (lsp))) ; or lsp-deferred
240
+ :init (when (executable-find "python3")
241
+ (setq lsp-pyright-python-executable-cmd "python3"))
242
+ )
243
+ ```
244
+
245
+ - Make sure emacs uses the environment where you have installed `types-boto3`
246
+
247
+ Type checking should now work. No explicit type annotations required, write
248
+ your `boto3` code as usual.
249
+
250
+ <a id="sublime-text"></a>
251
+
252
+ ### Sublime Text
253
+
254
+ - Install `types-boto3[cloudformation]` with services you use in your
255
+ environment:
256
+
257
+ ```bash
258
+ python -m pip install 'types-boto3[cloudformation]'
259
+ ```
260
+
261
+ - Install [LSP-pyright](https://github.com/sublimelsp/LSP-pyright) package
262
+
263
+ Type checking should now work. No explicit type annotations required, write
264
+ your `boto3` code as usual.
265
+
266
+ <a id="other-ides"></a>
267
+
268
+ ### Other IDEs
269
+
270
+ Not tested, but as long as your IDE supports `mypy` or `pyright`, everything
271
+ should work.
272
+
273
+ <a id="mypy"></a>
274
+
275
+ ### mypy
276
+
277
+ - Install `mypy`: `python -m pip install mypy`
278
+ - Install `types-boto3[cloudformation]` in your environment:
279
+
280
+ ```bash
281
+ python -m pip install 'types-boto3[cloudformation]'
282
+ ```
283
+
284
+ Type checking should now work. No explicit type annotations required, write
285
+ your `boto3` code as usual.
286
+
287
+ <a id="pyright"></a>
288
+
289
+ ### pyright
290
+
291
+ - Install `pyright`: `npm i -g pyright`
292
+ - Install `types-boto3[cloudformation]` in your environment:
293
+
294
+ ```bash
295
+ python -m pip install 'types-boto3[cloudformation]'
296
+ ```
297
+
298
+ Optionally, you can install `types-boto3` to `typings` directory.
299
+
300
+ Type checking should now work. No explicit type annotations required, write
301
+ your `boto3` code as usual.
302
+
303
+ <a id="pylint-compatibility"></a>
304
+
305
+ ### Pylint compatibility
306
+
307
+ It is totally safe to use `TYPE_CHECKING` flag in order to avoid
308
+ `types-boto3-cloudformation` dependency in production. However, there is an
309
+ issue in `pylint` that it complains about undefined variables. To fix it, set
310
+ all types to `object` in non-`TYPE_CHECKING` mode.
311
+
312
+ ```python
313
+ from typing import TYPE_CHECKING
314
+
315
+ if TYPE_CHECKING:
316
+ from types_boto3_ec2 import EC2Client, EC2ServiceResource
317
+ from types_boto3_ec2.waiters import BundleTaskCompleteWaiter
318
+ from types_boto3_ec2.paginators import DescribeVolumesPaginator
319
+ else:
320
+ EC2Client = object
321
+ EC2ServiceResource = object
322
+ BundleTaskCompleteWaiter = object
323
+ DescribeVolumesPaginator = object
324
+
325
+ ...
326
+ ```
327
+
328
+ <a id="explicit-type-annotations"></a>
329
+
330
+ ## Explicit type annotations
331
+
332
+ <a id="client-annotations"></a>
333
+
334
+ ### Client annotations
335
+
336
+ `CloudFormationClient` provides annotations for
337
+ `boto3.client("cloudformation")`.
338
+
339
+ ```python
340
+ from boto3.session import Session
341
+
342
+ from types_boto3_cloudformation import CloudFormationClient
343
+
344
+ client: CloudFormationClient = Session().client("cloudformation")
345
+
346
+ # now client usage is checked by mypy and IDE should provide code completion
347
+ ```
348
+
349
+ <a id="paginators-annotations"></a>
350
+
351
+ ### Paginators annotations
352
+
353
+ `types_boto3_cloudformation.paginator` module contains type annotations for all
354
+ paginators.
355
+
356
+ ```python
357
+ from boto3.session import Session
358
+
359
+ from types_boto3_cloudformation import CloudFormationClient
360
+ from types_boto3_cloudformation.paginator import (
361
+ DescribeAccountLimitsPaginator,
362
+ DescribeChangeSetPaginator,
363
+ DescribeStackEventsPaginator,
364
+ DescribeStacksPaginator,
365
+ ListChangeSetsPaginator,
366
+ ListExportsPaginator,
367
+ ListGeneratedTemplatesPaginator,
368
+ ListImportsPaginator,
369
+ ListResourceScanRelatedResourcesPaginator,
370
+ ListResourceScanResourcesPaginator,
371
+ ListResourceScansPaginator,
372
+ ListStackInstancesPaginator,
373
+ ListStackResourcesPaginator,
374
+ ListStackSetOperationResultsPaginator,
375
+ ListStackSetOperationsPaginator,
376
+ ListStackSetsPaginator,
377
+ ListStacksPaginator,
378
+ ListTypesPaginator,
379
+ )
380
+
381
+ client: CloudFormationClient = Session().client("cloudformation")
382
+
383
+ # Explicit type annotations are optional here
384
+ # Types should be correctly discovered by mypy and IDEs
385
+ describe_account_limits_paginator: DescribeAccountLimitsPaginator = client.get_paginator(
386
+ "describe_account_limits"
387
+ )
388
+ describe_change_set_paginator: DescribeChangeSetPaginator = client.get_paginator(
389
+ "describe_change_set"
390
+ )
391
+ describe_stack_events_paginator: DescribeStackEventsPaginator = client.get_paginator(
392
+ "describe_stack_events"
393
+ )
394
+ describe_stacks_paginator: DescribeStacksPaginator = client.get_paginator("describe_stacks")
395
+ list_change_sets_paginator: ListChangeSetsPaginator = client.get_paginator("list_change_sets")
396
+ list_exports_paginator: ListExportsPaginator = client.get_paginator("list_exports")
397
+ list_generated_templates_paginator: ListGeneratedTemplatesPaginator = client.get_paginator(
398
+ "list_generated_templates"
399
+ )
400
+ list_imports_paginator: ListImportsPaginator = client.get_paginator("list_imports")
401
+ list_resource_scan_related_resources_paginator: ListResourceScanRelatedResourcesPaginator = (
402
+ client.get_paginator("list_resource_scan_related_resources")
403
+ )
404
+ list_resource_scan_resources_paginator: ListResourceScanResourcesPaginator = client.get_paginator(
405
+ "list_resource_scan_resources"
406
+ )
407
+ list_resource_scans_paginator: ListResourceScansPaginator = client.get_paginator(
408
+ "list_resource_scans"
409
+ )
410
+ list_stack_instances_paginator: ListStackInstancesPaginator = client.get_paginator(
411
+ "list_stack_instances"
412
+ )
413
+ list_stack_resources_paginator: ListStackResourcesPaginator = client.get_paginator(
414
+ "list_stack_resources"
415
+ )
416
+ list_stack_set_operation_results_paginator: ListStackSetOperationResultsPaginator = (
417
+ client.get_paginator("list_stack_set_operation_results")
418
+ )
419
+ list_stack_set_operations_paginator: ListStackSetOperationsPaginator = client.get_paginator(
420
+ "list_stack_set_operations"
421
+ )
422
+ list_stack_sets_paginator: ListStackSetsPaginator = client.get_paginator("list_stack_sets")
423
+ list_stacks_paginator: ListStacksPaginator = client.get_paginator("list_stacks")
424
+ list_types_paginator: ListTypesPaginator = client.get_paginator("list_types")
425
+ ```
426
+
427
+ <a id="waiters-annotations"></a>
428
+
429
+ ### Waiters annotations
430
+
431
+ `types_boto3_cloudformation.waiter` module contains type annotations for all
432
+ waiters.
433
+
434
+ ```python
435
+ from boto3.session import Session
436
+
437
+ from types_boto3_cloudformation import CloudFormationClient
438
+ from types_boto3_cloudformation.waiter import (
439
+ ChangeSetCreateCompleteWaiter,
440
+ StackCreateCompleteWaiter,
441
+ StackDeleteCompleteWaiter,
442
+ StackExistsWaiter,
443
+ StackImportCompleteWaiter,
444
+ StackRollbackCompleteWaiter,
445
+ StackUpdateCompleteWaiter,
446
+ TypeRegistrationCompleteWaiter,
447
+ )
448
+
449
+ client: CloudFormationClient = Session().client("cloudformation")
450
+
451
+ # Explicit type annotations are optional here
452
+ # Types should be correctly discovered by mypy and IDEs
453
+ change_set_create_complete_waiter: ChangeSetCreateCompleteWaiter = client.get_waiter(
454
+ "change_set_create_complete"
455
+ )
456
+ stack_create_complete_waiter: StackCreateCompleteWaiter = client.get_waiter("stack_create_complete")
457
+ stack_delete_complete_waiter: StackDeleteCompleteWaiter = client.get_waiter("stack_delete_complete")
458
+ stack_exists_waiter: StackExistsWaiter = client.get_waiter("stack_exists")
459
+ stack_import_complete_waiter: StackImportCompleteWaiter = client.get_waiter("stack_import_complete")
460
+ stack_rollback_complete_waiter: StackRollbackCompleteWaiter = client.get_waiter(
461
+ "stack_rollback_complete"
462
+ )
463
+ stack_update_complete_waiter: StackUpdateCompleteWaiter = client.get_waiter("stack_update_complete")
464
+ type_registration_complete_waiter: TypeRegistrationCompleteWaiter = client.get_waiter(
465
+ "type_registration_complete"
466
+ )
467
+ ```
468
+
469
+ <a id="service-resource-annotations"></a>
470
+
471
+ ### Service Resource annotations
472
+
473
+ `CloudFormationServiceResource` provides annotations for
474
+ `boto3.resource("cloudformation")`.
475
+
476
+ ```python
477
+ from boto3.session import Session
478
+
479
+ from types_boto3_cloudformation import CloudFormationServiceResource
480
+
481
+ resource: CloudFormationServiceResource = Session().resource("cloudformation")
482
+
483
+ # now resource usage is checked by mypy and IDE should provide code completion
484
+ ```
485
+
486
+ <a id="other-resources-annotations"></a>
487
+
488
+ ### Other resources annotations
489
+
490
+ `types_boto3_cloudformation.service_resource` module contains type annotations
491
+ for all resources.
492
+
493
+ ```python
494
+ from boto3.session import Session
495
+
496
+ from types_boto3_cloudformation import CloudFormationServiceResource
497
+ from types_boto3_cloudformation.service_resource import (
498
+ Event,
499
+ Stack,
500
+ StackResource,
501
+ StackResourceSummary,
502
+ )
503
+
504
+ resource: CloudFormationServiceResource = Session().resource("cloudformation")
505
+
506
+ # Explicit type annotations are optional here
507
+ # Type should be correctly discovered by mypy and IDEs
508
+ my_event: Event = resource.Event(...)
509
+ my_stack: Stack = resource.Stack(...)
510
+ my_stack_resource: StackResource = resource.StackResource(...)
511
+ my_stack_resource_summary: StackResourceSummary = resource.StackResourceSummary(...)
512
+ ```
513
+
514
+ <a id="collections-annotations"></a>
515
+
516
+ ### Collections annotations
517
+
518
+ `types_boto3_cloudformation.service_resource` module contains type annotations
519
+ for all `CloudFormationServiceResource` collections.
520
+
521
+ ```python
522
+ from boto3.session import Session
523
+
524
+ from types_boto3_cloudformation import CloudFormationServiceResource
525
+ from types_boto3_cloudformation.service_resource import ServiceResourceStacksCollection
526
+
527
+ resource: CloudFormationServiceResource = Session().resource("cloudformation")
528
+
529
+ # Explicit type annotations are optional here
530
+ # Type should be correctly discovered by mypy and IDEs
531
+ stacks: cloudformation_resources.ServiceResourceStacksCollection = resource.stacks
532
+ ```
533
+
534
+ <a id="literals"></a>
535
+
536
+ ### Literals
537
+
538
+ `types_boto3_cloudformation.literals` module contains literals extracted from
539
+ shapes that can be used in user code for type checking.
540
+
541
+ Full list of `CloudFormation` Literals can be found in
542
+ [docs](https://youtype.github.io/types_boto3_docs/types_boto3_cloudformation/literals/).
543
+
544
+ ```python
545
+ from types_boto3_cloudformation.literals import AccountFilterTypeType
546
+
547
+
548
+ def check_value(value: AccountFilterTypeType) -> bool: ...
549
+ ```
550
+
551
+ <a id="type-definitions"></a>
552
+
553
+ ### Type definitions
554
+
555
+ `types_boto3_cloudformation.type_defs` module contains structures and shapes
556
+ assembled to typed dictionaries and unions for additional type checking.
557
+
558
+ Full list of `CloudFormation` TypeDefs can be found in
559
+ [docs](https://youtype.github.io/types_boto3_docs/types_boto3_cloudformation/type_defs/).
560
+
561
+ ```python
562
+ from types_boto3_cloudformation.type_defs import AccountGateResultTypeDef
563
+
564
+
565
+ def get_value() -> AccountGateResultTypeDef:
566
+ return {...}
567
+ ```
568
+
569
+ <a id="how-it-works"></a>
570
+
571
+ ## How it works
572
+
573
+ Fully automated
574
+ [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder) carefully
575
+ generates type annotations for each service, patiently waiting for `boto3`
576
+ updates. It delivers drop-in type annotations for you and makes sure that:
577
+
578
+ - All available `boto3` services are covered.
579
+ - Each public class and method of every `boto3` service gets valid type
580
+ annotations extracted from `botocore` schemas.
581
+ - Type annotations include up-to-date documentation.
582
+ - Link to documentation is provided for every method.
583
+ - Code is processed by [ruff](https://docs.astral.sh/ruff/) for readability.
584
+
585
+ <a id="what's-new"></a>
586
+
587
+ ## What's new
588
+
589
+ <a id="implemented-features"></a>
590
+
591
+ ### Implemented features
592
+
593
+ - Fully type annotated `boto3`, `botocore`, `aiobotocore` and `aioboto3`
594
+ libraries
595
+ - `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs`
596
+ compatibility
597
+ - `Client`, `ServiceResource`, `Resource`, `Waiter` `Paginator` type
598
+ annotations for each service
599
+ - Generated `TypeDefs` for each service
600
+ - Generated `Literals` for each service
601
+ - Auto discovery of types for `boto3.client` and `boto3.resource` calls
602
+ - Auto discovery of types for `session.client` and `session.resource` calls
603
+ - Auto discovery of types for `client.get_waiter` and `client.get_paginator`
604
+ calls
605
+ - Auto discovery of types for `ServiceResource` and `Resource` collections
606
+ - Auto discovery of types for `aiobotocore.Session.create_client` calls
607
+
608
+ <a id="latest-changes"></a>
609
+
610
+ ### Latest changes
611
+
612
+ Builder changelog can be found in
613
+ [Releases](https://github.com/youtype/mypy_boto3_builder/releases).
614
+
615
+ <a id="versioning"></a>
616
+
617
+ ## Versioning
618
+
619
+ `types-boto3-cloudformation` version is the same as related `boto3` version and
620
+ follows [PEP 440](https://www.python.org/dev/peps/pep-0440/) format.
621
+
622
+ <a id="thank-you"></a>
623
+
624
+ ## Thank you
625
+
626
+ - [Allie Fitter](https://github.com/alliefitter) for
627
+ [boto3-type-annotations](https://pypi.org/project/boto3-type-annotations/),
628
+ this package is based on top of his work
629
+ - [black](https://github.com/psf/black) developers for an awesome formatting
630
+ tool
631
+ - [Timothy Edmund Crosley](https://github.com/timothycrosley) for
632
+ [isort](https://github.com/PyCQA/isort) and how flexible it is
633
+ - [mypy](https://github.com/python/mypy) developers for doing all dirty work
634
+ for us
635
+ - [pyright](https://github.com/microsoft/pyright) team for the new era of typed
636
+ Python
637
+
638
+ <a id="documentation"></a>
639
+
640
+ ## Documentation
641
+
642
+ All services type annotations can be found in
643
+ [boto3 docs](https://youtype.github.io/types_boto3_docs/types_boto3_cloudformation/)
644
+
645
+ <a id="support-and-contributing"></a>
646
+
647
+ ## Support and contributing
648
+
649
+ This package is auto-generated. Please reports any bugs or request new features
650
+ in [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder/issues/)
651
+ repository.