@@ -28,6 +28,9 @@ from pygame.typing import Point, RectLike
2828
2929from typing_extensions import deprecated # added in 3.13
3030
31+ # generic for _HasRect, used in sprite collide functions
32+ _THasRect = TypeVar ("_THasRect" , bound = _HasRect )
33+
3134# non-generic Group, used in Sprite
3235_Group = AbstractGroup [_SpriteSupportsGroup ]
3336
@@ -291,10 +294,10 @@ def collide_mask(
291294 left : _SupportsCollideMask , right : _SupportsCollideMask
292295) -> Optional [tuple [int , int ]]: ...
293296def spritecollide (
294- sprite : _HasRect ,
297+ sprite : _THasRect ,
295298 group : AbstractGroup [_TSprite ],
296299 dokill : bool ,
297- collided : Optional [Callable [[_TSprite , _TSprite2 ], Any ]] = None ,
300+ collided : Optional [Callable [[_THasRect , _TSprite ], Any ]] = None ,
298301) -> list [_TSprite ]: ...
299302def groupcollide (
300303 groupa : AbstractGroup [_TSprite ],
@@ -304,7 +307,7 @@ def groupcollide(
304307 collided : Optional [Callable [[_TSprite , _TSprite2 ], Any ]] = None ,
305308) -> dict [_TSprite , list [_TSprite2 ]]: ...
306309def spritecollideany (
307- sprite : _HasRect ,
310+ sprite : _THasRect ,
308311 group : AbstractGroup [_TSprite ],
309- collided : Optional [Callable [[_TSprite , _TSprite2 ], Any ]] = None ,
312+ collided : Optional [Callable [[_THasRect , _TSprite ], Any ]] = None ,
310313) -> Optional [_TSprite ]: ...
0 commit comments