File: D:/Python311/Lib/site-packages/pip/_internal/utils/__pycache__/hashes.cpython-311.pyc
�
�mi� � � � d dl mZ d dlZd dlmZ d dlmZmZmZ d dl m
Z
mZmZ d dl
mZ erd dlmZ dZg d �Z G d
� d� � Z G d� d
e� � ZdS )� )�annotationsN)�Iterable)�
TYPE_CHECKING�BinaryIO�NoReturn)�HashMismatch�HashMissing�InstallationError)�read_chunks)�_Hash�sha256)r
�sha384�sha512c � � e Zd ZdZd#d$d�Zd%d �Zed&d�� � Zd'd�Zd(d�Z d)d�Z
d*d�Zd+d�Zd,d�Z
d-d�Zd.d!�Zd&d"�ZdS )/�HasheszaA wrapper that builds multiple hashes at once and checks them against
known-good values
N�hashes�dict[str, list[str]] | None�return�Nonec � � i }|�6|� � � D ]!\ }}d� t |� � D � � ||<