Skip to content

Commit 8aaedaf

Browse files
committed
fix: improve jwk.import_key and jwk.generate_key type hints
1 parent ab682f8 commit 8aaedaf

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

src/joserfc/jwk.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,9 @@ def import_key(data: AnyKey, key_type: t.Literal["OKP"], parameters: KeyParamete
105105

106106

107107
def import_key(
108-
data: AnyKey, key_type: t.Literal["oct", "RSA", "EC", "OKP"] | None = None, parameters: KeyParameters | None = None
108+
data: AnyKey,
109+
key_type: t.Literal["oct", "RSA", "EC", "OKP"] | None = None,
110+
parameters: KeyParameters | None = None,
109111
) -> Key:
110112
"""Importing a key from bytes, string, and dict. When ``value`` is a dict,
111113
this method can tell the key type automatically, otherwise, developers
@@ -122,7 +124,7 @@ def import_key(
122124
@t.overload
123125
def generate_key(
124126
key_type: t.Literal["oct"],
125-
crv_or_size: str | int | None = None,
127+
crv_or_size: int | None = None,
126128
parameters: KeyParameters | None = None,
127129
private: bool = True,
128130
auto_kid: bool = False,
@@ -132,7 +134,7 @@ def generate_key(
132134
@t.overload
133135
def generate_key(
134136
key_type: t.Literal["RSA"],
135-
crv_or_size: str | int | None = None,
137+
crv_or_size: int | None = None,
136138
parameters: KeyParameters | None = None,
137139
private: bool = True,
138140
auto_kid: bool = False,
@@ -142,7 +144,7 @@ def generate_key(
142144
@t.overload
143145
def generate_key(
144146
key_type: t.Literal["EC"],
145-
crv_or_size: str | int | None = None,
147+
crv_or_size: t.Literal["P-256", "P-384", "P-521", "secp256k1"] | None = None,
146148
parameters: KeyParameters | None = None,
147149
private: bool = True,
148150
auto_kid: bool = False,
@@ -152,7 +154,7 @@ def generate_key(
152154
@t.overload
153155
def generate_key(
154156
key_type: t.Literal["OKP"],
155-
crv_or_size: str | int | None = None,
157+
crv_or_size: t.Literal["Ed25519", "Ed448", "X25519", "X448"] | None = None,
156158
parameters: KeyParameters | None = None,
157159
private: bool = True,
158160
auto_kid: bool = False,

0 commit comments

Comments
 (0)