+
    i                    b    ^ RI Ht ^ RIHt ^RIHtHtHt ]'       d   ^RIH	t	  ! R R4      t
R# )    )annotations)TYPE_CHECKING)APIKeyGeneratedAPIKey	APILimits)KalshiClientc                  j    ] tR t^	tRtR R ltR R ltRR R lltRR	 R
 lltR R lt	R R lt
RtR# )APIKeysz&API key management and account limits.c                    V ^8  d   QhRRRR/# )   clientr   returnNone )formats   "X/home/wkmabra/.openclaw/workspace/venv/lib/python3.14/site-packages/pykalshi/api_keys.py__annotate__APIKeys.__annotate__   s      |      c                	    Wn         R # N_client)selfr   s   &&r   __init__APIKeys.__init__   s    r   c                   V ^8  d   QhRR/# )r   r   zlist[APIKey]r   )r   s   "r   r   r      s     L Ll Lr   c                    V P                   P                  R4      pVP                  R. 4       Uu. uF  p\        P                  ! V4      NK  	  up# u upi )z#List all API keys for this account.	/api_keysapi_keys)r   getr   model_validate)r   dataks   &  r   listAPIKeys.list   sF    ||,26((:r2JK2JQ%%a(2JKKKs   ANc               $    V ^8  d   QhRRRRRR/# )r   
public_keystrname
str | Noner   r   )r   s   "r   r   r      s!     " " "J "# "r   c                l    RV/pV'       d   W#R&   V P                   P                  RV4      pVR,          # )zCreate an API key with a provided RSA public key.

Args:
    public_key: PEM-encoded RSA public key.
    name: Optional name for the key.

Returns:
    The API key ID string.
r(   r*   r   
api_key_id)r   post)r   r(   r*   bodyr#   s   &&&  r   createAPIKeys.create   s9     #J/L||  d3L!!r   c                    V ^8  d   QhRRRR/# )r   r*   r+   r   r   r   )r   s   "r   r   r   $   s     4 4Z 4? 4r   c                    / pV'       d   WR&   V P                   P                  RV4      p\        P                  ! V4      # )zGenerate a new API key pair (Kalshi creates both keys).

Returns a GeneratedAPIKey with the private_key field populated.
The private key is only returned ONCE - store it securely.

Args:
    name: Optional name for the key.
r*   z/api_keys/generate)r   r.   r   r"   )r   r*   r/   r#   s   &&  r   generateAPIKeys.generate$   s;     L||  !5t<--d33r   c                    V ^8  d   QhRRRR/# )r   key_idr)   r   r   r   )r   s   "r   r   r   3   s     3 3S 3T 3r   c                B    V P                   P                  RV 24       R# )z@Delete an API key.

Args:
    key_id: The API key ID to delete.
z
/api_keys/N)r   delete)r   r7   s   &&r   r9   APIKeys.delete3   s     	j12r   c                   V ^8  d   QhRR/# )r   r   r   r   )r   s   "r   r   r   ;   s     . .I .r   c                d    V P                   P                  R4      p\        P                  ! V4      # )z%Get API rate limits for this account.z/account/limits)r   r!   r   r"   )r   r#   s   & r   
get_limitsAPIKeys.get_limits;   s(    || 12''--r   r   r   )__name__
__module____qualname____firstlineno____doc__r   r%   r0   r4   r9   r=   __static_attributes__r   r   r   r
   r
   	   s)    0L
" 43. .r   r
   N)
__future__r   typingr   modelsr   r   r   r   r   r
   r   r   r   <module>rH      s!    "   6 6$5. 5.r   