__init__.pyi 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. from typing import overload
  2. from typing_extensions import Literal
  3. from Crypto.Hash.SHA1 import SHA1Hash
  4. from Crypto.Hash.SHA224 import SHA224Hash
  5. from Crypto.Hash.SHA256 import SHA256Hash
  6. from Crypto.Hash.SHA384 import SHA384Hash
  7. from Crypto.Hash.SHA512 import SHA512Hash
  8. from Crypto.Hash.SHA3_224 import SHA3_224_Hash
  9. from Crypto.Hash.SHA3_256 import SHA3_256_Hash
  10. from Crypto.Hash.SHA3_384 import SHA3_384_Hash
  11. from Crypto.Hash.SHA3_512 import SHA3_512_Hash
  12. @overload
  13. def new(name: Literal["1.3.14.3.2.26"]) -> SHA1Hash: ...
  14. @overload
  15. def new(name: Literal["SHA1"]) -> SHA1Hash: ...
  16. @overload
  17. def new(name: Literal["2.16.840.1.101.3.4.2.4"]) -> SHA224Hash: ...
  18. @overload
  19. def new(name: Literal["SHA224"]) -> SHA224Hash: ...
  20. @overload
  21. def new(name: Literal["2.16.840.1.101.3.4.2.1"]) -> SHA256Hash: ...
  22. @overload
  23. def new(name: Literal["SHA256"]) -> SHA256Hash: ...
  24. @overload
  25. def new(name: Literal["2.16.840.1.101.3.4.2.2"]) -> SHA384Hash: ...
  26. @overload
  27. def new(name: Literal["SHA384"]) -> SHA384Hash: ...
  28. @overload
  29. def new(name: Literal["2.16.840.1.101.3.4.2.3"]) -> SHA512Hash: ...
  30. @overload
  31. def new(name: Literal["SHA512"]) -> SHA512Hash: ...
  32. @overload
  33. def new(name: Literal["2.16.840.1.101.3.4.2.5"]) -> SHA512Hash: ...
  34. @overload
  35. def new(name: Literal["SHA512-224"]) -> SHA512Hash: ...
  36. @overload
  37. def new(name: Literal["2.16.840.1.101.3.4.2.6"]) -> SHA512Hash: ...
  38. @overload
  39. def new(name: Literal["SHA512-256"]) -> SHA512Hash: ...
  40. @overload
  41. def new(name: Literal["2.16.840.1.101.3.4.2.7"]) -> SHA3_224_Hash: ...
  42. @overload
  43. def new(name: Literal["SHA3-224"]) -> SHA3_224_Hash: ...
  44. @overload
  45. def new(name: Literal["2.16.840.1.101.3.4.2.8"]) -> SHA3_256_Hash: ...
  46. @overload
  47. def new(name: Literal["SHA3-256"]) -> SHA3_256_Hash: ...
  48. @overload
  49. def new(name: Literal["2.16.840.1.101.3.4.2.9"]) -> SHA3_384_Hash: ...
  50. @overload
  51. def new(name: Literal["SHA3-384"]) -> SHA3_384_Hash: ...
  52. @overload
  53. def new(name: Literal["2.16.840.1.101.3.4.2.10"]) -> SHA3_512_Hash: ...
  54. @overload
  55. def new(name: Literal["SHA3-512"]) -> SHA3_512_Hash: ...