@@ -2,9 +2,9 @@ import _typeshed
22import sys
33import types
44from _typeshed import SupportsKeysAndGetItem , Unused
5- from builtins import property as _builtins_property
5+ from builtins import _NegativeInteger , _PositiveInteger , property as _builtins_property
66from collections .abc import Callable , Iterable , Iterator , Mapping
7- from typing import Any , Final , Generic , Literal , TypeVar , overload
7+ from typing import Any , Final , Generic , Literal , SupportsIndex , TypeVar , final , overload
88from typing_extensions import Self , TypeAlias , disjoint_base
99
1010__all__ = ["EnumMeta" , "Enum" , "IntEnum" , "Flag" , "IntFlag" , "auto" , "unique" ]
@@ -233,7 +233,121 @@ if sys.version_info >= (3, 12):
233233 _value_ : int
234234 @_magic_enum_attr
235235 def value (self ) -> int : ...
236+ @final
236237 def __new__ (cls , value : int ) -> Self : ...
238+ @final
239+ def __add__ (self , value : int , / ) -> int : ...
240+ @final
241+ def __sub__ (self , value : int , / ) -> int : ...
242+ @final
243+ def __mul__ (self , value : int , / ) -> int : ...
244+ @final
245+ def __floordiv__ (self , value : int , / ) -> int : ...
246+ @final
247+ def __truediv__ (self , value : int , / ) -> float : ...
248+ @final
249+ def __mod__ (self , value : int , / ) -> int : ...
250+ @final
251+ def __divmod__ (self , value : int , / ) -> tuple [int , int ]: ...
252+ @final
253+ def __radd__ (self , value : int , / ) -> int : ...
254+ @final
255+ def __rsub__ (self , value : int , / ) -> int : ...
256+ @final
257+ def __rmul__ (self , value : int , / ) -> int : ...
258+ @final
259+ def __rfloordiv__ (self , value : int , / ) -> int : ...
260+ @final
261+ def __rtruediv__ (self , value : int , / ) -> float : ...
262+ @final
263+ def __rmod__ (self , value : int , / ) -> int : ...
264+ @final
265+ def __rdivmod__ (self , value : int , / ) -> tuple [int , int ]: ...
266+ @overload
267+ @final
268+ def __pow__ (self , x : Literal [0 ], / ) -> Literal [1 ]: ...
269+ @overload
270+ @final
271+ def __pow__ (self , value : Literal [0 ], mod : None , / ) -> Literal [1 ]: ...
272+ @overload
273+ @final
274+ def __pow__ (self , value : _PositiveInteger , mod : None = None , / ) -> int : ...
275+ @overload
276+ @final
277+ def __pow__ (self , value : _NegativeInteger , mod : None = None , / ) -> float : ...
278+ # positive __value -> int; negative __value -> float
279+ # return type must be Any as `int | float` causes too many false-positive errors
280+ @overload
281+ @final
282+ def __pow__ (self , value : int , mod : None = None , / ) -> Any : ...
283+ @overload
284+ @final
285+ def __pow__ (self , value : int , mod : int , / ) -> int : ...
286+ @final
287+ def __rpow__ (self , value : int , mod : int | None = None , / ) -> Any : ...
288+ @final
289+ def __and__ (self , value : int , / ) -> int : ...
290+ @final
291+ def __or__ (self , value : int , / ) -> int : ...
292+ @final
293+ def __xor__ (self , value : int , / ) -> int : ...
294+ @final
295+ def __lshift__ (self , value : int , / ) -> int : ...
296+ @final
297+ def __rshift__ (self , value : int , / ) -> int : ...
298+ @final
299+ def __rand__ (self , value : int , / ) -> int : ...
300+ @final
301+ def __ror__ (self , value : int , / ) -> int : ...
302+ @final
303+ def __rxor__ (self , value : int , / ) -> int : ...
304+ @final
305+ def __rlshift__ (self , value : int , / ) -> int : ...
306+ @final
307+ def __rrshift__ (self , value : int , / ) -> int : ...
308+ @final
309+ def __neg__ (self ) -> int : ...
310+ @final
311+ def __pos__ (self ) -> int : ...
312+ @final
313+ def __invert__ (self ) -> int : ...
314+ @final
315+ def __trunc__ (self ) -> int : ...
316+ @final
317+ def __ceil__ (self ) -> int : ...
318+ @final
319+ def __floor__ (self ) -> int : ...
320+ if sys .version_info >= (3 , 14 ):
321+ @final
322+ def __round__ (self , ndigits : SupportsIndex | None = None , / ) -> int : ...
323+ else :
324+ @final
325+ def __round__ (self , ndigits : SupportsIndex = ..., / ) -> int : ...
326+
327+ @final
328+ def __eq__ (self , value : object , / ) -> bool : ...
329+ @final
330+ def __ne__ (self , value : object , / ) -> bool : ...
331+ @final
332+ def __lt__ (self , value : int , / ) -> bool : ...
333+ @final
334+ def __le__ (self , value : int , / ) -> bool : ...
335+ @final
336+ def __gt__ (self , value : int , / ) -> bool : ...
337+ @final
338+ def __ge__ (self , value : int , / ) -> bool : ...
339+ @final
340+ def __float__ (self ) -> float : ...
341+ @final
342+ def __int__ (self ) -> int : ...
343+ @final
344+ def __abs__ (self ) -> int : ...
345+ @final
346+ def __hash__ (self ) -> int : ...
347+ @final
348+ def __bool__ (self ) -> bool : ...
349+ @final
350+ def __index__ (self ) -> int : ...
237351
238352else :
239353 if sys .version_info >= (3 , 11 ):
0 commit comments