basedpyright 1.12.2 → 1.12.3

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 (236) hide show
  1. package/dist/pyright-langserver.js +1 -1
  2. package/dist/pyright-langserver.js.map +1 -1
  3. package/dist/pyright.js +1 -1
  4. package/dist/pyright.js.map +1 -1
  5. package/dist/typeshed-fallback/README.md +2 -2
  6. package/dist/typeshed-fallback/commit.txt +1 -1
  7. package/dist/typeshed-fallback/stdlib/VERSIONS +1 -1
  8. package/dist/typeshed-fallback/stdlib/_ast.pyi +661 -22
  9. package/dist/typeshed-fallback/stdlib/_ctypes.pyi +1 -1
  10. package/dist/typeshed-fallback/stdlib/_socket.pyi +2 -2
  11. package/dist/typeshed-fallback/stdlib/_stat.pyi +27 -13
  12. package/dist/typeshed-fallback/stdlib/_typeshed/__init__.pyi +2 -0
  13. package/dist/typeshed-fallback/stdlib/_typeshed/importlib.pyi +18 -0
  14. package/dist/typeshed-fallback/stdlib/_weakref.pyi +1 -1
  15. package/dist/typeshed-fallback/stdlib/_weakrefset.pyi +1 -1
  16. package/dist/typeshed-fallback/stdlib/array.pyi +1 -1
  17. package/dist/typeshed-fallback/stdlib/ast.pyi +160 -70
  18. package/dist/typeshed-fallback/stdlib/asyncio/futures.pyi +1 -1
  19. package/dist/typeshed-fallback/stdlib/asyncio/queues.pyi +1 -1
  20. package/dist/typeshed-fallback/stdlib/asyncio/tasks.pyi +1 -1
  21. package/dist/typeshed-fallback/stdlib/atexit.pyi +2 -2
  22. package/dist/typeshed-fallback/stdlib/builtins.pyi +30 -8
  23. package/dist/typeshed-fallback/stdlib/calendar.pyi +29 -29
  24. package/dist/typeshed-fallback/stdlib/code.pyi +27 -8
  25. package/dist/typeshed-fallback/stdlib/concurrent/futures/_base.pyi +1 -1
  26. package/dist/typeshed-fallback/stdlib/concurrent/futures/thread.pyi +1 -1
  27. package/dist/typeshed-fallback/stdlib/contextvars.pyi +2 -2
  28. package/dist/typeshed-fallback/stdlib/csv.pyi +4 -4
  29. package/dist/typeshed-fallback/stdlib/ctypes/__init__.pyi +1 -1
  30. package/dist/typeshed-fallback/stdlib/dataclasses.pyi +1 -1
  31. package/dist/typeshed-fallback/stdlib/dbm/__init__.pyi +9 -2
  32. package/dist/typeshed-fallback/stdlib/dbm/dumb.pyi +7 -1
  33. package/dist/typeshed-fallback/stdlib/dbm/gnu.pyi +5 -2
  34. package/dist/typeshed-fallback/stdlib/dbm/ndbm.pyi +5 -2
  35. package/dist/typeshed-fallback/stdlib/difflib.pyi +1 -1
  36. package/dist/typeshed-fallback/stdlib/dis.pyi +16 -1
  37. package/dist/typeshed-fallback/stdlib/distutils/archive_util.pyi +22 -7
  38. package/dist/typeshed-fallback/stdlib/distutils/ccompiler.pyi +37 -16
  39. package/dist/typeshed-fallback/stdlib/distutils/cmd.pyi +52 -19
  40. package/dist/typeshed-fallback/stdlib/distutils/command/bdist_msi.pyi +4 -4
  41. package/dist/typeshed-fallback/stdlib/distutils/command/build.pyi +4 -2
  42. package/dist/typeshed-fallback/stdlib/distutils/command/build_py.pyi +2 -2
  43. package/dist/typeshed-fallback/stdlib/distutils/command/check.pyi +2 -2
  44. package/dist/typeshed-fallback/stdlib/distutils/command/config.pyi +5 -4
  45. package/dist/typeshed-fallback/stdlib/distutils/command/install.pyi +4 -2
  46. package/dist/typeshed-fallback/stdlib/distutils/command/register.pyi +4 -2
  47. package/dist/typeshed-fallback/stdlib/distutils/command/sdist.pyi +4 -2
  48. package/dist/typeshed-fallback/stdlib/distutils/core.pyi +2 -2
  49. package/dist/typeshed-fallback/stdlib/distutils/dep_util.pyi +14 -3
  50. package/dist/typeshed-fallback/stdlib/distutils/dir_util.pyi +20 -10
  51. package/dist/typeshed-fallback/stdlib/distutils/dist.pyi +8 -5
  52. package/dist/typeshed-fallback/stdlib/distutils/file_util.pyi +35 -11
  53. package/dist/typeshed-fallback/stdlib/distutils/filelist.pyi +11 -3
  54. package/dist/typeshed-fallback/stdlib/distutils/spawn.pyi +5 -1
  55. package/dist/typeshed-fallback/stdlib/distutils/sysconfig.pyi +4 -2
  56. package/dist/typeshed-fallback/stdlib/distutils/text_file.pyi +7 -7
  57. package/dist/typeshed-fallback/stdlib/distutils/util.pyi +9 -5
  58. package/dist/typeshed-fallback/stdlib/faulthandler.pyi +1 -1
  59. package/dist/typeshed-fallback/stdlib/filecmp.pyi +1 -1
  60. package/dist/typeshed-fallback/stdlib/fileinput.pyi +1 -1
  61. package/dist/typeshed-fallback/stdlib/functools.pyi +3 -3
  62. package/dist/typeshed-fallback/stdlib/genericpath.pyi +7 -0
  63. package/dist/typeshed-fallback/stdlib/graphlib.pyi +1 -1
  64. package/dist/typeshed-fallback/stdlib/gzip.pyi +3 -3
  65. package/dist/typeshed-fallback/stdlib/http/__init__.pyi +11 -4
  66. package/dist/typeshed-fallback/stdlib/http/cookies.pyi +1 -1
  67. package/dist/typeshed-fallback/stdlib/importlib/abc.pyi +2 -2
  68. package/dist/typeshed-fallback/stdlib/importlib/util.pyi +3 -2
  69. package/dist/typeshed-fallback/stdlib/inspect.pyi +6 -0
  70. package/dist/typeshed-fallback/stdlib/keyword.pyi +2 -2
  71. package/dist/typeshed-fallback/stdlib/logging/__init__.pyi +69 -42
  72. package/dist/typeshed-fallback/stdlib/mailbox.pyi +2 -2
  73. package/dist/typeshed-fallback/stdlib/marshal.pyi +12 -4
  74. package/dist/typeshed-fallback/stdlib/math.pyi +3 -0
  75. package/dist/typeshed-fallback/stdlib/multiprocessing/managers.pyi +1 -1
  76. package/dist/typeshed-fallback/stdlib/multiprocessing/pool.pyi +1 -1
  77. package/dist/typeshed-fallback/stdlib/multiprocessing/queues.pyi +1 -1
  78. package/dist/typeshed-fallback/stdlib/multiprocessing/shared_memory.pyi +1 -1
  79. package/dist/typeshed-fallback/stdlib/ntpath.pyi +8 -1
  80. package/dist/typeshed-fallback/stdlib/opcode.pyi +6 -2
  81. package/dist/typeshed-fallback/stdlib/optparse.pyi +1 -1
  82. package/dist/typeshed-fallback/stdlib/os/__init__.pyi +1 -1
  83. package/dist/typeshed-fallback/stdlib/pathlib.pyi +6 -2
  84. package/dist/typeshed-fallback/stdlib/pkgutil.pyi +6 -6
  85. package/dist/typeshed-fallback/stdlib/posixpath.pyi +5 -0
  86. package/dist/typeshed-fallback/stdlib/queue.pyi +4 -2
  87. package/dist/typeshed-fallback/stdlib/random.pyi +4 -1
  88. package/dist/typeshed-fallback/stdlib/re.pyi +20 -9
  89. package/dist/typeshed-fallback/stdlib/shelve.pyi +15 -2
  90. package/dist/typeshed-fallback/stdlib/shutil.pyi +38 -8
  91. package/dist/typeshed-fallback/stdlib/signal.pyi +1 -1
  92. package/dist/typeshed-fallback/stdlib/socket.pyi +13 -0
  93. package/dist/typeshed-fallback/stdlib/stat.pyi +6 -0
  94. package/dist/typeshed-fallback/stdlib/statistics.pyi +30 -1
  95. package/dist/typeshed-fallback/stdlib/subprocess.pyi +2 -2
  96. package/dist/typeshed-fallback/stdlib/sys/__init__.pyi +15 -19
  97. package/dist/typeshed-fallback/stdlib/syslog.pyi +9 -0
  98. package/dist/typeshed-fallback/stdlib/tempfile.pyi +7 -3
  99. package/dist/typeshed-fallback/stdlib/threading.pyi +3 -0
  100. package/dist/typeshed-fallback/stdlib/token.pyi +5 -4
  101. package/dist/typeshed-fallback/stdlib/tokenize.pyi +10 -3
  102. package/dist/typeshed-fallback/stdlib/types.pyi +20 -18
  103. package/dist/typeshed-fallback/stdlib/typing.pyi +75 -21
  104. package/dist/typeshed-fallback/stdlib/typing_extensions.pyi +104 -83
  105. package/dist/typeshed-fallback/stdlib/unittest/case.pyi +1 -1
  106. package/dist/typeshed-fallback/stdlib/urllib/parse.pyi +1 -1
  107. package/dist/typeshed-fallback/stdlib/urllib/request.pyi +17 -10
  108. package/dist/typeshed-fallback/stdlib/venv/__init__.pyi +31 -3
  109. package/dist/typeshed-fallback/stdlib/warnings.pyi +13 -1
  110. package/dist/typeshed-fallback/stdlib/wsgiref/util.pyi +2 -0
  111. package/dist/typeshed-fallback/stubs/Pillow/PIL/DdsImagePlugin.pyi +17 -17
  112. package/dist/typeshed-fallback/stubs/Pillow/PIL/Image.pyi +29 -29
  113. package/dist/typeshed-fallback/stubs/Pillow/PIL/WalImageFile.pyi +2 -1
  114. package/dist/typeshed-fallback/stubs/Pillow/PIL/_binary.pyi +13 -13
  115. package/dist/typeshed-fallback/stubs/WebOb/webob/multidict.pyi +8 -3
  116. package/dist/typeshed-fallback/stubs/WebOb/webob/request.pyi +10 -3
  117. package/dist/typeshed-fallback/stubs/antlr4-python3-runtime/antlr4/atn/ATNType.pyi +2 -2
  118. package/dist/typeshed-fallback/stubs/antlr4-python3-runtime/antlr4/atn/LexerAction.pyi +8 -8
  119. package/dist/typeshed-fallback/stubs/antlr4-python3-runtime/antlr4/atn/PredictionMode.pyi +3 -3
  120. package/dist/typeshed-fallback/stubs/assertpy/METADATA.toml +2 -0
  121. package/dist/typeshed-fallback/stubs/assertpy/assertpy/__init__.pyi +12 -0
  122. package/dist/typeshed-fallback/stubs/assertpy/assertpy/assertpy.pyi +70 -0
  123. package/dist/typeshed-fallback/stubs/assertpy/assertpy/base.pyi +21 -0
  124. package/dist/typeshed-fallback/stubs/assertpy/assertpy/collection.pyi +11 -0
  125. package/dist/typeshed-fallback/stubs/assertpy/assertpy/contains.pyi +16 -0
  126. package/dist/typeshed-fallback/stubs/assertpy/assertpy/date.pyi +11 -0
  127. package/dist/typeshed-fallback/stubs/assertpy/assertpy/dict.pyi +12 -0
  128. package/dist/typeshed-fallback/stubs/assertpy/assertpy/dynamic.pyi +7 -0
  129. package/dist/typeshed-fallback/stubs/assertpy/assertpy/exception.pyi +8 -0
  130. package/dist/typeshed-fallback/stubs/assertpy/assertpy/extracting.pyi +7 -0
  131. package/dist/typeshed-fallback/stubs/assertpy/assertpy/file.pyi +15 -0
  132. package/dist/typeshed-fallback/stubs/assertpy/assertpy/helpers.pyi +3 -0
  133. package/dist/typeshed-fallback/stubs/assertpy/assertpy/numeric.pyi +24 -0
  134. package/dist/typeshed-fallback/stubs/assertpy/assertpy/snapshot.pyi +6 -0
  135. package/dist/typeshed-fallback/stubs/assertpy/assertpy/string.pyi +18 -0
  136. package/dist/typeshed-fallback/stubs/beautifulsoup4/bs4/element.pyi +15 -7
  137. package/dist/typeshed-fallback/stubs/docker/docker/api/container.pyi +119 -61
  138. package/dist/typeshed-fallback/stubs/docker/docker/errors.pyi +3 -3
  139. package/dist/typeshed-fallback/stubs/docker/docker/models/containers.pyi +31 -20
  140. package/dist/typeshed-fallback/stubs/docker/docker/utils/json_stream.pyi +16 -8
  141. package/dist/typeshed-fallback/stubs/flake8/METADATA.toml +3 -0
  142. package/dist/typeshed-fallback/stubs/flake8/flake8/__init__.pyi +8 -0
  143. package/dist/typeshed-fallback/stubs/flake8/flake8/_compat.pyi +5 -0
  144. package/dist/typeshed-fallback/stubs/flake8/flake8/api/__init__.pyi +0 -0
  145. package/dist/typeshed-fallback/stubs/flake8/flake8/api/legacy.pyi +27 -0
  146. package/dist/typeshed-fallback/stubs/flake8/flake8/checker.pyi +56 -0
  147. package/dist/typeshed-fallback/stubs/flake8/flake8/defaults.pyi +12 -0
  148. package/dist/typeshed-fallback/stubs/flake8/flake8/discover_files.pyi +8 -0
  149. package/dist/typeshed-fallback/stubs/flake8/flake8/exceptions.pyi +24 -0
  150. package/dist/typeshed-fallback/stubs/flake8/flake8/formatting/__init__.pyi +0 -0
  151. package/dist/typeshed-fallback/stubs/flake8/flake8/formatting/_windows_color.pyi +1 -0
  152. package/dist/typeshed-fallback/stubs/flake8/flake8/formatting/base.pyi +24 -0
  153. package/dist/typeshed-fallback/stubs/flake8/flake8/formatting/default.pyi +29 -0
  154. package/dist/typeshed-fallback/stubs/flake8/flake8/main/__init__.pyi +0 -0
  155. package/dist/typeshed-fallback/stubs/flake8/flake8/main/application.pyi +29 -0
  156. package/dist/typeshed-fallback/stubs/flake8/flake8/main/cli.pyi +3 -0
  157. package/dist/typeshed-fallback/stubs/flake8/flake8/main/debug.pyi +5 -0
  158. package/dist/typeshed-fallback/stubs/flake8/flake8/main/options.pyi +12 -0
  159. package/dist/typeshed-fallback/stubs/flake8/flake8/options/__init__.pyi +0 -0
  160. package/dist/typeshed-fallback/stubs/flake8/flake8/options/aggregator.pyi +12 -0
  161. package/dist/typeshed-fallback/stubs/flake8/flake8/options/config.pyi +10 -0
  162. package/dist/typeshed-fallback/stubs/flake8/flake8/options/manager.pyi +71 -0
  163. package/dist/typeshed-fallback/stubs/flake8/flake8/options/parse_args.pyi +6 -0
  164. package/dist/typeshed-fallback/stubs/flake8/flake8/plugins/__init__.pyi +0 -0
  165. package/dist/typeshed-fallback/stubs/flake8/flake8/plugins/finder.pyi +48 -0
  166. package/dist/typeshed-fallback/stubs/flake8/flake8/plugins/pycodestyle.pyi +32 -0
  167. package/dist/typeshed-fallback/stubs/flake8/flake8/plugins/pyflakes.pyi +21 -0
  168. package/dist/typeshed-fallback/stubs/flake8/flake8/plugins/reporter.pyi +9 -0
  169. package/dist/typeshed-fallback/stubs/flake8/flake8/processor.pyi +72 -0
  170. package/dist/typeshed-fallback/stubs/flake8/flake8/statistics.pyi +28 -0
  171. package/dist/typeshed-fallback/stubs/flake8/flake8/style_guide.pyi +70 -0
  172. package/dist/typeshed-fallback/stubs/flake8/flake8/utils.pyi +25 -0
  173. package/dist/typeshed-fallback/stubs/flake8/flake8/violation.pyi +13 -0
  174. package/dist/typeshed-fallback/stubs/fpdf2/METADATA.toml +1 -1
  175. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/bidi.pyi +5 -3
  176. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/drawing.pyi +5 -1
  177. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/enums.pyi +15 -2
  178. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/fpdf.pyi +2 -1
  179. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/html.pyi +45 -32
  180. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/line_break.pyi +4 -4
  181. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/outline.pyi +1 -1
  182. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/svg.pyi +0 -1
  183. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/table.pyi +2 -1
  184. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/util.pyi +4 -0
  185. package/dist/typeshed-fallback/stubs/hvac/hvac/adapters.pyi +1 -1
  186. package/dist/typeshed-fallback/stubs/hvac/hvac/v1/__init__.pyi +35 -23
  187. package/dist/typeshed-fallback/stubs/influxdb-client/METADATA.toml +1 -1
  188. package/dist/typeshed-fallback/stubs/influxdb-client/influxdb_client/client/exceptions.pyi +3 -1
  189. package/dist/typeshed-fallback/stubs/influxdb-client/influxdb_client/rest.pyi +8 -2
  190. package/dist/typeshed-fallback/stubs/networkx/networkx/algorithms/dag.pyi +2 -0
  191. package/dist/typeshed-fallback/stubs/psutil/psutil/__init__.pyi +1 -1
  192. package/dist/typeshed-fallback/stubs/psutil/psutil/_pswindows.pyi +8 -6
  193. package/dist/typeshed-fallback/stubs/pyaudio/METADATA.toml +2 -2
  194. package/dist/typeshed-fallback/stubs/pyflakes/pyflakes/scripts/__init__.pyi +0 -0
  195. package/dist/typeshed-fallback/stubs/pyflakes/pyflakes/scripts/pyflakes.pyi +8 -0
  196. package/dist/typeshed-fallback/stubs/pygit2/METADATA.toml +1 -1
  197. package/dist/typeshed-fallback/stubs/pygit2/pygit2/_pygit2.pyi +1 -15
  198. package/dist/typeshed-fallback/stubs/pygit2/pygit2/enums.pyi +313 -314
  199. package/dist/typeshed-fallback/stubs/pygit2/pygit2/index.pyi +2 -1
  200. package/dist/typeshed-fallback/stubs/pygit2/pygit2/remotes.pyi +7 -1
  201. package/dist/typeshed-fallback/stubs/pygit2/pygit2/repository.pyi +4 -14
  202. package/dist/typeshed-fallback/stubs/pygit2/pygit2/utils.pyi +7 -1
  203. package/dist/typeshed-fallback/stubs/pynput/METADATA.toml +1 -1
  204. package/dist/typeshed-fallback/stubs/regex/METADATA.toml +1 -1
  205. package/dist/typeshed-fallback/stubs/regex/regex/_regex_core.pyi +35 -35
  206. package/dist/typeshed-fallback/stubs/regex/regex/regex.pyi +10 -10
  207. package/dist/typeshed-fallback/stubs/requests/METADATA.toml +1 -1
  208. package/dist/typeshed-fallback/stubs/setuptools/pkg_resources/__init__.pyi +16 -9
  209. package/dist/typeshed-fallback/stubs/setuptools/setuptools/__init__.pyi +4 -2
  210. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/_modified.pyi +16 -5
  211. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/archive_util.pyi +25 -10
  212. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/ccompiler.pyi +38 -16
  213. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/cmd.pyi +58 -30
  214. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/command/build_py.pyi +2 -1
  215. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/command/install_lib.pyi +1 -1
  216. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/command/install_scripts.pyi +1 -1
  217. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/command/upload.pyi +2 -2
  218. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/dep_util.pyi +1 -3
  219. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/dist.pyi +8 -5
  220. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/filelist.pyi +14 -6
  221. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/sysconfig.pyi +4 -2
  222. package/dist/typeshed-fallback/stubs/setuptools/setuptools/_distutils/util.pyi +8 -4
  223. package/dist/typeshed-fallback/stubs/setuptools/setuptools/build_meta.pyi +4 -3
  224. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/bdist_egg.pyi +9 -1
  225. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/build_ext.pyi +2 -2
  226. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/install.pyi +3 -1
  227. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/install_lib.pyi +10 -1
  228. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/install_scripts.pyi +1 -3
  229. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/upload_docs.pyi +2 -3
  230. package/dist/typeshed-fallback/stubs/setuptools/setuptools/config/expand.pyi +1 -1
  231. package/dist/typeshed-fallback/stubs/six/six/__init__.pyi +1 -1
  232. package/dist/typeshed-fallback/stubs/uWSGI/METADATA.toml +4 -1
  233. package/dist/typeshed-fallback/stubs/ujson/METADATA.toml +1 -1
  234. package/dist/typeshed-fallback/stubs/wurlitzer/METADATA.toml +1 -1
  235. package/dist/typeshed-fallback/stubs/wurlitzer/wurlitzer.pyi +48 -6
  236. package/package.json +1 -1
@@ -1,29 +1,35 @@
1
1
  import sys
2
2
  import typing_extensions
3
- from typing import Any, ClassVar, Literal
3
+ from typing import Any, ClassVar, Generic, Literal, TypedDict, overload
4
+ from typing_extensions import Unpack
4
5
 
5
6
  PyCF_ONLY_AST: Literal[1024]
6
7
  PyCF_TYPE_COMMENTS: Literal[4096]
7
8
  PyCF_ALLOW_TOP_LEVEL_AWAIT: Literal[8192]
8
9
 
10
+ # Used for node end positions in constructor keyword arguments
11
+ _EndPositionT = typing_extensions.TypeVar("_EndPositionT", int, int | None, default=int | None) # noqa: Y023
12
+
9
13
  # Alias used for fields that must always be valid identifiers
10
14
  # A string `x` counts as a valid identifier if both the following are True
11
15
  # (1) `x.isidentifier()` evaluates to `True`
12
16
  # (2) `keyword.iskeyword(x)` evaluates to `False`
13
17
  _Identifier: typing_extensions.TypeAlias = str
14
18
 
19
+ # Corresponds to the names in the `_attributes` class variable which is non-empty in certain AST nodes
20
+ class _Attributes(TypedDict, Generic[_EndPositionT], total=False):
21
+ lineno: int
22
+ col_offset: int
23
+ end_lineno: _EndPositionT
24
+ end_col_offset: _EndPositionT
25
+
15
26
  class AST:
16
27
  if sys.version_info >= (3, 10):
17
28
  __match_args__ = ()
18
29
  _attributes: ClassVar[tuple[str, ...]]
19
30
  _fields: ClassVar[tuple[str, ...]]
20
- def __init__(self, *args: Any, **kwargs: Any) -> None: ...
21
- # TODO: Not all nodes have all of the following attributes
22
- lineno: int
23
- col_offset: int
24
- end_lineno: int | None
25
- end_col_offset: int | None
26
- type_comment: str | None
31
+ if sys.version_info >= (3, 13):
32
+ _field_types: ClassVar[dict[str, Any]]
27
33
 
28
34
  class mod(AST): ...
29
35
  class type_ignore(AST): ...
@@ -31,31 +37,54 @@ class type_ignore(AST): ...
31
37
  class TypeIgnore(type_ignore):
32
38
  if sys.version_info >= (3, 10):
33
39
  __match_args__ = ("lineno", "tag")
40
+ lineno: int
34
41
  tag: str
42
+ def __init__(self, lineno: int, tag: str) -> None: ...
35
43
 
36
44
  class FunctionType(mod):
37
45
  if sys.version_info >= (3, 10):
38
46
  __match_args__ = ("argtypes", "returns")
39
47
  argtypes: list[expr]
40
48
  returns: expr
49
+ if sys.version_info >= (3, 13):
50
+ @overload
51
+ def __init__(self, argtypes: list[expr], returns: expr) -> None: ...
52
+ @overload
53
+ def __init__(self, argtypes: list[expr] = ..., *, returns: expr) -> None: ...
54
+ else:
55
+ def __init__(self, argtypes: list[expr], returns: expr) -> None: ...
41
56
 
42
57
  class Module(mod):
43
58
  if sys.version_info >= (3, 10):
44
59
  __match_args__ = ("body", "type_ignores")
45
60
  body: list[stmt]
46
61
  type_ignores: list[TypeIgnore]
62
+ if sys.version_info >= (3, 13):
63
+ def __init__(self, body: list[stmt] = ..., type_ignores: list[TypeIgnore] = ...) -> None: ...
64
+ else:
65
+ def __init__(self, body: list[stmt], type_ignores: list[TypeIgnore]) -> None: ...
47
66
 
48
67
  class Interactive(mod):
49
68
  if sys.version_info >= (3, 10):
50
69
  __match_args__ = ("body",)
51
70
  body: list[stmt]
71
+ if sys.version_info >= (3, 13):
72
+ def __init__(self, body: list[stmt] = ...) -> None: ...
73
+ else:
74
+ def __init__(self, body: list[stmt]) -> None: ...
52
75
 
53
76
  class Expression(mod):
54
77
  if sys.version_info >= (3, 10):
55
78
  __match_args__ = ("body",)
56
79
  body: expr
80
+ def __init__(self, body: expr) -> None: ...
57
81
 
58
- class stmt(AST): ...
82
+ class stmt(AST):
83
+ lineno: int
84
+ col_offset: int
85
+ end_lineno: int | None
86
+ end_col_offset: int | None
87
+ def __init__(self, **kwargs: Unpack[_Attributes]) -> None: ...
59
88
 
60
89
  class FunctionDef(stmt):
61
90
  if sys.version_info >= (3, 12):
@@ -67,8 +96,58 @@ class FunctionDef(stmt):
67
96
  body: list[stmt]
68
97
  decorator_list: list[expr]
69
98
  returns: expr | None
99
+ type_comment: str | None
70
100
  if sys.version_info >= (3, 12):
71
101
  type_params: list[type_param]
102
+ if sys.version_info >= (3, 13):
103
+ def __init__(
104
+ self,
105
+ name: _Identifier,
106
+ args: arguments,
107
+ body: list[stmt] = ...,
108
+ decorator_list: list[expr] = ...,
109
+ returns: expr | None = None,
110
+ type_comment: str | None = None,
111
+ type_params: list[type_param] = ...,
112
+ **kwargs: Unpack[_Attributes],
113
+ ) -> None: ...
114
+ elif sys.version_info >= (3, 12):
115
+ @overload
116
+ def __init__(
117
+ self,
118
+ name: _Identifier,
119
+ args: arguments,
120
+ body: list[stmt],
121
+ decorator_list: list[expr],
122
+ returns: expr | None,
123
+ type_comment: str | None,
124
+ type_params: list[type_param],
125
+ **kwargs: Unpack[_Attributes],
126
+ ) -> None: ...
127
+ @overload
128
+ def __init__(
129
+ self,
130
+ name: _Identifier,
131
+ args: arguments,
132
+ body: list[stmt],
133
+ decorator_list: list[expr],
134
+ returns: expr | None = None,
135
+ type_comment: str | None = None,
136
+ *,
137
+ type_params: list[type_param],
138
+ **kwargs: Unpack[_Attributes],
139
+ ) -> None: ...
140
+ else:
141
+ def __init__(
142
+ self,
143
+ name: _Identifier,
144
+ args: arguments,
145
+ body: list[stmt],
146
+ decorator_list: list[expr],
147
+ returns: expr | None = None,
148
+ type_comment: str | None = None,
149
+ **kwargs: Unpack[_Attributes],
150
+ ) -> None: ...
72
151
 
73
152
  class AsyncFunctionDef(stmt):
74
153
  if sys.version_info >= (3, 12):
@@ -80,8 +159,58 @@ class AsyncFunctionDef(stmt):
80
159
  body: list[stmt]
81
160
  decorator_list: list[expr]
82
161
  returns: expr | None
162
+ type_comment: str | None
83
163
  if sys.version_info >= (3, 12):
84
164
  type_params: list[type_param]
165
+ if sys.version_info >= (3, 13):
166
+ def __init__(
167
+ self,
168
+ name: _Identifier,
169
+ args: arguments,
170
+ body: list[stmt] = ...,
171
+ decorator_list: list[expr] = ...,
172
+ returns: expr | None = None,
173
+ type_comment: str | None = None,
174
+ type_params: list[type_param] = ...,
175
+ **kwargs: Unpack[_Attributes],
176
+ ) -> None: ...
177
+ elif sys.version_info >= (3, 12):
178
+ @overload
179
+ def __init__(
180
+ self,
181
+ name: _Identifier,
182
+ args: arguments,
183
+ body: list[stmt],
184
+ decorator_list: list[expr],
185
+ returns: expr | None,
186
+ type_comment: str | None,
187
+ type_params: list[type_param],
188
+ **kwargs: Unpack[_Attributes],
189
+ ) -> None: ...
190
+ @overload
191
+ def __init__(
192
+ self,
193
+ name: _Identifier,
194
+ args: arguments,
195
+ body: list[stmt],
196
+ decorator_list: list[expr],
197
+ returns: expr | None = None,
198
+ type_comment: str | None = None,
199
+ *,
200
+ type_params: list[type_param],
201
+ **kwargs: Unpack[_Attributes],
202
+ ) -> None: ...
203
+ else:
204
+ def __init__(
205
+ self,
206
+ name: _Identifier,
207
+ args: arguments,
208
+ body: list[stmt],
209
+ decorator_list: list[expr],
210
+ returns: expr | None = None,
211
+ type_comment: str | None = None,
212
+ **kwargs: Unpack[_Attributes],
213
+ ) -> None: ...
85
214
 
86
215
  class ClassDef(stmt):
87
216
  if sys.version_info >= (3, 12):
@@ -95,22 +224,73 @@ class ClassDef(stmt):
95
224
  decorator_list: list[expr]
96
225
  if sys.version_info >= (3, 12):
97
226
  type_params: list[type_param]
227
+ if sys.version_info >= (3, 13):
228
+ def __init__(
229
+ self,
230
+ name: _Identifier,
231
+ bases: list[expr] = ...,
232
+ keywords: list[keyword] = ...,
233
+ body: list[stmt] = ...,
234
+ decorator_list: list[expr] = ...,
235
+ type_params: list[type_param] = ...,
236
+ **kwargs: Unpack[_Attributes],
237
+ ) -> None: ...
238
+ elif sys.version_info >= (3, 12):
239
+ def __init__(
240
+ self,
241
+ name: _Identifier,
242
+ bases: list[expr],
243
+ keywords: list[keyword],
244
+ body: list[stmt],
245
+ decorator_list: list[expr],
246
+ type_params: list[type_param],
247
+ **kwargs: Unpack[_Attributes],
248
+ ) -> None: ...
249
+ else:
250
+ def __init__(
251
+ self,
252
+ name: _Identifier,
253
+ bases: list[expr],
254
+ keywords: list[keyword],
255
+ body: list[stmt],
256
+ decorator_list: list[expr],
257
+ **kwargs: Unpack[_Attributes],
258
+ ) -> None: ...
98
259
 
99
260
  class Return(stmt):
100
261
  if sys.version_info >= (3, 10):
101
262
  __match_args__ = ("value",)
102
263
  value: expr | None
264
+ def __init__(self, value: expr | None = None, **kwargs: Unpack[_Attributes]) -> None: ...
103
265
 
104
266
  class Delete(stmt):
105
267
  if sys.version_info >= (3, 10):
106
268
  __match_args__ = ("targets",)
107
269
  targets: list[expr]
270
+ if sys.version_info >= (3, 13):
271
+ def __init__(self, targets: list[expr] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
272
+ else:
273
+ def __init__(self, targets: list[expr], **kwargs: Unpack[_Attributes]) -> None: ...
108
274
 
109
275
  class Assign(stmt):
110
276
  if sys.version_info >= (3, 10):
111
277
  __match_args__ = ("targets", "value", "type_comment")
112
278
  targets: list[expr]
113
279
  value: expr
280
+ type_comment: str | None
281
+ if sys.version_info >= (3, 13):
282
+ @overload
283
+ def __init__(
284
+ self, targets: list[expr], value: expr, type_comment: str | None = None, **kwargs: Unpack[_Attributes]
285
+ ) -> None: ...
286
+ @overload
287
+ def __init__(
288
+ self, targets: list[expr] = ..., *, value: expr, type_comment: str | None = None, **kwargs: Unpack[_Attributes]
289
+ ) -> None: ...
290
+ else:
291
+ def __init__(
292
+ self, targets: list[expr], value: expr, type_comment: str | None = None, **kwargs: Unpack[_Attributes]
293
+ ) -> None: ...
114
294
 
115
295
  class AugAssign(stmt):
116
296
  if sys.version_info >= (3, 10):
@@ -118,6 +298,9 @@ class AugAssign(stmt):
118
298
  target: Name | Attribute | Subscript
119
299
  op: operator
120
300
  value: expr
301
+ def __init__(
302
+ self, target: Name | Attribute | Subscript, op: operator, value: expr, **kwargs: Unpack[_Attributes]
303
+ ) -> None: ...
121
304
 
122
305
  class AnnAssign(stmt):
123
306
  if sys.version_info >= (3, 10):
@@ -126,6 +309,25 @@ class AnnAssign(stmt):
126
309
  annotation: expr
127
310
  value: expr | None
128
311
  simple: int
312
+ @overload
313
+ def __init__(
314
+ self,
315
+ target: Name | Attribute | Subscript,
316
+ annotation: expr,
317
+ value: expr | None,
318
+ simple: int,
319
+ **kwargs: Unpack[_Attributes],
320
+ ) -> None: ...
321
+ @overload
322
+ def __init__(
323
+ self,
324
+ target: Name | Attribute | Subscript,
325
+ annotation: expr,
326
+ value: expr | None = None,
327
+ *,
328
+ simple: int,
329
+ **kwargs: Unpack[_Attributes],
330
+ ) -> None: ...
129
331
 
130
332
  class For(stmt):
131
333
  if sys.version_info >= (3, 10):
@@ -134,6 +336,27 @@ class For(stmt):
134
336
  iter: expr
135
337
  body: list[stmt]
136
338
  orelse: list[stmt]
339
+ type_comment: str | None
340
+ if sys.version_info >= (3, 13):
341
+ def __init__(
342
+ self,
343
+ target: expr,
344
+ iter: expr,
345
+ body: list[stmt] = ...,
346
+ orelse: list[stmt] = ...,
347
+ type_comment: str | None = None,
348
+ **kwargs: Unpack[_Attributes],
349
+ ) -> None: ...
350
+ else:
351
+ def __init__(
352
+ self,
353
+ target: expr,
354
+ iter: expr,
355
+ body: list[stmt],
356
+ orelse: list[stmt],
357
+ type_comment: str | None = None,
358
+ **kwargs: Unpack[_Attributes],
359
+ ) -> None: ...
137
360
 
138
361
  class AsyncFor(stmt):
139
362
  if sys.version_info >= (3, 10):
@@ -142,6 +365,27 @@ class AsyncFor(stmt):
142
365
  iter: expr
143
366
  body: list[stmt]
144
367
  orelse: list[stmt]
368
+ type_comment: str | None
369
+ if sys.version_info >= (3, 13):
370
+ def __init__(
371
+ self,
372
+ target: expr,
373
+ iter: expr,
374
+ body: list[stmt] = ...,
375
+ orelse: list[stmt] = ...,
376
+ type_comment: str | None = None,
377
+ **kwargs: Unpack[_Attributes],
378
+ ) -> None: ...
379
+ else:
380
+ def __init__(
381
+ self,
382
+ target: expr,
383
+ iter: expr,
384
+ body: list[stmt],
385
+ orelse: list[stmt],
386
+ type_comment: str | None = None,
387
+ **kwargs: Unpack[_Attributes],
388
+ ) -> None: ...
145
389
 
146
390
  class While(stmt):
147
391
  if sys.version_info >= (3, 10):
@@ -149,6 +393,12 @@ class While(stmt):
149
393
  test: expr
150
394
  body: list[stmt]
151
395
  orelse: list[stmt]
396
+ if sys.version_info >= (3, 13):
397
+ def __init__(
398
+ self, test: expr, body: list[stmt] = ..., orelse: list[stmt] = ..., **kwargs: Unpack[_Attributes]
399
+ ) -> None: ...
400
+ else:
401
+ def __init__(self, test: expr, body: list[stmt], orelse: list[stmt], **kwargs: Unpack[_Attributes]) -> None: ...
152
402
 
153
403
  class If(stmt):
154
404
  if sys.version_info >= (3, 10):
@@ -156,24 +406,57 @@ class If(stmt):
156
406
  test: expr
157
407
  body: list[stmt]
158
408
  orelse: list[stmt]
409
+ if sys.version_info >= (3, 13):
410
+ def __init__(
411
+ self, test: expr, body: list[stmt] = ..., orelse: list[stmt] = ..., **kwargs: Unpack[_Attributes]
412
+ ) -> None: ...
413
+ else:
414
+ def __init__(self, test: expr, body: list[stmt], orelse: list[stmt], **kwargs: Unpack[_Attributes]) -> None: ...
159
415
 
160
416
  class With(stmt):
161
417
  if sys.version_info >= (3, 10):
162
418
  __match_args__ = ("items", "body", "type_comment")
163
419
  items: list[withitem]
164
420
  body: list[stmt]
421
+ type_comment: str | None
422
+ if sys.version_info >= (3, 13):
423
+ def __init__(
424
+ self,
425
+ items: list[withitem] = ...,
426
+ body: list[stmt] = ...,
427
+ type_comment: str | None = None,
428
+ **kwargs: Unpack[_Attributes],
429
+ ) -> None: ...
430
+ else:
431
+ def __init__(
432
+ self, items: list[withitem], body: list[stmt], type_comment: str | None = None, **kwargs: Unpack[_Attributes]
433
+ ) -> None: ...
165
434
 
166
435
  class AsyncWith(stmt):
167
436
  if sys.version_info >= (3, 10):
168
437
  __match_args__ = ("items", "body", "type_comment")
169
438
  items: list[withitem]
170
439
  body: list[stmt]
440
+ type_comment: str | None
441
+ if sys.version_info >= (3, 13):
442
+ def __init__(
443
+ self,
444
+ items: list[withitem] = ...,
445
+ body: list[stmt] = ...,
446
+ type_comment: str | None = None,
447
+ **kwargs: Unpack[_Attributes],
448
+ ) -> None: ...
449
+ else:
450
+ def __init__(
451
+ self, items: list[withitem], body: list[stmt], type_comment: str | None = None, **kwargs: Unpack[_Attributes]
452
+ ) -> None: ...
171
453
 
172
454
  class Raise(stmt):
173
455
  if sys.version_info >= (3, 10):
174
456
  __match_args__ = ("exc", "cause")
175
457
  exc: expr | None
176
458
  cause: expr | None
459
+ def __init__(self, exc: expr | None = None, cause: expr | None = None, **kwargs: Unpack[_Attributes]) -> None: ...
177
460
 
178
461
  class Try(stmt):
179
462
  if sys.version_info >= (3, 10):
@@ -182,6 +465,24 @@ class Try(stmt):
182
465
  handlers: list[ExceptHandler]
183
466
  orelse: list[stmt]
184
467
  finalbody: list[stmt]
468
+ if sys.version_info >= (3, 13):
469
+ def __init__(
470
+ self,
471
+ body: list[stmt] = ...,
472
+ handlers: list[ExceptHandler] = ...,
473
+ orelse: list[stmt] = ...,
474
+ finalbody: list[stmt] = ...,
475
+ **kwargs: Unpack[_Attributes],
476
+ ) -> None: ...
477
+ else:
478
+ def __init__(
479
+ self,
480
+ body: list[stmt],
481
+ handlers: list[ExceptHandler],
482
+ orelse: list[stmt],
483
+ finalbody: list[stmt],
484
+ **kwargs: Unpack[_Attributes],
485
+ ) -> None: ...
185
486
 
186
487
  if sys.version_info >= (3, 11):
187
488
  class TryStar(stmt):
@@ -190,17 +491,40 @@ if sys.version_info >= (3, 11):
190
491
  handlers: list[ExceptHandler]
191
492
  orelse: list[stmt]
192
493
  finalbody: list[stmt]
494
+ if sys.version_info >= (3, 13):
495
+ def __init__(
496
+ self,
497
+ body: list[stmt] = ...,
498
+ handlers: list[ExceptHandler] = ...,
499
+ orelse: list[stmt] = ...,
500
+ finalbody: list[stmt] = ...,
501
+ **kwargs: Unpack[_Attributes],
502
+ ) -> None: ...
503
+ else:
504
+ def __init__(
505
+ self,
506
+ body: list[stmt],
507
+ handlers: list[ExceptHandler],
508
+ orelse: list[stmt],
509
+ finalbody: list[stmt],
510
+ **kwargs: Unpack[_Attributes],
511
+ ) -> None: ...
193
512
 
194
513
  class Assert(stmt):
195
514
  if sys.version_info >= (3, 10):
196
515
  __match_args__ = ("test", "msg")
197
516
  test: expr
198
517
  msg: expr | None
518
+ def __init__(self, test: expr, msg: expr | None = None, **kwargs: Unpack[_Attributes]) -> None: ...
199
519
 
200
520
  class Import(stmt):
201
521
  if sys.version_info >= (3, 10):
202
522
  __match_args__ = ("names",)
203
523
  names: list[alias]
524
+ if sys.version_info >= (3, 13):
525
+ def __init__(self, names: list[alias] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
526
+ else:
527
+ def __init__(self, names: list[alias], **kwargs: Unpack[_Attributes]) -> None: ...
204
528
 
205
529
  class ImportFrom(stmt):
206
530
  if sys.version_info >= (3, 10):
@@ -208,32 +532,65 @@ class ImportFrom(stmt):
208
532
  module: str | None
209
533
  names: list[alias]
210
534
  level: int
535
+ if sys.version_info >= (3, 13):
536
+ @overload
537
+ def __init__(self, module: str | None, names: list[alias], level: int, **kwargs: Unpack[_Attributes]) -> None: ...
538
+ @overload
539
+ def __init__(
540
+ self, module: str | None = None, names: list[alias] = ..., *, level: int, **kwargs: Unpack[_Attributes]
541
+ ) -> None: ...
542
+ else:
543
+ @overload
544
+ def __init__(self, module: str | None, names: list[alias], level: int, **kwargs: Unpack[_Attributes]) -> None: ...
545
+ @overload
546
+ def __init__(
547
+ self, module: str | None = None, *, names: list[alias], level: int, **kwargs: Unpack[_Attributes]
548
+ ) -> None: ...
211
549
 
212
550
  class Global(stmt):
213
551
  if sys.version_info >= (3, 10):
214
552
  __match_args__ = ("names",)
215
553
  names: list[_Identifier]
554
+ if sys.version_info >= (3, 13):
555
+ def __init__(self, names: list[_Identifier] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
556
+ else:
557
+ def __init__(self, names: list[_Identifier], **kwargs: Unpack[_Attributes]) -> None: ...
216
558
 
217
559
  class Nonlocal(stmt):
218
560
  if sys.version_info >= (3, 10):
219
561
  __match_args__ = ("names",)
220
562
  names: list[_Identifier]
563
+ if sys.version_info >= (3, 13):
564
+ def __init__(self, names: list[_Identifier] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
565
+ else:
566
+ def __init__(self, names: list[_Identifier], **kwargs: Unpack[_Attributes]) -> None: ...
221
567
 
222
568
  class Expr(stmt):
223
569
  if sys.version_info >= (3, 10):
224
570
  __match_args__ = ("value",)
225
571
  value: expr
572
+ def __init__(self, value: expr, **kwargs: Unpack[_Attributes]) -> None: ...
226
573
 
227
574
  class Pass(stmt): ...
228
575
  class Break(stmt): ...
229
576
  class Continue(stmt): ...
230
- class expr(AST): ...
577
+
578
+ class expr(AST):
579
+ lineno: int
580
+ col_offset: int
581
+ end_lineno: int | None
582
+ end_col_offset: int | None
583
+ def __init__(self, **kwargs: Unpack[_Attributes]) -> None: ...
231
584
 
232
585
  class BoolOp(expr):
233
586
  if sys.version_info >= (3, 10):
234
587
  __match_args__ = ("op", "values")
235
588
  op: boolop
236
589
  values: list[expr]
590
+ if sys.version_info >= (3, 13):
591
+ def __init__(self, op: boolop, values: list[expr] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
592
+ else:
593
+ def __init__(self, op: boolop, values: list[expr], **kwargs: Unpack[_Attributes]) -> None: ...
237
594
 
238
595
  class BinOp(expr):
239
596
  if sys.version_info >= (3, 10):
@@ -241,18 +598,21 @@ class BinOp(expr):
241
598
  left: expr
242
599
  op: operator
243
600
  right: expr
601
+ def __init__(self, left: expr, op: operator, right: expr, **kwargs: Unpack[_Attributes]) -> None: ...
244
602
 
245
603
  class UnaryOp(expr):
246
604
  if sys.version_info >= (3, 10):
247
605
  __match_args__ = ("op", "operand")
248
606
  op: unaryop
249
607
  operand: expr
608
+ def __init__(self, op: unaryop, operand: expr, **kwargs: Unpack[_Attributes]) -> None: ...
250
609
 
251
610
  class Lambda(expr):
252
611
  if sys.version_info >= (3, 10):
253
612
  __match_args__ = ("args", "body")
254
613
  args: arguments
255
614
  body: expr
615
+ def __init__(self, args: arguments, body: expr, **kwargs: Unpack[_Attributes]) -> None: ...
256
616
 
257
617
  class IfExp(expr):
258
618
  if sys.version_info >= (3, 10):
@@ -260,29 +620,46 @@ class IfExp(expr):
260
620
  test: expr
261
621
  body: expr
262
622
  orelse: expr
623
+ def __init__(self, test: expr, body: expr, orelse: expr, **kwargs: Unpack[_Attributes]) -> None: ...
263
624
 
264
625
  class Dict(expr):
265
626
  if sys.version_info >= (3, 10):
266
627
  __match_args__ = ("keys", "values")
267
628
  keys: list[expr | None]
268
629
  values: list[expr]
630
+ if sys.version_info >= (3, 13):
631
+ def __init__(self, keys: list[expr | None] = ..., values: list[expr] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
632
+ else:
633
+ def __init__(self, keys: list[expr | None], values: list[expr], **kwargs: Unpack[_Attributes]) -> None: ...
269
634
 
270
635
  class Set(expr):
271
636
  if sys.version_info >= (3, 10):
272
637
  __match_args__ = ("elts",)
273
638
  elts: list[expr]
639
+ if sys.version_info >= (3, 13):
640
+ def __init__(self, elts: list[expr] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
641
+ else:
642
+ def __init__(self, elts: list[expr], **kwargs: Unpack[_Attributes]) -> None: ...
274
643
 
275
644
  class ListComp(expr):
276
645
  if sys.version_info >= (3, 10):
277
646
  __match_args__ = ("elt", "generators")
278
647
  elt: expr
279
648
  generators: list[comprehension]
649
+ if sys.version_info >= (3, 13):
650
+ def __init__(self, elt: expr, generators: list[comprehension] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
651
+ else:
652
+ def __init__(self, elt: expr, generators: list[comprehension], **kwargs: Unpack[_Attributes]) -> None: ...
280
653
 
281
654
  class SetComp(expr):
282
655
  if sys.version_info >= (3, 10):
283
656
  __match_args__ = ("elt", "generators")
284
657
  elt: expr
285
658
  generators: list[comprehension]
659
+ if sys.version_info >= (3, 13):
660
+ def __init__(self, elt: expr, generators: list[comprehension] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
661
+ else:
662
+ def __init__(self, elt: expr, generators: list[comprehension], **kwargs: Unpack[_Attributes]) -> None: ...
286
663
 
287
664
  class DictComp(expr):
288
665
  if sys.version_info >= (3, 10):
@@ -290,27 +667,40 @@ class DictComp(expr):
290
667
  key: expr
291
668
  value: expr
292
669
  generators: list[comprehension]
670
+ if sys.version_info >= (3, 13):
671
+ def __init__(
672
+ self, key: expr, value: expr, generators: list[comprehension] = ..., **kwargs: Unpack[_Attributes]
673
+ ) -> None: ...
674
+ else:
675
+ def __init__(self, key: expr, value: expr, generators: list[comprehension], **kwargs: Unpack[_Attributes]) -> None: ...
293
676
 
294
677
  class GeneratorExp(expr):
295
678
  if sys.version_info >= (3, 10):
296
679
  __match_args__ = ("elt", "generators")
297
680
  elt: expr
298
681
  generators: list[comprehension]
682
+ if sys.version_info >= (3, 13):
683
+ def __init__(self, elt: expr, generators: list[comprehension] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
684
+ else:
685
+ def __init__(self, elt: expr, generators: list[comprehension], **kwargs: Unpack[_Attributes]) -> None: ...
299
686
 
300
687
  class Await(expr):
301
688
  if sys.version_info >= (3, 10):
302
689
  __match_args__ = ("value",)
303
690
  value: expr
691
+ def __init__(self, value: expr, **kwargs: Unpack[_Attributes]) -> None: ...
304
692
 
305
693
  class Yield(expr):
306
694
  if sys.version_info >= (3, 10):
307
695
  __match_args__ = ("value",)
308
696
  value: expr | None
697
+ def __init__(self, value: expr | None = None, **kwargs: Unpack[_Attributes]) -> None: ...
309
698
 
310
699
  class YieldFrom(expr):
311
700
  if sys.version_info >= (3, 10):
312
701
  __match_args__ = ("value",)
313
702
  value: expr
703
+ def __init__(self, value: expr, **kwargs: Unpack[_Attributes]) -> None: ...
314
704
 
315
705
  class Compare(expr):
316
706
  if sys.version_info >= (3, 10):
@@ -318,6 +708,12 @@ class Compare(expr):
318
708
  left: expr
319
709
  ops: list[cmpop]
320
710
  comparators: list[expr]
711
+ if sys.version_info >= (3, 13):
712
+ def __init__(
713
+ self, left: expr, ops: list[cmpop] = ..., comparators: list[expr] = ..., **kwargs: Unpack[_Attributes]
714
+ ) -> None: ...
715
+ else:
716
+ def __init__(self, left: expr, ops: list[cmpop], comparators: list[expr], **kwargs: Unpack[_Attributes]) -> None: ...
321
717
 
322
718
  class Call(expr):
323
719
  if sys.version_info >= (3, 10):
@@ -325,6 +721,12 @@ class Call(expr):
325
721
  func: expr
326
722
  args: list[expr]
327
723
  keywords: list[keyword]
724
+ if sys.version_info >= (3, 13):
725
+ def __init__(
726
+ self, func: expr, args: list[expr] = ..., keywords: list[keyword] = ..., **kwargs: Unpack[_Attributes]
727
+ ) -> None: ...
728
+ else:
729
+ def __init__(self, func: expr, args: list[expr], keywords: list[keyword], **kwargs: Unpack[_Attributes]) -> None: ...
328
730
 
329
731
  class FormattedValue(expr):
330
732
  if sys.version_info >= (3, 10):
@@ -332,11 +734,16 @@ class FormattedValue(expr):
332
734
  value: expr
333
735
  conversion: int
334
736
  format_spec: expr | None
737
+ def __init__(self, value: expr, conversion: int, format_spec: expr | None = None, **kwargs: Unpack[_Attributes]) -> None: ...
335
738
 
336
739
  class JoinedStr(expr):
337
740
  if sys.version_info >= (3, 10):
338
741
  __match_args__ = ("values",)
339
742
  values: list[expr]
743
+ if sys.version_info >= (3, 13):
744
+ def __init__(self, values: list[expr] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
745
+ else:
746
+ def __init__(self, values: list[expr], **kwargs: Unpack[_Attributes]) -> None: ...
340
747
 
341
748
  class Constant(expr):
342
749
  if sys.version_info >= (3, 10):
@@ -346,72 +753,94 @@ class Constant(expr):
346
753
  # Aliases for value, for backwards compatibility
347
754
  s: Any
348
755
  n: int | float | complex
756
+ def __init__(self, value: Any, kind: str | None = None, **kwargs: Unpack[_Attributes]) -> None: ...
349
757
 
350
758
  class NamedExpr(expr):
351
759
  if sys.version_info >= (3, 10):
352
760
  __match_args__ = ("target", "value")
353
761
  target: Name
354
762
  value: expr
763
+ def __init__(self, target: Name, value: expr, **kwargs: Unpack[_Attributes]) -> None: ...
355
764
 
356
765
  class Attribute(expr):
357
766
  if sys.version_info >= (3, 10):
358
767
  __match_args__ = ("value", "attr", "ctx")
359
768
  value: expr
360
769
  attr: _Identifier
361
- ctx: expr_context
770
+ ctx: expr_context # Not present in Python < 3.13 if not passed to `__init__`
771
+ def __init__(self, value: expr, attr: _Identifier, ctx: expr_context = ..., **kwargs: Unpack[_Attributes]) -> None: ...
362
772
 
363
773
  if sys.version_info >= (3, 9):
364
774
  _Slice: typing_extensions.TypeAlias = expr
775
+ _SliceAttributes: typing_extensions.TypeAlias = _Attributes
365
776
  else:
366
777
  class slice(AST): ...
367
778
  _Slice: typing_extensions.TypeAlias = slice
368
779
 
780
+ class _SliceAttributes(TypedDict): ...
781
+
369
782
  class Slice(_Slice):
370
783
  if sys.version_info >= (3, 10):
371
784
  __match_args__ = ("lower", "upper", "step")
372
785
  lower: expr | None
373
786
  upper: expr | None
374
787
  step: expr | None
788
+ def __init__(
789
+ self, lower: expr | None = None, upper: expr | None = None, step: expr | None = None, **kwargs: Unpack[_SliceAttributes]
790
+ ) -> None: ...
375
791
 
376
792
  if sys.version_info < (3, 9):
377
793
  class ExtSlice(slice):
378
794
  dims: list[slice]
795
+ def __init__(self, dims: list[slice], **kwargs: Unpack[_SliceAttributes]) -> None: ...
379
796
 
380
797
  class Index(slice):
381
798
  value: expr
799
+ def __init__(self, value: expr, **kwargs: Unpack[_SliceAttributes]) -> None: ...
382
800
 
383
801
  class Subscript(expr):
384
802
  if sys.version_info >= (3, 10):
385
803
  __match_args__ = ("value", "slice", "ctx")
386
804
  value: expr
387
805
  slice: _Slice
388
- ctx: expr_context
806
+ ctx: expr_context # Not present in Python < 3.13 if not passed to `__init__`
807
+ def __init__(self, value: expr, slice: _Slice, ctx: expr_context = ..., **kwargs: Unpack[_Attributes]) -> None: ...
389
808
 
390
809
  class Starred(expr):
391
810
  if sys.version_info >= (3, 10):
392
811
  __match_args__ = ("value", "ctx")
393
812
  value: expr
394
- ctx: expr_context
813
+ ctx: expr_context # Not present in Python < 3.13 if not passed to `__init__`
814
+ def __init__(self, value: expr, ctx: expr_context = ..., **kwargs: Unpack[_Attributes]) -> None: ...
395
815
 
396
816
  class Name(expr):
397
817
  if sys.version_info >= (3, 10):
398
818
  __match_args__ = ("id", "ctx")
399
819
  id: _Identifier
400
- ctx: expr_context
820
+ ctx: expr_context # Not present in Python < 3.13 if not passed to `__init__`
821
+ def __init__(self, id: _Identifier, ctx: expr_context = ..., **kwargs: Unpack[_Attributes]) -> None: ...
401
822
 
402
823
  class List(expr):
403
824
  if sys.version_info >= (3, 10):
404
825
  __match_args__ = ("elts", "ctx")
405
826
  elts: list[expr]
406
- ctx: expr_context
827
+ ctx: expr_context # Not present in Python < 3.13 if not passed to `__init__`
828
+ if sys.version_info >= (3, 13):
829
+ def __init__(self, elts: list[expr] = ..., ctx: expr_context = ..., **kwargs: Unpack[_Attributes]) -> None: ...
830
+ else:
831
+ def __init__(self, elts: list[expr], ctx: expr_context = ..., **kwargs: Unpack[_Attributes]) -> None: ...
407
832
 
408
833
  class Tuple(expr):
409
834
  if sys.version_info >= (3, 10):
410
835
  __match_args__ = ("elts", "ctx")
411
836
  elts: list[expr]
412
- ctx: expr_context
837
+ ctx: expr_context # Not present in Python < 3.13 if not passed to `__init__`
413
838
  if sys.version_info >= (3, 9):
414
839
  dims: list[expr]
840
+ if sys.version_info >= (3, 13):
841
+ def __init__(self, elts: list[expr] = ..., ctx: expr_context = ..., **kwargs: Unpack[_Attributes]) -> None: ...
842
+ else:
843
+ def __init__(self, elts: list[expr], ctx: expr_context = ..., **kwargs: Unpack[_Attributes]) -> None: ...
415
844
 
416
845
  class expr_context(AST): ...
417
846
 
@@ -422,6 +851,7 @@ if sys.version_info < (3, 9):
422
851
 
423
852
  class Suite(mod):
424
853
  body: list[stmt]
854
+ def __init__(self, body: list[stmt]) -> None: ...
425
855
 
426
856
  class Del(expr_context): ...
427
857
  class Load(expr_context): ...
@@ -467,8 +897,20 @@ class comprehension(AST):
467
897
  iter: expr
468
898
  ifs: list[expr]
469
899
  is_async: int
470
-
471
- class excepthandler(AST): ...
900
+ if sys.version_info >= (3, 13):
901
+ @overload
902
+ def __init__(self, target: expr, iter: expr, ifs: list[expr], is_async: int) -> None: ...
903
+ @overload
904
+ def __init__(self, target: expr, iter: expr, ifs: list[expr] = ..., *, is_async: int) -> None: ...
905
+ else:
906
+ def __init__(self, target: expr, iter: expr, ifs: list[expr], is_async: int) -> None: ...
907
+
908
+ class excepthandler(AST):
909
+ lineno: int
910
+ col_offset: int
911
+ end_lineno: int | None
912
+ end_col_offset: int | None
913
+ def __init__(self, **kwargs: Unpack[_Attributes]) -> None: ...
472
914
 
473
915
  class ExceptHandler(excepthandler):
474
916
  if sys.version_info >= (3, 10):
@@ -476,6 +918,19 @@ class ExceptHandler(excepthandler):
476
918
  type: expr | None
477
919
  name: _Identifier | None
478
920
  body: list[stmt]
921
+ if sys.version_info >= (3, 13):
922
+ def __init__(
923
+ self, type: expr | None = None, name: _Identifier | None = None, body: list[stmt] = ..., **kwargs: Unpack[_Attributes]
924
+ ) -> None: ...
925
+ else:
926
+ @overload
927
+ def __init__(
928
+ self, type: expr | None, name: _Identifier | None, body: list[stmt], **kwargs: Unpack[_Attributes]
929
+ ) -> None: ...
930
+ @overload
931
+ def __init__(
932
+ self, type: expr | None = None, name: _Identifier | None = None, *, body: list[stmt], **kwargs: Unpack[_Attributes]
933
+ ) -> None: ...
479
934
 
480
935
  class arguments(AST):
481
936
  if sys.version_info >= (3, 10):
@@ -487,38 +942,117 @@ class arguments(AST):
487
942
  kw_defaults: list[expr | None]
488
943
  kwarg: arg | None
489
944
  defaults: list[expr]
945
+ if sys.version_info >= (3, 13):
946
+ def __init__(
947
+ self,
948
+ posonlyargs: list[arg] = ...,
949
+ args: list[arg] = ...,
950
+ vararg: arg | None = None,
951
+ kwonlyargs: list[arg] = ...,
952
+ kw_defaults: list[expr | None] = ...,
953
+ kwarg: arg | None = None,
954
+ defaults: list[expr] = ...,
955
+ ) -> None: ...
956
+ else:
957
+ @overload
958
+ def __init__(
959
+ self,
960
+ posonlyargs: list[arg],
961
+ args: list[arg],
962
+ vararg: arg | None,
963
+ kwonlyargs: list[arg],
964
+ kw_defaults: list[expr | None],
965
+ kwarg: arg | None,
966
+ defaults: list[expr],
967
+ ) -> None: ...
968
+ @overload
969
+ def __init__(
970
+ self,
971
+ posonlyargs: list[arg],
972
+ args: list[arg],
973
+ vararg: arg | None,
974
+ kwonlyargs: list[arg],
975
+ kw_defaults: list[expr | None],
976
+ kwarg: arg | None = None,
977
+ *,
978
+ defaults: list[expr],
979
+ ) -> None: ...
980
+ @overload
981
+ def __init__(
982
+ self,
983
+ posonlyargs: list[arg],
984
+ args: list[arg],
985
+ vararg: arg | None = None,
986
+ *,
987
+ kwonlyargs: list[arg],
988
+ kw_defaults: list[expr | None],
989
+ kwarg: arg | None = None,
990
+ defaults: list[expr],
991
+ ) -> None: ...
490
992
 
491
993
  class arg(AST):
994
+ lineno: int
995
+ col_offset: int
996
+ end_lineno: int | None
997
+ end_col_offset: int | None
492
998
  if sys.version_info >= (3, 10):
493
999
  __match_args__ = ("arg", "annotation", "type_comment")
494
1000
  arg: _Identifier
495
1001
  annotation: expr | None
1002
+ type_comment: str | None
1003
+ def __init__(
1004
+ self, arg: _Identifier, annotation: expr | None = None, type_comment: str | None = None, **kwargs: Unpack[_Attributes]
1005
+ ) -> None: ...
496
1006
 
497
1007
  class keyword(AST):
1008
+ lineno: int
1009
+ col_offset: int
1010
+ end_lineno: int | None
1011
+ end_col_offset: int | None
498
1012
  if sys.version_info >= (3, 10):
499
1013
  __match_args__ = ("arg", "value")
500
1014
  arg: _Identifier | None
501
1015
  value: expr
1016
+ @overload
1017
+ def __init__(self, arg: _Identifier | None, value: expr, **kwargs: Unpack[_Attributes]) -> None: ...
1018
+ @overload
1019
+ def __init__(self, arg: _Identifier | None = None, *, value: expr, **kwargs: Unpack[_Attributes]) -> None: ...
502
1020
 
503
1021
  class alias(AST):
1022
+ lineno: int
1023
+ col_offset: int
1024
+ end_lineno: int | None
1025
+ end_col_offset: int | None
504
1026
  if sys.version_info >= (3, 10):
505
1027
  __match_args__ = ("name", "asname")
506
1028
  name: str
507
1029
  asname: _Identifier | None
1030
+ def __init__(self, name: str, asname: _Identifier | None = None, **kwargs: Unpack[_Attributes]) -> None: ...
508
1031
 
509
1032
  class withitem(AST):
510
1033
  if sys.version_info >= (3, 10):
511
1034
  __match_args__ = ("context_expr", "optional_vars")
512
1035
  context_expr: expr
513
1036
  optional_vars: expr | None
1037
+ def __init__(self, context_expr: expr, optional_vars: expr | None = None) -> None: ...
514
1038
 
515
1039
  if sys.version_info >= (3, 10):
516
1040
  class Match(stmt):
517
1041
  __match_args__ = ("subject", "cases")
518
1042
  subject: expr
519
1043
  cases: list[match_case]
1044
+ if sys.version_info >= (3, 13):
1045
+ def __init__(self, subject: expr, cases: list[match_case] = ..., **kwargs: Unpack[_Attributes]) -> None: ...
1046
+ else:
1047
+ def __init__(self, subject: expr, cases: list[match_case], **kwargs: Unpack[_Attributes]) -> None: ...
1048
+
1049
+ class pattern(AST):
1050
+ lineno: int
1051
+ col_offset: int
1052
+ end_lineno: int
1053
+ end_col_offset: int
1054
+ def __init__(self, **kwargs: Unpack[_Attributes[int]]) -> None: ...
520
1055
 
521
- class pattern(AST): ...
522
1056
  # Without the alias, Pyright complains variables named pattern are recursively defined
523
1057
  _Pattern: typing_extensions.TypeAlias = pattern
524
1058
 
@@ -527,28 +1061,58 @@ if sys.version_info >= (3, 10):
527
1061
  pattern: _Pattern
528
1062
  guard: expr | None
529
1063
  body: list[stmt]
1064
+ if sys.version_info >= (3, 13):
1065
+ def __init__(self, pattern: _Pattern, guard: expr | None = None, body: list[stmt] = ...) -> None: ...
1066
+ else:
1067
+ @overload
1068
+ def __init__(self, pattern: _Pattern, guard: expr | None, body: list[stmt]) -> None: ...
1069
+ @overload
1070
+ def __init__(self, pattern: _Pattern, guard: expr | None = None, *, body: list[stmt]) -> None: ...
530
1071
 
531
1072
  class MatchValue(pattern):
532
1073
  __match_args__ = ("value",)
533
1074
  value: expr
1075
+ def __init__(self, value: expr, **kwargs: Unpack[_Attributes[int]]) -> None: ...
534
1076
 
535
1077
  class MatchSingleton(pattern):
536
1078
  __match_args__ = ("value",)
537
1079
  value: Literal[True, False] | None
1080
+ def __init__(self, value: Literal[True, False] | None, **kwargs: Unpack[_Attributes[int]]) -> None: ...
538
1081
 
539
1082
  class MatchSequence(pattern):
540
1083
  __match_args__ = ("patterns",)
541
1084
  patterns: list[pattern]
1085
+ if sys.version_info >= (3, 13):
1086
+ def __init__(self, patterns: list[pattern] = ..., **kwargs: Unpack[_Attributes[int]]) -> None: ...
1087
+ else:
1088
+ def __init__(self, patterns: list[pattern], **kwargs: Unpack[_Attributes[int]]) -> None: ...
542
1089
 
543
1090
  class MatchStar(pattern):
544
1091
  __match_args__ = ("name",)
545
1092
  name: _Identifier | None
1093
+ def __init__(self, name: _Identifier | None, **kwargs: Unpack[_Attributes[int]]) -> None: ...
546
1094
 
547
1095
  class MatchMapping(pattern):
548
1096
  __match_args__ = ("keys", "patterns", "rest")
549
1097
  keys: list[expr]
550
1098
  patterns: list[pattern]
551
1099
  rest: _Identifier | None
1100
+ if sys.version_info >= (3, 13):
1101
+ def __init__(
1102
+ self,
1103
+ keys: list[expr] = ...,
1104
+ patterns: list[pattern] = ...,
1105
+ rest: _Identifier | None = None,
1106
+ **kwargs: Unpack[_Attributes[int]],
1107
+ ) -> None: ...
1108
+ else:
1109
+ def __init__(
1110
+ self,
1111
+ keys: list[expr],
1112
+ patterns: list[pattern],
1113
+ rest: _Identifier | None = None,
1114
+ **kwargs: Unpack[_Attributes[int]],
1115
+ ) -> None: ...
552
1116
 
553
1117
  class MatchClass(pattern):
554
1118
  __match_args__ = ("cls", "patterns", "kwd_attrs", "kwd_patterns")
@@ -556,36 +1120,111 @@ if sys.version_info >= (3, 10):
556
1120
  patterns: list[pattern]
557
1121
  kwd_attrs: list[_Identifier]
558
1122
  kwd_patterns: list[pattern]
1123
+ if sys.version_info >= (3, 13):
1124
+ def __init__(
1125
+ self,
1126
+ cls: expr,
1127
+ patterns: list[pattern] = ...,
1128
+ kwd_attrs: list[_Identifier] = ...,
1129
+ kwd_patterns: list[pattern] = ...,
1130
+ **kwargs: Unpack[_Attributes[int]],
1131
+ ) -> None: ...
1132
+ else:
1133
+ def __init__(
1134
+ self,
1135
+ cls: expr,
1136
+ patterns: list[pattern],
1137
+ kwd_attrs: list[_Identifier],
1138
+ kwd_patterns: list[pattern],
1139
+ **kwargs: Unpack[_Attributes[int]],
1140
+ ) -> None: ...
559
1141
 
560
1142
  class MatchAs(pattern):
561
1143
  __match_args__ = ("pattern", "name")
562
1144
  pattern: _Pattern | None
563
1145
  name: _Identifier | None
1146
+ def __init__(
1147
+ self, pattern: _Pattern | None = None, name: _Identifier | None = None, **kwargs: Unpack[_Attributes[int]]
1148
+ ) -> None: ...
564
1149
 
565
1150
  class MatchOr(pattern):
566
1151
  __match_args__ = ("patterns",)
567
1152
  patterns: list[pattern]
1153
+ if sys.version_info >= (3, 13):
1154
+ def __init__(self, patterns: list[pattern] = ..., **kwargs: Unpack[_Attributes[int]]) -> None: ...
1155
+ else:
1156
+ def __init__(self, patterns: list[pattern], **kwargs: Unpack[_Attributes[int]]) -> None: ...
568
1157
 
569
1158
  if sys.version_info >= (3, 12):
570
1159
  class type_param(AST):
1160
+ lineno: int
1161
+ col_offset: int
571
1162
  end_lineno: int
572
1163
  end_col_offset: int
1164
+ def __init__(self, **kwargs: Unpack[_Attributes[int]]) -> None: ...
573
1165
 
574
1166
  class TypeVar(type_param):
575
- __match_args__ = ("name", "bound")
1167
+ if sys.version_info >= (3, 13):
1168
+ __match_args__ = ("name", "bound", "default_value")
1169
+ else:
1170
+ __match_args__ = ("name", "bound")
576
1171
  name: _Identifier
577
1172
  bound: expr | None
1173
+ if sys.version_info >= (3, 13):
1174
+ default_value: expr | None
1175
+ def __init__(
1176
+ self,
1177
+ name: _Identifier,
1178
+ bound: expr | None = None,
1179
+ default_value: expr | None = None,
1180
+ **kwargs: Unpack[_Attributes[int]],
1181
+ ) -> None: ...
1182
+ else:
1183
+ def __init__(self, name: _Identifier, bound: expr | None = None, **kwargs: Unpack[_Attributes[int]]) -> None: ...
578
1184
 
579
1185
  class ParamSpec(type_param):
580
- __match_args__ = ("name",)
1186
+ if sys.version_info >= (3, 13):
1187
+ __match_args__ = ("name", "default_value")
1188
+ else:
1189
+ __match_args__ = ("name",)
581
1190
  name: _Identifier
1191
+ if sys.version_info >= (3, 13):
1192
+ default_value: expr | None
1193
+ def __init__(
1194
+ self, name: _Identifier, default_value: expr | None = None, **kwargs: Unpack[_Attributes[int]]
1195
+ ) -> None: ...
1196
+ else:
1197
+ def __init__(self, name: _Identifier, **kwargs: Unpack[_Attributes[int]]) -> None: ...
582
1198
 
583
1199
  class TypeVarTuple(type_param):
584
- __match_args__ = ("name",)
1200
+ if sys.version_info >= (3, 13):
1201
+ __match_args__ = ("name", "default_value")
1202
+ else:
1203
+ __match_args__ = ("name",)
585
1204
  name: _Identifier
1205
+ if sys.version_info >= (3, 13):
1206
+ default_value: expr | None
1207
+ def __init__(
1208
+ self, name: _Identifier, default_value: expr | None = None, **kwargs: Unpack[_Attributes[int]]
1209
+ ) -> None: ...
1210
+ else:
1211
+ def __init__(self, name: _Identifier, **kwargs: Unpack[_Attributes[int]]) -> None: ...
586
1212
 
587
1213
  class TypeAlias(stmt):
588
1214
  __match_args__ = ("name", "type_params", "value")
589
1215
  name: Name
590
1216
  type_params: list[type_param]
591
1217
  value: expr
1218
+ if sys.version_info >= (3, 13):
1219
+ @overload
1220
+ def __init__(
1221
+ self, name: Name, type_params: list[type_param], value: expr, **kwargs: Unpack[_Attributes[int]]
1222
+ ) -> None: ...
1223
+ @overload
1224
+ def __init__(
1225
+ self, name: Name, type_params: list[type_param] = ..., *, value: expr, **kwargs: Unpack[_Attributes[int]]
1226
+ ) -> None: ...
1227
+ else:
1228
+ def __init__(
1229
+ self, name: Name, type_params: list[type_param], value: expr, **kwargs: Unpack[_Attributes[int]]
1230
+ ) -> None: ...