Skip to content

Commit 792872d

Browse files
committed
Add type hints
1 parent 4e1a177 commit 792872d

1 file changed

Lines changed: 4 additions & 3 deletions

File tree

rest_framework_simplejwt/backends.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import jwt
22
from django.utils.translation import gettext_lazy as _
3+
from typing import Union
34
from jwt import InvalidAlgorithmError, InvalidTokenError, algorithms
45
from datetime import timedelta
56
from .exceptions import TokenBackendError
@@ -34,7 +35,7 @@ def __init__(
3435
audience=None,
3536
issuer=None,
3637
jwk_url: str = None,
37-
leeway=None,
38+
leeway: Union[float, int, timedelta] = None,
3839
):
3940
self._validate_algorithm(algorithm)
4041

@@ -68,7 +69,7 @@ def _validate_algorithm(self, algorithm):
6869
)
6970
)
7071

71-
def get_leeway(self):
72+
def get_leeway(self) -> timedelta:
7273
if self.leeway is None:
7374
return timedelta(seconds=0)
7475
elif isinstance(self.leeway, (int, float)):
@@ -77,7 +78,7 @@ def get_leeway(self):
7778
return self.leeway
7879
else:
7980
raise TokenBackendError(
80-
format_lazy(_("Unrecognized type '{}', 'leeway' must be of type int or timedelta."),
81+
format_lazy(_("Unrecognized type '{}', 'leeway' must be of type int, float or timedelta."),
8182
type(self.leeway)
8283
)
8384
)

0 commit comments

Comments
 (0)