|
2 | 2 | import uuid |
3 | 3 | from dataclasses import asdict, dataclass, field |
4 | 4 | from dataclasses import fields as get_fields |
5 | | -from typing import Any, Optional, TypeVar, Union |
| 5 | +from typing import Any, List, Mapping, Optional, Set, TypeVar, Union |
6 | 6 |
|
7 | 7 | from tls_requests.models.encoders import StreamEncoder |
8 | 8 | from tls_requests.models.libraries import TLSLibrary |
@@ -178,7 +178,7 @@ class _BaseConfig: |
178 | 178 | """Base configuration for TLSSession""" |
179 | 179 |
|
180 | 180 | @classmethod |
181 | | - def model_fields_set(cls) -> set[str]: |
| 181 | + def model_fields_set(cls) -> Set[str]: |
182 | 182 | return { |
183 | 183 | model_field.name |
184 | 184 | for model_field in get_fields(cls) |
@@ -341,19 +341,19 @@ class CustomTLSClientConfig(_BaseConfig): |
341 | 341 |
|
342 | 342 | """ |
343 | 343 |
|
344 | | - alpnProtocols: list[str] = None |
345 | | - alpsProtocols: list[str] = None |
| 344 | + alpnProtocols: List[str] = None |
| 345 | + alpsProtocols: List[str] = None |
346 | 346 | certCompressionAlgo: str = None |
347 | 347 | connectionFlow: int = None |
348 | | - h2Settings: list[str] = None |
349 | | - h2SettingsOrder: list[str] = None |
350 | | - headerPriority: list[str] = None |
| 348 | + h2Settings: List[str] = None |
| 349 | + h2SettingsOrder: List[str] = None |
| 350 | + headerPriority: List[str] = None |
351 | 351 | ja3String: str = None |
352 | | - keyShareCurves: list[str] = None |
353 | | - priorityFrames: list[str] = None |
354 | | - pseudoHeaderOrder: list[str] = None |
355 | | - supportedSignatureAlgorithms: list[str] = None |
356 | | - supportedVersions: list[str] = None |
| 352 | + keyShareCurves: List[str] = None |
| 353 | + priorityFrames: List[str] = None |
| 354 | + pseudoHeaderOrder: List[str] = None |
| 355 | + supportedSignatureAlgorithms: List[str] = None |
| 356 | + supportedVersions: List[str] = None |
357 | 357 |
|
358 | 358 |
|
359 | 359 | @dataclass |
@@ -424,19 +424,19 @@ class TLSConfig(_BaseConfig): |
424 | 424 | """ |
425 | 425 |
|
426 | 426 | catchPanics: bool = False |
427 | | - certificatePinningHosts: dict[str, str] = field(default_factory=dict) |
| 427 | + certificatePinningHosts: Mapping[str, str] = field(default_factory=dict) |
428 | 428 | customTlsClient: Optional[CustomTLSClientConfig] = None |
429 | 429 | followRedirects: bool = False |
430 | 430 | forceHttp1: bool = False |
431 | | - headerOrder: list[str] = field(default_factory=list) |
432 | | - headers: dict[str, str] = field(default_factory=dict) |
| 431 | + headerOrder: List[str] = field(default_factory=list) |
| 432 | + headers: Mapping[str, str] = field(default_factory=dict) |
433 | 433 | insecureSkipVerify: bool = False |
434 | 434 | isByteRequest: bool = False |
435 | 435 | isByteResponse: bool = True |
436 | 436 | isRotatingProxy: bool = False |
437 | 437 | proxyUrl: str = "" |
438 | 438 | requestBody: Union[str, bytes, bytearray, None] = None |
439 | | - requestCookies: list[TLSRequestCookiesConfig] = field(default_factory=list) |
| 439 | + requestCookies: List[TLSRequestCookiesConfig] = field(default_factory=list) |
440 | 440 | requestMethod: MethodTypes = None |
441 | 441 | requestUrl: Optional[str] = None |
442 | 442 | sessionId: str = field(default_factory=lambda: str(uuid.uuid4())) |
@@ -471,7 +471,7 @@ def to_dict(self) -> dict: |
471 | 471 | def copy_with( |
472 | 472 | self, |
473 | 473 | session_id: str = None, |
474 | | - headers: dict[str, str] = None, |
| 474 | + headers: Mapping[str, str] = None, |
475 | 475 | cookies: TLSCookiesTypes = None, |
476 | 476 | method: MethodTypes = None, |
477 | 477 | url: URLTypes = None, |
@@ -515,7 +515,7 @@ def copy_with( |
515 | 515 | def from_kwargs( |
516 | 516 | cls, |
517 | 517 | session_id: str = None, |
518 | | - headers: dict[str, str] = None, |
| 518 | + headers: Mapping[str, str] = None, |
519 | 519 | cookies: TLSCookiesTypes = None, |
520 | 520 | method: MethodTypes = None, |
521 | 521 | url: URLTypes = None, |
|
0 commit comments