Skip to content

Commit 7bf399b

Browse files
committed
fix: add type signatures for statements
1 parent 261c578 commit 7bf399b

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

sqlspec/statement/filters.py

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,11 @@ class BeforeAfterFilter(StatementFilter):
8888

8989
__slots__ = ("_param_name_after", "_param_name_before", "after", "before", "field_name")
9090

91+
# Explicit property declarations for better IDE/linter support
92+
field_name: str
93+
before: Optional[datetime]
94+
after: Optional[datetime]
95+
9196
def __init__(self, field_name: str, before: Optional[datetime] = None, after: Optional[datetime] = None) -> None:
9297
"""Initialize the BeforeAfterFilter.
9398
@@ -150,6 +155,11 @@ class OnBeforeAfterFilter(StatementFilter):
150155

151156
__slots__ = ("_param_name_on_or_after", "_param_name_on_or_before", "field_name", "on_or_after", "on_or_before")
152157

158+
# Explicit property declarations for better IDE/linter support
159+
field_name: str
160+
on_or_before: Optional[datetime]
161+
on_or_after: Optional[datetime]
162+
153163
def __init__(
154164
self, field_name: str, on_or_before: Optional[datetime] = None, on_or_after: Optional[datetime] = None
155165
) -> None:
@@ -231,6 +241,10 @@ class InCollectionFilter(InAnyFilter[T]):
231241

232242
__slots__ = ("_param_names", "field_name", "values")
233243

244+
# Explicit property declarations for better IDE/linter support
245+
field_name: str
246+
values: Optional[abc.Collection[T]]
247+
234248
def __init__(self, field_name: str, values: Optional[abc.Collection[T]]) -> None:
235249
"""Initialize the InCollectionFilter.
236250
@@ -285,6 +299,10 @@ class NotInCollectionFilter(InAnyFilter[T]):
285299

286300
__slots__ = ("_param_names", "field_name", "values")
287301

302+
# Explicit property declarations for better IDE/linter support
303+
field_name: str
304+
values: Optional[abc.Collection[T]]
305+
288306
def __init__(self, field_name: str, values: Optional[abc.Collection[T]]) -> None:
289307
"""Initialize the NotInCollectionFilter.
290308
@@ -337,6 +355,10 @@ class AnyCollectionFilter(InAnyFilter[T]):
337355

338356
__slots__ = ("_param_names", "field_name", "values")
339357

358+
# Explicit property declarations for better IDE/linter support
359+
field_name: str
360+
values: Optional[abc.Collection[T]]
361+
340362
def __init__(self, field_name: str, values: Optional[abc.Collection[T]]) -> None:
341363
"""Initialize the AnyCollectionFilter.
342364
@@ -462,6 +484,10 @@ class LimitOffsetFilter(PaginationFilter):
462484

463485
__slots__ = ("_limit_param_name", "_offset_param_name", "limit", "offset")
464486

487+
# Explicit property declarations for better IDE/linter support
488+
limit: int
489+
offset: int
490+
465491
def __init__(self, limit: int, offset: int) -> None:
466492
"""Initialize the LimitOffsetFilter.
467493
@@ -524,6 +550,10 @@ class OrderByFilter(StatementFilter):
524550

525551
__slots__ = ("field_name", "sort_order")
526552

553+
# Explicit property declarations for better IDE/linter support
554+
field_name: str
555+
sort_order: Literal["asc", "desc"]
556+
527557
def __init__(self, field_name: str, sort_order: Literal["asc", "desc"] = "asc") -> None:
528558
"""Initialize the OrderByFilter.
529559
@@ -571,6 +601,11 @@ class SearchFilter(StatementFilter):
571601

572602
__slots__ = ("_param_name", "field_name", "ignore_case", "value")
573603

604+
# Explicit property declarations for better IDE/linter support
605+
field_name: Union[str, set[str]]
606+
value: str
607+
ignore_case: Optional[bool]
608+
574609
def __init__(self, field_name: Union[str, set[str]], value: str, ignore_case: Optional[bool] = False) -> None:
575610
"""Initialize the SearchFilter.
576611
@@ -706,6 +741,12 @@ class OffsetPagination(Generic[T]):
706741

707742
__slots__ = ("items", "limit", "offset", "total")
708743

744+
# Explicit property declarations for better IDE/linter support
745+
items: Sequence[T]
746+
limit: int
747+
offset: int
748+
total: int
749+
709750
def __init__(self, items: Sequence[T], limit: int, offset: int, total: int) -> None:
710751
"""Initialize OffsetPagination.
711752

0 commit comments

Comments
 (0)