
    E#i                     J    S r SSKJrJr  SSKJrJr  SSKJr   " S S\5      r	g)	z3Module with interface for address encoding classes.    )ABCabstractmethod)AnyUnion   )
IPublicKeyc                   L    \ rS rSrSr\\S\\\	4   S\
S\4S j5       5       rSrg)	IAddrEncoder   zAddress encoder interface.pub_keykwargsreturnc                     g)ap  
Encode public key to address.

Args:
    pub_key (bytes or IPublicKey): Public key bytes or object
    **kwargs                     : Arbitrary arguments depending on the address type

Returns:
    str: Address string

Raised:
    ValueError: If the public key is not valid
    TypeError: If the public key is not of the correct type (it depends on the address type)
N )r   r   s     i/home/james-whalen/.local/lib/python3.13/site-packages/ccxt/static_dependencies/bip/addr/iaddr_encoder.py	EncodeKeyIAddrEncoder.EncodeKey!   s        r   N)__name__
__module____qualname____firstlineno____doc__staticmethodr   r   bytesr   r   strr   __static_attributes__r   r   r   r
   r
      s@    $5
!23 $'  r   r
   N)
r   abcr   r   typingr   r   eccr   r
   r   r   r   <module>r!      s!   * : $  3 r   