1
- from typing import Any , TypeVar
1
+ from _typeshed import Incomplete
2
+ from collections .abc import Generator
3
+ from typing import Any , Generic , TypeVar
2
4
3
5
from sqlalchemy .orm .query import Query
4
6
from sqlalchemy .orm .session import Session
@@ -16,37 +18,41 @@ class SignallingSession(Session):
16
18
17
19
def get_debug_queries (): ...
18
20
19
- class Pagination :
20
- query : Any
21
- page : Any
22
- per_page : Any
23
- total : Any
21
+ _T = TypeVar ("_T" )
22
+
23
+ class BaseQuery (Query [_T ]):
24
+ def get_or_404 (self , ident , description : Incomplete | None = ...): ...
25
+ def first_or_404 (self , description : Incomplete | None = ...): ...
26
+ def paginate (
27
+ self ,
28
+ page : Incomplete | None = ...,
29
+ per_page : Incomplete | None = ...,
30
+ error_out : bool = ...,
31
+ max_per_page : Incomplete | None = ...,
32
+ ) -> Pagination [_T ]: ...
33
+
34
+ class Pagination (Generic [_T ]):
35
+ query : BaseQuery [_T ] | None
36
+ page : int
37
+ per_page : int
38
+ total : int | None
24
39
items : Any
25
- def __init__ (self , query , page , per_page , total , items ) -> None : ...
40
+ def __init__ (self , query : BaseQuery [ _T ] | None , page : int , per_page : int , total : int | None , items ) -> None : ...
26
41
@property
27
- def pages (self ): ...
28
- def prev (self , error_out : bool = ...): ...
42
+ def pages (self ) -> int : ...
43
+ def prev (self , error_out : bool = ...) -> Pagination [ _T ] : ...
29
44
@property
30
- def prev_num (self ): ...
45
+ def prev_num (self ) -> int | None : ...
31
46
@property
32
- def has_prev (self ): ...
33
- def next (self , error_out : bool = ...): ...
47
+ def has_prev (self ) -> bool : ...
48
+ def next (self , error_out : bool = ...) -> Pagination [ _T ] : ...
34
49
@property
35
- def has_next (self ): ...
50
+ def has_next (self ) -> bool : ...
36
51
@property
37
- def next_num (self ): ...
52
+ def next_num (self ) -> int | None : ...
38
53
def iter_pages (
39
54
self , left_edge : int = ..., left_current : int = ..., right_current : int = ..., right_edge : int = ...
40
- ) -> None : ...
41
-
42
- _T = TypeVar ("_T" )
43
-
44
- class BaseQuery (Query [_T ]):
45
- def get_or_404 (self , ident , description : Any | None = ...): ...
46
- def first_or_404 (self , description : Any | None = ...): ...
47
- def paginate (
48
- self , page : Any | None = ..., per_page : Any | None = ..., error_out : bool = ..., max_per_page : Any | None = ...
49
- ): ...
55
+ ) -> Generator [int | None , None , None ]: ...
50
56
51
57
def get_state (app ): ...
52
58
0 commit comments