@@ -6,12 +6,9 @@ from collections.abc import (
66from typing import (
77 Literal ,
88 Never ,
9- TypeVar ,
109 overload ,
1110)
1211
13- from pandas .core .frame import DataFrame
14- from pandas .core .generic import NDFrame
1512from pandas .core .series import Series
1613
1714from pandas ._typing import (
@@ -22,10 +19,9 @@ from pandas._typing import (
2219 HashableT2 ,
2320 HashableT3 ,
2421 HashableT4 ,
22+ NDFrameT ,
2523)
2624
27- DataFrameT0 = TypeVar ("DataFrameT0" , bound = DataFrame )
28-
2925@overload
3026def concat (
3127 objs : Iterable [None ] | Mapping [HashableT1 , None ],
@@ -40,7 +36,7 @@ def concat(
4036 sort : bool = False ,
4137) -> Never : ...
4238@overload
43- def concat ( # type: ignore[overload-overlap] # pyright: ignore[reportOverlappingOverload]
39+ def concat (
4440 objs : Iterable [Series [S2 ] | None ] | Mapping [HashableT1 , Series [S2 ] | None ],
4541 * ,
4642 axis : AxisIndex = 0 ,
@@ -67,20 +63,7 @@ def concat( # type: ignore[overload-overlap]
6763) -> Series : ...
6864@overload
6965def concat (
70- objs : Iterable [DataFrameT0 | None ],
71- * ,
72- axis : Axis = 0 ,
73- join : Literal ["inner" , "outer" ] = "outer" ,
74- ignore_index : bool = False ,
75- keys : Iterable [HashableT2 ] | None = None ,
76- levels : Sequence [list [HashableT3 ] | tuple [HashableT3 , ...]] | None = None ,
77- names : list [HashableT4 ] | None = None ,
78- verify_integrity : bool = False ,
79- sort : bool = False ,
80- ) -> DataFrameT0 : ...
81- @overload
82- def concat (
83- objs : Iterable [NDFrame | None ] | Mapping [HashableT1 , NDFrame | None ],
66+ objs : Iterable [NDFrameT | None ] | Mapping [HashableT1 , NDFrameT | None ],
8467 * ,
8568 axis : Axis = 0 ,
8669 join : Literal ["inner" , "outer" ] = "outer" ,
@@ -90,4 +73,18 @@ def concat(
9073 names : list [HashableT4 ] | None = None ,
9174 verify_integrity : bool = False ,
9275 sort : bool = False ,
93- ) -> DataFrame : ...
76+ ) -> NDFrameT : ...
77+
78+ # @overload
79+ # def concat(
80+ # objs: Iterable[NDFrame | None] | Mapping[HashableT1, NDFrame | None],
81+ # *,
82+ # axis: Axis = 0,
83+ # join: Literal["inner", "outer"] = "outer",
84+ # ignore_index: bool = False,
85+ # keys: Iterable[HashableT2] | None = None,
86+ # levels: Sequence[list[HashableT3] | tuple[HashableT3, ...]] | None = None,
87+ # names: list[HashableT4] | None = None,
88+ # verify_integrity: bool = False,
89+ # sort: bool = False,
90+ # ) -> DataFrame: ...
0 commit comments