
    cjhw                   F   U d Z ddlmZ ddlZddlZddlZddlZddlmZm	Z	m
Z
mZmZmZ ddlmZ ddlZddlmZmZ ddlmZmZmZmZmZmZmZ dd	lmZ dd
lmZm Z   ejB                  e"      Z#erxddl$m%Z% ddl&m'Z'm(Z( ddl)m*Z* ddl$m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZD ddlEmFZFmGZG  ed      ZH edeI      ZJ edd      ZKe
e	e	eHf   ZLdZMdeNd<   ddZO G d d      ZP G d d      ZQdej                  _S         G d d      ZTy) ae  
The MIT License (MIT)

Copyright (c) 2015-2021 Rapptz
Copyright (c) 2021-present Pycord Development

Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
    )annotationsN)TYPE_CHECKINGAny	CoroutineIterableSequenceTypeVar)quote   )__version__utils)DiscordServerError	ForbiddenGatewayNotFoundHTTPExceptionInvalidArgumentLoginFailureNotFound)DiscordClientWebSocketResponse)MISSINGwarn_deprecated)TracebackType)AuditLogActionInteractionResponseType)File)appinfoapplication_role_connection	audit_logautomodchannel
componentsembedemojiguildintegrationinteractionsinvitemembermessagemonetization
onboardingpollrolescheduled_eventsstickertemplatethreadsuserwebhookwelcome_screenwidget)	SnowflakeSnowflakeListTBE)boundMUMaybeUnlock
   intAPI_VERSIONc                   K   | j                  d       d {   }	 | j                  d   dk(  rt        j                  |      S 	 |S 7 /# t        $ r Y |S w xY ww)Nzutf-8)encodingzcontent-typeapplication/json)textheadersr   
_from_jsonKeyError)responserC   s     ?/var/www/html/venv/lib/python3.12/site-packages/discord/http.pyjson_or_textrI   _   sm     00DN+/AA##D)) B K 1  K	s8   AAA&A
 AA
	AAAAc                  8    e Zd ZddZedd       Zedd       Zy)Routec                   || _         || _        | j                  | j                   z   }|rN|j                  |j	                         D ci c]#  \  }}|t        |t              rt        |      n|% c}}      }|| _        |j                  d      | _
        |j                  d      | _        |j                  d      | _        |j                  d      | _        y c c}}w )N
channel_idguild_id
webhook_idwebhook_token)pathmethodbase
format_mapitems
isinstancestr	_uriquoteurlgetrM   rN   rO   rP   )selfrR   rQ   
parametersrY   kvs          rH   __init__zRoute.__init__l   s    	!ii$))#.. !+ 0 0 21 z!S'9y|q@C  -7NN<,H*4..*D,6NN<,H)3)Hs   (C
c                    dt          S )Nzhttps://discord.com/api/v)r?   r[   s    rH   rS   z
Route.base   s    *;-88    c                R    | j                    d| j                   d| j                   S )N:)rM   rN   rQ   ra   s    rH   bucketzRoute.bucket   s(     //"!DMM?!DII;??rb   N)rR   rW   rQ   rW   r\   r   returnNone)rf   rW   )__name__
__module____qualname__r_   propertyrS   re    rb   rH   rK   rK   k   s2    I& 9 9 @ @rb   rK   c                  <    e Zd ZddZddZddZ	 	 	 	 	 	 	 	 d	dZy)
r<   c                     || _         d| _        y )NT)lock_unlock)r[   ro   s     rH   r_   zMaybeUnlock.__init__   s    "&	!rb   c                    | S Nrl   ra   s    rH   	__enter__zMaybeUnlock.__enter__   s    rb   c                    d| _         y )NF)rp   ra   s    rH   deferzMaybeUnlock.defer   s	    rb   c                R    | j                   r| j                  j                          y y rr   )rp   ro   release)r[   exc_typeexc	tracebacks       rH   __exit__zMaybeUnlock.__exit__   s      <<II rb   N)ro   zasyncio.Lockrf   rg   )r[   r;   rf   r;   rf   rg   )rx   ztype[BE] | Nonery   z	BE | Nonerz   zTracebackType | Nonerf   rg   )rh   ri   rj   r_   rs   ru   r{   rl   rb   rH   r<   r<      s<    " !    (	 
 
 rb   	websocketc                     e Zd ZdZ	 dddddd	 	 	 	 	 	 	 	 	 	 	 ddZddZdddd	Zddd
	 	 	 	 	 	 	 	 	 ddZddZddZ	ddZ
ddZ	 	 	 	 	 	 ddZddZddZdddddddddddd	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ddZddZddddddddddddd	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ddZddddddddddddd	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ddZ	 	 	 	 	 	 ddZ	 	 	 	 	 	 	 	 ddZdd	 	 	 	 	 	 	 ddZdd	 	 	 	 	 	 	 ddZ	 	 	 	 	 	 	 	 ddZ	 	 	 	 	 	 	 	 dd Z	 	 	 	 	 	 	 	 	 	 dd!Z	 	 	 	 	 	 	 	 dd"Z	 	 d	 	 	 	 	 	 	 	 	 	 	 	 	 dd#Z	 	 	 	 	 	 dd$Z	 	 	 	 	 	 	 	 dd%Z	 	 	 	 	 	 dd&Zdd'Z	 	 	 d	 	 	 	 	 	 	 	 	 	 	 dd(Z 	 	 	 	 	 	 dd)Z!	 d	 	 	 	 	 	 	 dd*Z"	 d	 	 	 	 	 	 	 dd+Z#dd,Z$	 d	 	 	 	 	 	 	 dd-Z%	 	 d	 	 	 	 	 	 	 	 	 dd.Z&	 	 d	 	 	 	 	 	 	 	 	 dd/Z'dd	 	 	 	 	 	 	 dd0Z(dddd1	 	 	 	 	 	 	 	 	 	 	 dd2Z)dd3Z*dd	 	 	 	 	 	 	 dd4Z+dd	 	 	 	 	 	 	 	 	 dd5Z,	 	 	 	 	 	 dd6Z-	 	 	 	 	 	 	 	 dd7Z.dd	 	 	 	 	 	 	 	 	 dd8Z/dd	 	 	 	 	 	 	 dd9Z0dd	 	 	 	 	 	 	 dd:Z1dd	 	 	 	 	 	 	 	 	 dd;Z2dd	 	 	 	 	 dd<Z3dd	 	 	 	 	 	 	 	 	 	 	 	 	 dd=Z4dd	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd>Z5ddddddddddd?
	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd@Z6ddAZ7	 	 	 	 	 	 ddBZ8ddCZ9	 	 	 	 	 	 ddDZ:	 d	 	 	 	 	 	 	 ddEZ;	 d	 	 	 	 	 	 	 ddFZ<	 d	 	 	 	 	 	 	 ddGZ=	 	 	 	 ddHZ>	 	 	 	 d dIZ?dddJ	 	 	 	 	 	 	 	 	 ddKZ@	 	 	 	 ddLZAddMZBddNZC	 d	 	 	 	 	 	 	 ddOZD	 	 d	 	 	 	 	 	 	 ddPZEddQZFddR	 	 	 ddSZGddTZHd	dUZIdd	 	 	 	 	 	 	 d
dVZJ	 	 	 	 	 	 	 	 ddWZKddXZLddYZM	 	 	 	 	 	 ddZZN	 	 	 	 	 	 dd[ZO	 	 	 	 	 	 dd\ZPdd]ZQ	 	 	 	 	 	 	 	 dd^ZR	 	 	 d	 	 	 	 	 	 	 	 	 dd_ZSdd`ZTddaZU	 	 	 	 ddbZV	 	 	 	 	 	 	 	 ddcZW	 	 	 	 	 	 	 	 dddZX	 	 	 	 	 	 ddeZYdd	 	 	 	 	 	 	 	 	 	 	 ddfZZ	 	 	 	 	 	 	 	 ddgZ[ddhZ\ddiZ]	 	 	 	 ddjZ^	 	 	 	 	 	 ddkZ_	 	 	 	 	 	 	 	 	 	 ddlZ`	 	 	 	 	 	 	 	 	 	 d dmZa	 	 	 	 	 	 	 	 d!dnZbd"doZc	 	 	 	 	 	 d#dpZddddq	 	 	 	 	 	 	 	 	 	 	 d$drZedd	 	 	 	 	 	 	 d%dsZfdd	 	 	 	 	 	 	 	 	 d&dtZg	 	 	 	 d'duZh	 	 	 	 	 	 	 	 d(dvZi	 	 	 	 	 	 	 	 d)dwZj	 	 	 	 	 	 d*dxZkdd	 	 	 	 	 	 	 d+dyZl	 	 	 	 	 d,	 	 	 	 	 	 	 	 	 	 	 	 	 d-dzZmd.d{Zn	 	 	 	 d/d|Zoddddddddd}	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d0d~Zpdddd	 	 	 	 	 	 	 	 	 d1dZqd2dZr	 	 	 	 d3dZsdd	 	 	 	 	 d4dZtd5dZudd	 	 	 	 	 	 	 	 	 d6dZvdd	 	 	 	 	 	 	 d7dZwdd	 	 	 	 	 	 	 	 	 d8dZxdd	 	 	 	 	 	 	 d9dZydd	 	 	 	 	 	 	 d:dZzdd	 	 	 	 	 	 	 	 	 d;dZ{dd	 	 	 	 	 	 	 	 	 d;dZ|dd	 	 	 	 	 	 	 	 	 	 	 	 	 d<dZ}dd	 	 	 	 	 	 	 d=dZ~	 	 	 	 d>dZdd	 	 	 	 	 	 	 d?dZdd	 	 	 	 	 	 	 	 	 d@dZdd	 	 	 	 	 	 	 dAdZ	 	 	 	 dBdZ	 	 	 	 	 	 dCdZdd	 	 	 	 	 	 	 dDdZdd	 	 	 	 	 ddZ	 dE	 	 	 	 	 dFdZ	 dE	 	 	 	 	 	 	 dGdZ	 d	 	 	 	 	 	 	 dHdZ	 	 	 	 	 	 dIdZ	 d	 	 	 	 	 	 	 	 	 dJdZ	 	 	 dK	 	 	 	 	 	 	 	 	 	 	 	 	 dLdZddd	 	 	 	 	 	 	 dMdZ	 d	 	 	 	 	 	 	 dNdZ	 	 	 	 dOdZ	 	 	 	 	 	 	 	 dPdZ	 	 	 	 	 	 dQdZ	 	 	 	 dRdZ	 	 	 	 	 	 dSdZ	 	 	 	 	 	 	 	 dTdZ	 	 	 	 	 	 	 	 dUdZ	 	 	 	 	 	 	 	 	 	 dVdZ	 	 	 	 	 	 	 	 dWdZ	 	 	 	 	 	 	 	 dXdZ	 	 	 	 dYdZ	 	 	 	 	 	 dZdZ	 d	 	 	 	 	 	 	 d[dZ	 d	 	 	 	 	 	 	 	 	 d\dZ	 d	 	 	 	 	 	 	 d]dZ	 	 	 	 d^	 	 	 	 	 	 	 	 	 d_dZdd	 	 	 	 	 	 	 	 	 d`dZ	 	 	 	 	 	 dadZ	 	 	 	 d^	 	 	 	 	 	 	 	 	 	 	 	 	 dbdZ	 	 	 	 	 	 dcdZ	 	 	 	 	 dd	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dedZ	 	 	 	 d^	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dfdZ	 	 	 	 	 	 	 	 dgdZ	 	 	 	 	 	 dhdZ	 	 	 	 	 	 	 	 didZ	 	 	 	 	 	 	 	 	 	 djdZ	 	 	 	 	 	 	 	 dkdZ	 	 	 	 dldZ	 	 	 	 	 	 dmdZ	 	 	 	 dndZdddddddd	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dodZ	 	 	 	 	 	 dpdZ	 	 	 	 	 	 dqdZ	 	 	 	 	 	 dpdZdrdÄZdd	 	 	 	 	 	 	 dsdĄZ	 	 	 	 	 	 ddńZ	 d	 	 	 	 	 	 	 	 	 	 	 dtdƄZdudǄZ	 	 	 	 dvdȄZdddʜdwd˄Zdddʜ	 	 	 	 	 dxd̄Zdyd̈́Zy(z  
HTTPClientzCRepresents an HTTP client sending HTTP requests to the Discord API.NT)proxy
proxy_authloopunsync_clockc                  |t        j                         n|| _        || _        t        | _        t        j                         | _        t        j                         | _
        | j                  j                          d | _        d| _        || _        || _        | | _        d}|j#                  t$        t&        j(                  t*        j$                        | _        y )NFzEDiscordBot (https://pycord.dev, {0}) Python/{1[0]}.{1[1]} aiohttp/{2})asyncioget_event_loopr   	connectorr   _HTTPClient__sessionweakrefWeakValueDictionary_locksEvent_global_oversettoken	bot_tokenr   r   	use_clockformatr   sysversion_infoaiohttp
user_agent)r[   r   r   r   r   r   r   s          rH   r_   zHTTPClient.__init__   s     )-G""$$ 		 #073:3N3N3P+2==?!%
$!&
4>#// T 	  *00))7+>+> 
rb   c                    | j                   j                  r+t        j                  | j                  t
              | _         y y )Nr   ws_response_class)r   closedr   ClientSessionr   r   ra   s    rH   recreatezHTTPClient.recreate   s0    >>  $22.."@DN !rb   r   )compressc                  K   | j                   | j                  dddd| j                  i|d} | j                  j                  |fi | d {   S 7 w)Nr   g      >@F
User-Agent)r   r   max_msg_sizetimeout	autocloserD   r   )r   r   r   r   
ws_connect)r[   rY   r   kwargss       rH   r   zHTTPClient.ws_connect   s[     //ZZdoo !

 /T^^..s=f====s   AAAA)filesformc                 K   |j                   }|j                  }|j                  }| j                  j	                  |      }|%t        j                         }||| j                  |<   d| j                  i}	| j                  d| j                   |	d<   d|v r,d|	d<   t        j                  |j                  d            |d<   	 |j                  d      }
|
rt        |
d	
      |	d<   	 |j                  dd       x}r||	d<   |	|d<   | j                  | j                  |d<   | j                  | j                  |d<   | j                   j#                         s"| j                   j%                          d {    d }d }|j'                          d {    t)        |      5 }t+        d      D ]j  }|r|D ]  }|j-                  |        |r4t/        j0                  d      }|D ]  } |j2                  d.i |  ||d<   	  | j4                  j6                  ||fi |4 d {   }t8        j;                  d|||j	                  d      |j<                         t?        |       d {   }|j@                  j	                  d      }|dk(  r}|j<                  dk7  rnt        jB                  || jD                        }t8        j;                  d||       |jG                          | jH                  jK                  ||jL                         d|j<                  cxkD  rdk\  r9n n6t8        j;                  d|||       |cd d d       d {    c cd d d        S |j<                  dk(  r|j@                  j	                  d      rtO        |tP              rtS        ||      d}|d    }t8        jU                  |||       |j	                  d!d      }|r0t8        jU                  d"|       | j                   jW                          t        jX                  |       d {    t8        j;                  d#       |r/| j                   j[                          t8        j;                  d$       	 d d d       d {    |j<                  d%v r6t        jX                  d&|d'z  z          d {    	 d d d       d {    |j<                  d(k(  rt]        ||      |j<                  d)k(  rt_        ||      |j<                  d*k\  rta        ||      tS        ||       |'|j<                  d*k\  rta        ||      tS        ||      tg        d-      # t        $ r Y qw xY w7 7 7 @7 7 "7 S7 7 7 # 1 d {  7  sw Y   nxY w# tb        $ rC}|d+k  r8|jd                  d,v r*t        jX                  d&|d'z  z          d {  7   Y d }~' d }~ww xY w# 1 sw Y   y xY ww)/Nr   zBot AuthorizationjsonrB   zContent-Typedatareasonz/ )safezX-Audit-Log-ReasonlocalezX-Discord-LocalerD   r   r      )seekF)quote_fieldsz%s %s with %s has returned %szX-Ratelimit-Remaining0i  )r   z?A rate limit bucket has been exhausted (bucket: %s, retry: %s).i,     z%s %s has received %sViazRWe are being rate limited. Retrying in %.2f seconds. Handled under the bucket "%s"retry_afterglobalz9Global rate limit has been hit. Retrying in %.2f seconds.z-Done sleeping for the rate limit. Retrying...zGlobal rate limit is now over.>           r          r      )6   iF'  z!Unreachable code in HTTP handlingrl   )4re   rR   rY   r   rZ   r   Lockr   r   r   _to_jsonpoprX   rF   r   r   r   is_setwaitacquirer<   rangeresetr   FormData	add_fieldr   request_logdebugstatusrI   rD   _parse_ratelimit_headerr   ru   r   
call_laterrw   rV   rW   r   warningclearsleepr   r   r   r   OSErrorerrnoRuntimeError)r[   router   r   r   re   rR   rY   ro   rD   r   r   rG   r   
maybe_locktriesf	form_dataparams	remainingdeltafmtr   	is_globales                            rH   r   zHTTPClient.request   s     ii{{v&<<<>D!&*F# $//#
 ::!)-djj\':GO$V&8GN#"^^FJJv,>?F6N	MZZ)F 09&t0L,-ZZ$//6/*0G&'#y::!"jjF7O??&#'??F<   '')##((***26,0lln v	D*q l" ,U+,  ' 0 0e DI"& 6+	++5f56%.F6Na5t~~55 '-  X@ X@!

;""JJv.$OO &2(%;; %-$4$4$8$89P$Q	$+30F$)$A$A (DNN%E !JJ%7 !' % ',,. II00E 7C7 JJ'>TR#'GX@ X@ X@v	D v	Df $??c1#+#3#3#7#7#>*TSVBW&3Hd&C C!A   26m1DK LLk6B )-5(AI( $)9 %0!" !% 1 1 7 7 9")--"<<< JJ'VW  ) $ 1 1 5 5 7 $

+K L$SX@ X@ X@X $??.BB")--EAI">>>$]X@ X@ X@b $??c1"+Hd";;%__3"*8T"::%__3"4Xt"DD"/$"??Il\ #??c),Xt<<#Hd33BCC[  		$ + 	X@  <X@@ =AX@Z ?[X@ X@ X@ X@ X@v  qyQWW%;%mmA	M::: Qv	D v	Ds{  CW)U BW)5U6W)U"W)!A!W"V%U%
&V)AU7*U(
+CU7=V	U+

VW
W)CU7U.
AU7'V2U13V7W9,U7%U3
&U7+V6U57V;W=AU75W	UW)UW)"W)%V(U7+V.U71V3U75V7V	=V >V	VW	W1WW
	WWWWWW&"W)c                |  K   | j                   j                  |      4 d {   }|j                  dk(  r)|j                          d {   cd d d       d {    S |j                  dk(  rt	        |d      |j                  dk(  rt        |d      t        |d      7 ~7 Y7 K# 1 d {  7  sw Y   y xY ww)Nr   r   zasset not foundr   zcannot retrieve assetzfailed to get asset)r   rZ   r   readr   r   r   )r[   rY   resps      rH   get_from_cdnzHTTPClient.get_from_cdn  s     >>%%c* 	A 	Ad{{c!!YY[(	A 	A 	A #t%677#&=>>#D*?@@	A(	A 	A 	A 	Asc    B<B!B<#B'	B#
B'B<B%B<AB'!B<#B'%B<'B9-B0.B95B<c                n   K   | j                   r#| j                   j                          d {    y y 7 wrr   )r   closera   s    rH   r   zHTTPClient.close  s+     >>..&&((( (s   *535c                <  K   t        j                  | j                  t              | _        | j
                  }|| _        	 | j                  t        dd             d {   }|S 7 # t        $ r(}|| _        |j                  dk(  rt        d      | d }~ww xY ww)Nr   GET
/users/@mei  zImproper token has been passed.)r   r   r   r   r   r   r   rK   r   r   r   )r[   r   	old_tokenr   ry   s        rH   static_loginzHTTPClient.static_login  s      ..nn8V
 JJ	
	eE<&@AAD  B 	"DJzzS "#DE3N		s;   >BA( A& A( $B&A( (	B1#BBBc                8    | j                  t        dd            S )NPOSTz/auth/logoutr   rK   ra   s    rH   logoutzHTTPClient.logout  s    ||E&.9::rb   c                H    d|i}| j                  t        dd|      |      S )N
recipientsr   z/users/{user_id}/channelsuser_idr   r   )r[   r   r   payloads       rH   start_groupzHTTPClient.start_group  s7     *
 ||&5wGg  
 	
rb   c                <    | j                  t        dd|            S )NDELETE/channels/{channel_id}rM   r   r[   rM   s     rH   leave_groupzHTTPClient.leave_group  s     ||(4L
 	
rb   c                D    d|i}| j                  t        dd      |      S )Nrecipient_idr   z/users/@me/channelsr   r   )r[   r   r   s      rH   start_private_messagez HTTPClient.start_private_message  s+    G
 ||E&*?@w|OOrb   F)ttsr"   embedsnonceenforce_nonceallowed_mentionsmessage_referencestickersr!   flagsr,   c                   t        dd|      }i }|r||d<   |rd|d<   |r|g|d<   |r||d<   |r||d<   |r||d	<   |r||d
<   |	r|	|d<   |r||d<   |
r|
|d<   |r||d<   |r||d<   | j                  ||      S )Nr   /channels/{channel_id}/messagesr   contentTr   r   r  r  r  r  r!   sticker_idsr  r,   r   rK   r   )r[   rM   r	  r   r"   r   r  r  r  r  r  r!   r  r,   rr   s                   rH   send_messagezHTTPClient.send_message  s    " &;
S!(GI!GEN!&GH &GH$GG'4GO$*:G&'+<G'($.GL!%-GM"$GG"GFO||AG|,,rb   c                <    | j                  t        dd|            S )Nr   z/channels/{channel_id}/typingr   r   r   s     rH   send_typingzHTTPClient.send_typing  s     ||&9jQ
 	
rb   )r	  r   r"   r   r  r  r  r  r  r!   r  r,   c                  g }d|i}|r||d<   |r|g|d<   |r||d<   |r||d<   |r||d<   |	r|	|d<   |
r|
|d<   |r||d<   |r||d	<   |r||d
<   |r||d<   g }|j                  ddi       t        |      D ]\  \  }}|j                  ||j                  |j                  d       |j                  d| d|j                  |j                  dd       ^ ||d<   t        j                  |      |d   d<   | j                  |||      S )Nr   r	  r   r  r  r  r  r!   r
  r  r,   namepayload_jsonidfilenamedescriptionfiles[]application/octet-streamr  valuer  content_typeattachmentsr   r  r   r   )append	enumerater  r  fpr   r   r   )r[   r   r   r	  r   r"   r   r  r  r  r  r  r!   r  r,   r   r   r  indexfiles                       rH   send_multipart_helperz HTTPClient.send_multipart_helper  s`   $ #(#,!(GI!&GH &GH$GG'4GO$*:G&'+<G'($.GL!%-GM"$GG"GFOV^,-$U+ 	KE4 $#'#3#3 KK$UG1-!WW $$>		  "- >>'2Q||EE|::rb   c               \    t        dd|      }| j                  |||||||||	|
||||      S )Nr   r  r   )r   r	  r   r"   r   r  r  r  r  r  r!   r  r,   rK   r$  )r[   rM   r   r	  r   r"   r   r  r  r  r  r  r!   r  r,   r  s                   rH   
send_fileszHTTPClient.send_filesM  sU    $ &;
S))'-/! * 
 	
rb   c                   g }g }|j                  ddi       t        |      D ]\  \  }}|j                  ||j                  |j                  d       |j                  d| d|j                  |j                  dd       ^ d|vr||d<   n|d   j                  |       t        j                  |      |d	   d
<   | j                  |||      S )Nr  r  r  r  r  r  r  r  r   r  r  )	r  r   r  r  r!  extendr   r   r   )r[   r   r   r   r   r  r"  r#  s           rH   edit_multipart_helperz HTTPClient.edit_multipart_helperq  s     V^,-$U+ 	KE4 $#'#3#3 KK$UG1-!WW $$>		  '%0GM"M"))+6 >>'2Q||EE|::rb   c                    t        dd| d| ||      }i }d|v r|d   |d<   d|v r|d   |d<   d|v r|d   |d<   d|v r|d   |d<   d	|v r|d	   |d	<   d
|v r|d
   |d
<    | j                  |fd|i|S )NPATCHz
/channels/z
/messages/rM   
message_idr  r  r	  r   r  r!   r   )rK   r*  )r[   rM   r.  r   fieldsr  r   s          rH   
edit_fileszHTTPClient.edit_files  s     Jzl;!!	
 #%F"%+M%:GM"f%gGG!'	!2GIv &x 0GH'*01C*DG&'6!$*<$8GL!)t))

 
 	
rb   r   c               F    t        dd||      }| j                  ||      S )Nr   ,/channels/{channel_id}/messages/{message_id}r-  r1  r  r[   rM   r.  r   r  s        rH   delete_messagezHTTPClient.delete_message  s/     :!!	
 ||Af|--rb   c               N    t        dd|      }d|i}| j                  |||      S )Nr   z+/channels/{channel_id}/messages/bulk-deleter   messagesr   r   r  )r[   rM   message_idsr   r  r   s         rH   delete_messageszHTTPClient.delete_messages  s;     Aj
 
 ||AGF|;;rb   c                F    t        dd||      }| j                  ||      S )Nr,  r3  r-  r   r  )r[   rM   r.  r/  r  s        rH   edit_messagezHTTPClient.edit_message  s/     :!!	
 ||AF|++rb   c                D    t        dd|||      }| j                  |      S )NPUTB/channels/{channel_id}/messages/{message_id}/reactions/{emoji}/@merM   r.  r#   r  r[   rM   r.  r#   r  s        rH   add_reactionzHTTPClient.add_reaction  s-     P!!
 ||Arb   c                F    t        dd||||      }| j                  |      S )Nr   zJ/channels/{channel_id}/messages/{message_id}/reactions/{emoji}/{member_id})rM   r.  	member_idr#   r  )r[   rM   r.  r#   rD  r  s         rH   remove_reactionzHTTPClient.remove_reaction  s0     X!!
 ||Arb   c                D    t        dd|||      }| j                  |      S )Nr   r?  r@  r  rA  s        rH   remove_own_reactionzHTTPClient.remove_own_reaction  s-     P!!
 ||Arb   c                l    t        dd|||      }d|i}|r||d<   |r||d<   | j                  ||      S )Nr   >/channels/{channel_id}/messages/{message_id}/reactions/{emoji}r@  limitaftertyper   r  )	r[   rM   r.  r#   rJ  rK  rL  r  r   s	            rH   get_reaction_userszHTTPClient.get_reaction_users  sX     L!!
 U"
 #F7O!F6N||Af|--rb   c                B    t        dd||      }| j                  |      S )Nr   z6/channels/{channel_id}/messages/{message_id}/reactionsr-  r  r[   rM   r.  r  s       rH   clear_reactionszHTTPClient.clear_reactions   s*     D!!	
 ||Arb   c                D    t        dd|||      }| j                  |      S )Nr   rI  r@  r  rA  s        rH   clear_single_reactionz HTTPClient.clear_single_reaction,  s-     L!!
 ||Arb   c                B    t        dd||      }| j                  |      S )Nr   r3  r-  r  rP  s       rH   get_messagezHTTPClient.get_message8  s*     :!!	
 ||Arb   c                @    t        dd|      }| j                  |      S )Nr   r   r   r  )r[   rM   r  s      rH   get_channelzHTTPClient.get_channelC  s    %1jI||Arb   c                r    d|i}|||d<   |||d<   |||d<   | j                  t        dd|      |      S )	NrJ  beforerK  aroundr   r  r   rM  r   )r[   rM   rJ  rY  rK  rZ  r   s          rH   	logs_fromzHTTPClient.logs_fromG  sg     U"
 %F8#F7O%F8||%:zR  
 	
rb   c                >    | j                  t        dd||            S )Nr   z6/channels/{channel_id}/messages/{message_id}/crosspostr-  r   r[   rM   r.  s      rH   publish_messagezHTTPClient.publish_message_  s)     ||H%%	
 	
rb   c                F    t        dd||      }| j                  ||      S )Nr>  (/channels/{channel_id}/pins/{message_id}r-  r1  r  r4  s        rH   pin_messagezHTTPClient.pin_messagek  s/     6!!	
 ||Af|--rb   c                F    t        dd||      }| j                  ||      S )Nr   r`  r-  r1  r  r4  s        rH   unpin_messagezHTTPClient.unpin_messagev  s/     6!!	
 ||Af|--rb   c                <    | j                  t        dd|            S )Nr   z/channels/{channel_id}/pinsr   r   r   s     rH   	pins_fromzHTTPClient.pins_from  s     ||%6:N
 	
rb   c                F    t        dd||      }| j                  ||      S )Nr   $/guilds/{guild_id}/members/{user_id}rN   r   r1  r  r[   r   rN   r   r  s        rH   kickzHTTPClient.kick  s/     2	
 ||Af|--rb   c                Z    t        dd||      }i }|r||d<   | j                  |||      S )Nr>  !/guilds/{guild_id}/bans/{user_id}rh  delete_message_seconds)r   r   r  )r[   r   rN   rm  r   r  r   s          rH   banzHTTPClient.ban  sD     /	
 !/EF+,||AfV|<<rb   c                \    t        dd|      }d|i}|r||d<   | j                  |||      S )Nr   z/guilds/{guild_id}/bulk-banrN   user_idsrm  r8  r  )r[   rq  rN   rm  r   r  r   s          rH   bulk_banzHTTPClient.bulk_ban  sJ     )
 
 "0FG,-||AGF|;;rb   c               F    t        dd||      }| j                  ||      S )Nr   rl  rh  r1  r  ri  s        rH   unbanzHTTPClient.unban  s/     /	
 ||Af|--rb   )mutedeafenr   c               h    t        dd||      }i }|||d<   |||d<   | j                  |||      S )Nr,  rg  rh  ru  deafr8  r  )r[   r   rN   ru  rv  r   r  r   s           rH   guild_voice_statezHTTPClient.guild_voice_state  sT     2	
 "GFO$GFO||AGF|;;rb   c                <    | j                  t        dd      |      S )Nr,  r   r   r   )r[   r   s     rH   edit_profilezHTTPClient.edit_profile  s    ||E'<8w|GGrb   c               N    t        dd|      }d|i}| j                  |||      S )Nr,  z/guilds/{guild_id}/members/@merp  nickr8  r  )r[   rN   nicknamer   r  r   s         rH   change_my_nicknamezHTTPClient.change_my_nickname  s6     ';hOH
 ||AGF|;;rb   c               P    t        dd||      }d|i}| j                  |||      S )Nr,  rg  rh  r}  r8  r  )r[   rN   r   r~  r   r  r   s          rH   change_nicknamezHTTPClient.change_nickname  s?     2	
 H
 ||AGF|;;rb   c                D    t        dd|      }| j                  ||      S )Nr,  z#/guilds/{guild_id}/voice-states/@merp  r   r  )r[   rN   r   r  s       rH   edit_my_voice_statezHTTPClient.edit_my_voice_state  s&     '@8T||AG|,,rb   c                F    t        dd||      }| j                  ||      S )Nr,  z)/guilds/{guild_id}/voice-states/{user_id}rh  r   r  )r[   rN   r   r   r  s        rH   edit_voice_statezHTTPClient.edit_voice_state  s/     7	
 ||AG|,,rb   c               H    t        dd||      }| j                  |||      S )Nr,  rg  rh  r8  r  )r[   rN   r   r   r/  r  s         rH   edit_memberzHTTPClient.edit_member  s1     2	
 ||AF6|::rb   c                   t        dd|      }d}|j                         D ci c]  \  }}||v s|| }}}| j                  |||      S c c}}w )Nr,  r   r   )r  	parent_idtopicbitratensfw
user_limitpositionpermission_overwritesrate_limit_per_userrL  
rtc_regionvideo_quality_modearchivedauto_archive_durationlocked	invitabledefault_auto_archive_durationr  "default_thread_rate_limit_per_userdefault_reaction_emojiavailable_tagsapplied_tagsdefault_sort_orderr   r   rK   rU   r   )	r[   rM   r   optionsr  
valid_keysr]   r^   r   s	            rH   edit_channelzHTTPClient.edit_channel$  s^     '3
K

2 %,MMOGDAqqJ1a4GG||Af7|;; Hs
   AAc               F    t        dd|      }| j                  |||      S )Nr,  /guilds/{guild_id}/channelsrp  r8  r  )r[   rN   r   r   r  s        rH   bulk_channel_updatezHTTPClient.bulk_channel_updateH  s(     '88L||AD|88rb   c                   d|i}d}|j                  |j                         D ci c]  \  }}||v s||| c}}       | j                  t        dd|      ||      S c c}}w )NrL  )r  r  r  r  r  r  r  r  r  r  r  r  r  r   r  rp  r8  )updaterU   r   rK   )	r[   rN   channel_typer   r  r   r  r]   r^   s	            rH   create_channelzHTTPClient.create_channelR  s|     L


 	%mmoSdajQ]QTS	
 ||&7(K  
 	
 Ts   A"
A"
A"
c               @    | j                  t        dd|      |      S )Nr   r   r   r1  r   r[   rM   r   s      rH   delete_channelzHTTPClient.delete_channelw  s*     ||(4L  
 	
rb   c               T    |||d}t        dd||      }| j                  |||      S )N)r  r  r  r   z4/channels/{channel_id}/messages/{message_id}/threadsr-  r8  r  )	r[   rM   r.  r  r  r  r   r   r   s	            rH   start_thread_with_messagez$HTTPClient.start_thread_with_message  sC     %:#6
 B!!	
 ||E|??rb   c               V    |||||d}t        dd|      }	| j                  |	||      S )N)r  r  rL  r  r  r   /channels/{channel_id}/threadsr   r8  r  )
r[   rM   r  r  rL  r  r  r   r   r   s
             rH   start_thread_without_messagez'HTTPClient.start_thread_without_message  s@     %:#6"
 f>:V||E|??rb   )
r  r  r   r   r"   r   r  r  r  r!   c               8   |||d}|r||d<   |r||d<   i }|r||d<   |
r|
g|d<   |r||d<   |r||d<   |r||d<   |r||d<   |r||d	<   |i k7  r||d
<   t        dd|      }|	rddig}g }t        |	      D ]\  \  }}|j                  ||j                  |j                  d       |j                  d| d|j
                  |j                  dd       ^ ||d<   t        j                  |      |d   d<   | j                  |||      S | j                  |||      S )N)r  r  r  r  r  r	  r   r  r  r!   r
  r)   r   r  r   r  r  r  r  r  r  r  r  r   r  )r   r   r8  )	rK   r   r  r  r  r!  r   r   r   )r[   rM   r	  r  r  r  r  r  r   r   r"   r   r  r  r  r!   r   r)   r   r   r  r"  r#  s                          rH   start_forum_threadzHTTPClient.start_forum_thread  s   ( %:"#
 &2GN#-@G)*!(GI!&GH &GH$GG*:G&'$.GL!%-GM"b=!(GI,!
 ^,-DK(/ t""#$(MM'+'7'7 "(q 1!%$(MM(B	" &1GM"$~~g6DGG<<D<@@||E|??rb   c                <    | j                  t        dd|            S )Nr>  )/channels/{channel_id}/thread-members/@mer   r   r   s     rH   join_threadzHTTPClient.join_thread  s$    ||;%
 	
rb   c                >    | j                  t        dd||            S )Nr>  //channels/{channel_id}/thread-members/{user_id}rM   r   r   )r[   rM   r   s      rH   add_user_to_threadzHTTPClient.add_user_to_thread  s)     ||A%	
 	
rb   c                <    | j                  t        dd|            S )Nr   r  r   r   r   s     rH   leave_threadzHTTPClient.leave_thread   s$    ||;%
 	
rb   c                B    t        dd||      }| j                  |      S )Nr   r  r  r  )r[   rM   r   r   s       rH   remove_user_from_threadz"HTTPClient.remove_user_from_thread)  s+     =!	
 ||E""rb   c                `    t        dd|      }i }|r||d<   ||d<   | j                  ||      S )Nr   z./channels/{channel_id}/threads/archived/publicr   rY  rJ  rM  r  r[   rM   rY  rJ  r   r   s         rH   get_public_archived_threadsz&HTTPClient.get_public_archived_threads4  sG     <!
 %F8w||E&|11rb   c                `    t        dd|      }i }|r||d<   ||d<   | j                  ||      S )Nr   z//channels/{channel_id}/threads/archived/privater   rY  rJ  rM  r  r  s         rH   get_private_archived_threadsz'HTTPClient.get_private_archived_threadsC  sG     =!
 %F8w||E&|11rb   c                `    t        dd|      }i }|r||d<   ||d<   | j                  ||      S )Nr   z9/channels/{channel_id}/users/@me/threads/archived/privater   rY  rJ  rM  r  r  s         rH   #get_joined_private_archived_threadsz.HTTPClient.get_joined_private_archived_threadsR  sG     G!

 %F8w||E&|11rb   c                @    t        dd|      }| j                  |      S )Nr   z!/guilds/{guild_id}/threads/activerp  r  )r[   rN   r   s      rH   get_active_threadszHTTPClient.get_active_threads`  s"     e@8T||E""rb   c                @    t        dd|      }| j                  |      S )Nr   z%/channels/{channel_id}/thread-membersr   r  )r[   rM   r   s      rH   get_thread_memberszHTTPClient.get_thread_membersf  s'     :z
 ||E""rb   )avatarr   c               \    d|i}|||d<   t        dd|      }| j                  |||      S )Nr  r  r   /channels/{channel_id}/webhooksr   r8  r  )r[   rM   r  r  r   r   r  s          rH   create_webhookzHTTPClient.create_webhookp  sF     D#
  &GH&;
S||AGF|;;rb   c                <    | j                  t        dd|            S )Nr   r  r   r   r   s     rH   channel_webhookszHTTPClient.channel_webhooks  s"     ||%:zR
 	
rb   c                <    | j                  t        dd|            S )Nr   z/guilds/{guild_id}/webhooksrp  r   r[   rN   s     rH   guild_webhookszHTTPClient.guild_webhooks  s     ||%6J
 	
rb   c                <    | j                  t        dd|            S )Nr   z/webhooks/{webhook_id})rO   r   )r[   rO   s     rH   get_webhookzHTTPClient.get_webhook       ||%1jI
 	
rb   c                \    dt        |      i}| j                  t        dd|      ||      S )Nwebhook_channel_idr   z /channels/{channel_id}/followersr   r8  )rW   r   rK   )r[   rM   r  r   r   s        rH   follow_webhookzHTTPClient.follow_webhook  sA     !#&8"9
 ||&<T  
 	
rb   c                `    d|i}|r||d<   |r||d<   | j                  t        dd      |      S )NrJ  rY  rK  r   z/users/@me/guildsrM  r   )r[   rJ  rY  rK  r   s        rH   
get_guildszHTTPClient.get_guilds  sF     U"
 %F8#F7O||E%)<=f|MMrb   c                <    | j                  t        dd|            S )Nr   z/users/@me/guilds/{guild_id}rp  r   r  s     rH   leave_guildzHTTPClient.leave_guild  s     ||(:XN
 	
rb   )with_countsc               Z    dt        |      i}| j                  t        dd|      |      S )Nr  r   /guilds/{guild_id}rp  rM  r>   r   rK   )r[   rN   r  r   s       rH   	get_guildzHTTPClient.get_guild  s8      [!12||%-A&  
 	
rb   c                <    | j                  t        dd|            S )Nr   r  rp  r   r  s     rH   delete_guildzHTTPClient.delete_guild  s    ||E(,@8TUUrb   c                R    d|i}|r||d<   | j                  t        dd      |      S )Nr  iconr   z/guildsr   r   )r[   r  r  r   s       rH   create_guildzHTTPClient.create_guild  s6    D
 "GFO||E&)47|CCrb   c                   d}|j                         D ci c]  \  }}||v s|| }}}| j                  t        dd|      ||      S c c}}w )N)r  r  afk_timeoutowner_idafk_channel_idsplashdiscovery_splashfeaturesverification_levelsystem_channel_iddefault_message_notificationsr  explicit_content_filterbannersystem_channel_flagsrules_channel_idpublic_updates_channel_idpreferred_localepremium_progress_bar_enabledr,  r  rp  r8  rU   r   rK   )r[   rN   r   r/  r  r]   r^   r   s           rH   
edit_guildzHTTPClient.edit_guild  sa    

, %+LLNFDAqa:o1a4FF||'/(C  
 	
 G
   AAc               X    | j                  t        dd|      dt        |      i|      S )Nr   z/guilds/{guild_id}/mfarp  levelr8  )r   rK   r>   )r[   rN   requiredr   s       rH   edit_guild_mfazHTTPClient.edit_guild_mfa  s6     ||&2XF3x=)  
 	
rb   c                <    | j                  t        dd|            S )Nr   /guilds/templates/{code}coder   )r[   r  s     rH   get_templatezHTTPClient.get_template  s    ||E%)C$OPPrb   c                <    | j                  t        dd|            S )Nr   /guilds/{guild_id}/templatesrp  r   r  s     rH   guild_templateszHTTPClient.guild_templates  s     ||%7(K
 	
rb   c                @    | j                  t        dd|      |      S )Nr   r  rp  r   r   r[   rN   r   s      rH   create_templatezHTTPClient.create_template  s*     ||&88L  
 	
rb   c                >    | j                  t        dd||            S )Nr>  #/guilds/{guild_id}/templates/{code}rN   r  r   r[   rN   r  s      rH   sync_templatezHTTPClient.sync_template  s)     ||5!	
 	
rb   c                    d}|j                         D ci c]  \  }}||v s|| }}}| j                  t        dd||      |      S c c}}w )N)r  r  r,  r
  r  r   r  )r[   rN   r  r   r  r]   r^   s          rH   edit_templatezHTTPClient.edit_template  sg    

 %,MMOGDAqqJ1a4GG||5!	   
 	
 Hr  c                >    | j                  t        dd||            S )Nr   r
  r  r   r  s      rH   delete_templatezHTTPClient.delete_template%  s'    ||5!	
 	
rb   c                V    d|i}|r||d<   | j                  t        dd|      |      S )Nr  r  r   r  r   r   r   )r[   r  r  r  r   s        rH   create_from_templatezHTTPClient.create_from_template/  sC     D
 "GFO||&44@w  
 	
rb   c                n    i }|||d<   |||d<   |||d<   | j                  t        dd|      |      S )NrJ  rY  rK  r   z/guilds/{guild_id}/bansrp  rM  r   )r[   rN   rJ  rY  rK  r   s         rH   get_banszHTTPClient.get_bans<  s\     .0#F7O%F8#F7O||%2XFv  
 	
rb   c                >    | j                  t        dd||            S )Nr   rl  rh  r   )r[   r   rN   s      rH   get_banzHTTPClient.get_banP  s'    ||3!	
 	
rb   c                <    | j                  t        dd|            S )Nr   z/guilds/{guild_id}/vanity-urlrp  r   r  s     rH   get_vanity_codezHTTPClient.get_vanity_codeZ       ||%88L
 	
rb   c                <    | j                  t        dd|            S )Nr   r  rp  r   r  s     rH   get_all_guild_channelsz!HTTPClient.get_all_guild_channels_  "     ||%6J
 	
rb   c                Z    d|i}|r||d<   t        dd|      }| j                  ||      S )NrJ  rK  r   z/guilds/{guild_id}/membersrp  rM  r  )r[   rN   rJ  rK  r   r  s         rH   get_memberszHTTPClient.get_membersf  s@     U"
 #F7O%5I||Af|--rb   c                N    ||d}t        dd|      }| j                  ||      S )N)queryrJ  r   z!/guilds/{guild_id}/members/searchrp  rM  r  )r[   rN   r!  rJ  r   r  s         rH   search_memberszHTTPClient.search_membersr  s5     "

 %<xP||Af|--rb   c                >    | j                  t        dd||            S )Nr   z&/guilds/{guild_id}/members/{member_id})rN   rD  r   )r[   rN   rD  s      rH   
get_memberzHTTPClient.get_member  s)     ||8!#	
 	
rb   c                   ||rdndd}|rdj                  |      |d<   | j                  t        dd|      ||	      S )
Ntruefalse)dayscompute_prune_count, include_rolesr   /guilds/{guild_id}/prunerp  r8  joinr   rK   )r[   rN   r(  r)  rolesr   r   s          rH   prune_memberszHTTPClient.prune_members  sV     -@6g#
 '+yy'7GO$||&4xH  
 	
rb   c                t    d|i}|rdj                  |      |d<   | j                  t        dd|      |      S )Nr(  r*  r+  r   r,  rp  rM  r-  )r[   rN   r(  r/  r   s        rH   estimate_pruned_membersz"HTTPClient.estimate_pruned_members  sN     D"
 &*ii&6F?#||%3hGPV  
 	
rb   c                <    | j                  t        dd|            S )Nr   z/stickers/{sticker_id})
sticker_idr   )r[   r4  s     rH   get_stickerzHTTPClient.get_sticker  r  rb   c                8    | j                  t        dd            S )Nr   z/sticker-packsr   ra   s    rH   list_premium_sticker_packsz%HTTPClient.list_premium_sticker_packs  s    ||E%)9:;;rb   c                <    | j                  t        dd|            S )Nr   /guilds/{guild_id}/stickersrp  r   r  s     rH   get_all_guild_stickersz!HTTPClient.get_all_guild_stickers  r  rb   c                >    | j                  t        dd||            S )Nr   (/guilds/{guild_id}/stickers/{sticker_id}rN   r4  r   )r[   rN   r4  s      rH   get_guild_stickerzHTTPClient.get_guild_sticker  s)     ||:!%	
 	
rb   c                   |j                   j                  d      }	 t        j                  |      }|j                          d|j                   |j                  |dg}|j                         D ]  \  }}	|j                  ||	d        | j                  t        dd	|
      ||g|      S # t        $ r |j                  d      rd}nd}Y w xY w# |j                          w xY w)N      {rB   r  r#  r  r  r  r   r9  rp  )r   r   r   )r!  r   r   _get_mime_type_for_imager   
startswithr   r  rU   r  r   rK   )
r[   rN   r   r#  r   initial_bytes	mime_typer   r]   r^   s
             rH   create_guild_stickerzHTTPClient.create_guild_sticker  s     R(	66}EI JJL  MM )	&
 MMO 	DAqKK	 ||&7(K&	  
 	
3  	7''-.	6			7 JJLs#   B, ,CC CC C#c                D    | j                  t        dd||      ||      S )Nr,  r<  r=  r8  r   )r[   rN   r4  r   r   s        rH   modify_guild_stickerzHTTPClient.modify_guild_sticker  s6     ||:!%	   	
 		
rb   c                B    | j                  t        dd||      |      S )Nr   r<  r=  r1  r   )r[   rN   r4  r   s       rH   delete_guild_stickerzHTTPClient.delete_guild_sticker
  s3     ||:!%	   
 	
rb   c                <    | j                  t        dd|            S )Nr   /guilds/{guild_id}/emojisrp  r   r  s     rH   get_all_custom_emojisz HTTPClient.get_all_custom_emojis  s     ||%4xH
 	
rb   c                >    | j                  t        dd||            S )Nr   $/guilds/{guild_id}/emojis/{emoji_id}rN   emoji_idr   )r[   rN   rR  s      rH   get_custom_emojizHTTPClient.get_custom_emoji  s)     ||6!!	
 	
rb   )r/  r   c               Z    |||xs g d}t        dd|      }| j                  |||      S )N)r  imager/  r   rM  rp  r8  r  )r[   rN   r  rU  r/  r   r   r  s           rH   create_custom_emojizHTTPClient.create_custom_emoji(  s>     [b
 &5I||AGF|;;rb   c               F    t        dd||      }| j                  ||      S )Nr   rP  rQ  r1  r  )r[   rN   rR  r   r  s        rH   delete_custom_emojizHTTPClient.delete_custom_emoji:  s/     2	
 ||Af|--rb   c               H    t        dd||      }| j                  |||      S )Nr,  rP  rQ  r8  r  )r[   rN   rR  r   r   r  s         rH   edit_custom_emojizHTTPClient.edit_custom_emojiI  s1     2	
 ||AGF|;;rb   c                @    t        dd|      }| j                  |      S )Nr   /guilds/{guild_id}/integrationsrp  r  r[   rN   r  s      rH   get_all_integrationszHTTPClient.get_all_integrationsY  s!     %:XN||Arb   c                N    ||d}t        dd|      }| j                  ||      S )N)rL  r  r   r\  rp  r   r  )r[   rN   rL  r  r   r  s         rH   create_integrationzHTTPClient.create_integration`  s5     

 &;hO||AG|,,rb   c                F    t        dd||      }| j                  ||      S )Nr,  0/guilds/{guild_id}/integrations/{integration_id}rN   integration_idr   r  )r[   rN   rd  r   r  s        rH   edit_integrationzHTTPClient.edit_integrationk  s/     >)	
 ||AG|,,rb   c                B    t        dd||      }| j                  |      S )Nr   z5/guilds/{guild_id}/integrations/{integration_id}/syncrc  r  )r[   rN   rd  r  s       rH   sync_integrationzHTTPClient.sync_integrationw  s*     C)	
 ||Arb   c               F    t        dd||      }| j                  ||      S )Nr   rb  rc  r1  r  )r[   rN   rd  r   r  s        rH   delete_integrationzHTTPClient.delete_integration  s/     >)	
 ||Af|--rb   c                    d|i}|||d<   |||d<   |r||d<   |r||d<   t        dd|      }| j                  ||	      S )
NrJ  rY  rK  r   action_typer   z/guilds/{guild_id}/audit-logsrp  rM  r  )	r[   rN   rJ  rY  rK  r   rk  r   r  s	            rH   get_audit_logszHTTPClient.get_audit_logs  si     #*5!1%F8#F7O 'F9$/F=!%88L||Af|--rb   c                <    | j                  t        dd|            S )Nr   z/guilds/{guild_id}/widget.jsonrp  r   r  s     rH   
get_widgetzHTTPClient.get_widget  s     ||%9HM
 	
rb   c                @    | j                  t        dd|      |      S )Nr,  z/guilds/{guild_id}/widgetrp  r   r   r  s      rH   edit_widgetzHTTPClient.edit_widget  s*     ||'6JQX  
 	
rb   )r   max_agemax_uses	temporaryuniquetarget_typetarget_user_idtarget_application_idc                   t        dd|      }
||||d}|r||d<   |r||d<   |	rt        |	      |d<   | j                  |
||      S )	Nr   /channels/{channel_id}/invitesr   )rq  rr  rs  rt  ru  rv  rw  r  )rK   rW   r   )r[   rM   r   rq  rr  rs  rt  ru  rv  rw  r  r   s               rH   create_invitezHTTPClient.create_invite  sl     &:zR "	
 %0GM"(6G$% /23H/IG+,||Af7|;;rb   )r  with_expirationguild_scheduled_event_idc                   t        |      t        |      d}|t        |      |d<   | j                  t        dd|      |      S )N)r  r{  r|  r   /invites/{invite_id}	invite_idrM  r  )r[   r  r  r{  r|  r   s         rH   
get_invitezHTTPClient.get_invite  sY     {+"?3

 $/145M1NF-.||%/9Ef  
 	
rb   c                <    | j                  t        dd|            S )Nr   z/guilds/{guild_id}/invitesrp  r   r  s     rH   invites_fromzHTTPClient.invites_from  s     ||%5I
 	
rb   c                <    | j                  t        dd|            S )Nr   ry  r   r   r   s     rH   invites_from_channelzHTTPClient.invites_from_channel  s"     ||%9jQ
 	
rb   c               @    | j                  t        dd|      |      S )Nr   r~  r  r1  r   )r[   r  r   s      rH   delete_invitezHTTPClient.delete_invite  s*     ||(2iHQW  
 	
rb   c                <    | j                  t        dd|            S )Nr   /guilds/{guild_id}/rolesrp  r   r  s     rH   	get_roleszHTTPClient.get_roles   s    ||E%)ChWXXrb   c                   t        dd||      }d}|j                         D ci c]  \  }}||v s|| }	}}| j                  ||	|      S c c}}w )Nr,  "/guilds/{guild_id}/roles/{role_id}rN   role_id)r  permissionscolorhoistmentionabler  unicode_emojir8  r  )
r[   rN   r  r   r/  r  r  r]   r^   r   s
             rH   	edit_rolezHTTPClient.edit_role  se     0	


 %+LLNFDAqa:o1a4FF||AGF|;; Gs
   AAc               F    t        dd||      }| j                  ||      S )Nr   r  r  r1  r  )r[   rN   r  r   r  s        rH   delete_rolezHTTPClient.delete_role  s/     0	
 ||Af|--rb   c               ,    | j                  ||||      S )N)rN   r   r/  r   r  )r[   r   rN   role_idsr   s        rH   replace_roleszHTTPClient.replace_roles(  s%     whv   
 	
rb   c               F    t        dd|      }| j                  |||      S )Nr   r  rp  r8  r  )r[   rN   r   r/  r  s        rH   create_rolezHTTPClient.create_role4  s(     &4xH||AF6|::rb   c               F    t        dd|      }| j                  |||      S )Nr,  r  rp  r8  r  )r[   rN   	positionsr   r  s        rH   move_role_positionzHTTPClient.move_role_position:  s(     '5I||AIf|==rb   c               H    t        dd|||      }| j                  ||      S )Nr>  4/guilds/{guild_id}/members/{user_id}/roles/{role_id}rN   r   r  r1  r  r[   rN   r   r  r   r  s         rH   add_rolezHTTPClient.add_roleD  s2     B
 ||Af|--rb   c               H    t        dd|||      }| j                  ||      S )Nr   r  r  r1  r  r  s         rH   remove_rolezHTTPClient.remove_roleU  s2     B
 ||Af|--rb   c               V    ||||d}t        dd||      }| j                  |||      S )N)r  allowdenyrL  r>  +/channels/{channel_id}/permissions/{target}rM   targetr8  r  )	r[   rM   r  r  r  rL  r   r   r  s	            rH   edit_channel_permissionsz#HTTPClient.edit_channel_permissionsf  s?      %tL9!	
 ||AGF|;;rb   c               F    t        dd||      }| j                  ||      S )Nr   r  r  r1  r  )r[   rM   r  r   r  s        rH   delete_channel_permissionsz%HTTPClient.delete_channel_permissionsy  s/     9!	
 ||Af|--rb   c                <    | j                  t        dd|            S )Nr   !/guilds/{guild_id}/welcome-screenrp  r   r  s     rH   get_welcome_screenzHTTPClient.get_welcome_screen  s"     ||%<xP
 	
rb   c                   d}|j                         D ci c]  \  }}||v s|| }}}| j                  t        dd|      ||      S c c}}w )N)r  welcome_channelsenabledr,  r  rp  r8  r  r[   rN   r   r   keyskeyvals          rH   edit_welcome_screenzHTTPClient.edit_welcome_screen  sa    

 -4MMOKSsd{38KK||'>R  
 	
 Lr  c               ,    | j                  ||||      S )N)rN   r   rM   r   r  )r[   r   rN   rM   r   s        rH   move_memberzHTTPClient.move_member  s%     w:f   
 	
rb   c               N    d|i}t        dd|      }| j                  |||      S )Nr   r>  z#/channels/{channel_id}/voice-statusr   r8  r  )r[   rM   r   r   r   r  s         rH   set_voice_channel_statusz#HTTPClient.set_voice_channel_status  s2     V$%>:V||AGF|;;rb   c                <    | j                  t        dd|            S )Nr   /stage-instances/{channel_id}r   r   r   s     rH   get_stage_instancezHTTPClient.get_stage_instance  s"     ||%8ZP
 	
rb   c                   d}|j                         D ci c]  \  }}||v s|| }}}|j                  d      t        |d         |d<   | j                  t	        dd      ||      S c c}}w )N)rM   r  privacy_levelsend_start_notificationr  r   z/stage-instancesr8  )rU   rZ   r>   r   rK   )r[   r   r   r  r]   r^   s         rH   create_stage_instancez HTTPClient.create_stage_instance  s    

 %,MMOGDAqqJ1a4GG;;01=14W=V5W1XG-.||&,-GF  
 	
 Hs
   A+A+c                   d}|j                         D ci c]  \  }}||v s|| }}}| j                  t        dd|      ||      S c c}}w )N)r  r  r,  r  r   r8  r  )r[   rM   r   r   r  r]   r^   s          rH   edit_stage_instancezHTTPClient.edit_stage_instance  sa    

 %,MMOGDAqqJ1a4GG||':zR  
 	
 Hr  c               @    | j                  t        dd|      |      S )Nr   r  r   r1  r   r  s      rH   delete_stage_instancez HTTPClient.delete_stage_instance  s*     ||(;
S  
 	
rb   c                Z    dt        |      i}| j                  t        dd|      |      S )Nwith_user_countr   #/guilds/{guild_id}/scheduled-eventsrp  rM  r  )r[   rN   r  r   s       rH   get_scheduled_eventszHTTPClient.get_scheduled_events  s=     s?3
 ||%>R  
 	
rb   c                \    dt        |      i}| j                  t        dd||      |      S )Nr  r   ./guilds/{guild_id}/scheduled-events/{event_id}rN   event_idrM  r  )r[   rN   r  r  r   s        rH   get_scheduled_eventzHTTPClient.get_scheduled_event  sF     s?3
 ||@!!	   
 	
rb   c                    d}|j                         D ci c]  \  }}||v s|| }}}| j                  t        dd|      ||      S c c}}w )N)	rM   r  r  scheduled_start_timescheduled_end_timer  entity_typeentity_metadatarU  r   r  rp  r8  r  )r[   rN   r   r   r  r]   r^   s          rH   create_scheduled_eventz!HTTPClient.create_scheduled_event	  sa    


 %,MMOGDAqqJ1a4GG||&?(S  
 	
 Hr  c                >    | j                  t        dd||            S )Nr   r  r  r   )r[   rN   r  s      rH   delete_scheduled_eventz!HTTPClient.delete_scheduled_event	  s)     ||@!!	
 	
rb   c                    d}|j                         D ci c]  \  }}||v s|| }}}| j                  t        dd||      ||      S c c}}w )N)
rM   r  r  r  r  r  r  r   r  rU  r,  r  r  r8  r  )r[   rN   r  r   r   r  r]   r^   s           rH   edit_scheduled_eventzHTTPClient.edit_scheduled_event(	  sj    

 %,MMOGDAqqJ1a4GG||@!!	   	
 		
 Hs
   AAc                    t        |      t        |      d}|t        |      |d<   |t        |      |d<   | j                  t        dd||      |      S )N)rJ  with_memberrY  rK  r   z4/guilds/{guild_id}/scheduled-events/{event_id}/usersr  rM  r  )r[   rN   r  rJ  r  rY  rK  r   s           rH   get_scheduled_event_usersz$HTTPClient.get_scheduled_event_usersH	  sr     Z{+

 "6{F8!%jF7O||F!!	   
 	
rb   )with_localizationsr   c               \    dt        |      i}| j                  t        dd|      ||      S )Nr  r   '/applications/{application_id}/commandsapplication_id)r   r   r  )r[   r  r  r   r   s        rH   get_global_commandszHTTPClient.get_global_commandsh	  sC     ',>(?@||9-
   
 	
rb   c                F    t        dd||      }| j                  ||      S )Nr   4/applications/{application_id}/commands/{command_id}r  
command_id)r   r  )r[   r  r  r   r  s        rH   get_global_commandzHTTPClient.get_global_command{	  s/     B)!	
 ||Af|--rb   c                D    t        dd|      }| j                  ||      S )Nr   r  r  r   r  r[   r  r   r  s       rH   upsert_global_commandz HTTPClient.upsert_global_command	  s,     5)

 ||AG|,,rb   c                    d}|j                         D ci c]  \  }}||v s|| }}}t        dd||      }| j                  ||      S c c}}w )Nr  r  r  r,  r  r  r   rU   rK   r   )r[   r  r  r   r  r]   r^   r  s           rH   edit_global_commandzHTTPClient.edit_global_command	  sc    


 %,MMOGDAqqJ1a4GGB)!	
 ||AG|,, Hs
   AAc                B    t        dd||      }| j                  |      S )Nr   r  r  r  )r[   r  r  r  s       rH   delete_global_commandz HTTPClient.delete_global_command	  s*     B)!	
 ||Arb   c                D    t        dd|      }| j                  ||      S )Nr>  r  r  r   r  r  s       rH   bulk_upsert_global_commandsz&HTTPClient.bulk_upsert_global_commands	  s,     5)

 ||AG|,,rb   c                B    t        dd||      }| j                  |      S )Nr   9/applications/{application_id}/guilds/{guild_id}/commandsr  rN   r  r[   r  rN   r  s       rH   get_guild_commandszHTTPClient.get_guild_commands	  s*     G)	
 ||Arb   c                D    t        dd|||      }| j                  |      S )Nr   F/applications/{application_id}/guilds/{guild_id}/commands/{command_id}r  rN   r  r  r[   r  rN   r  r  s        rH   get_guild_commandzHTTPClient.get_guild_command	  s-     T)!
 ||Arb   c                F    t        dd||      }| j                  ||      S )Nr   r  r  r   r  r[   r  rN   r   r  s        rH   upsert_guild_commandzHTTPClient.upsert_guild_command	  s/     G)	
 ||AG|,,rb   c                    d}|j                         D ci c]  \  }}||v s|| }}}t        dd|||      }| j                  ||      S c c}}w )Nr  r,  r  r  r   r  )	r[   r  rN   r  r   r  r]   r^   r  s	            rH   edit_guild_commandzHTTPClient.edit_guild_command	  sf    


 %,MMOGDAqqJ1a4GGT)!
 ||AG|,, Hs
   AAc                D    t        dd|||      }| j                  |      S )Nr   r  r  r  r  s        rH   delete_guild_commandzHTTPClient.delete_guild_command	  s-     T)!
 ||Arb   c                F    t        dd||      }| j                  ||      S )Nr>  r  r  r   r  r  s        rH   bulk_upsert_guild_commandsz%HTTPClient.bulk_upsert_guild_commands
  s/     G)	
 ||AG|,,rb   c                @    t        dd|      }| j                  |      S )Nr   (/guilds/{guild_id}/auto-moderation/rulesrp  r  r]  s      rH   get_auto_moderation_rulesz$HTTPClient.get_auto_moderation_rules
  s'     6

 ||Arb   c                B    t        dd||      }| j                  |      S )Nr   2/guilds/{guild_id}/auto-moderation/rules/{rule_id}rN   rule_idr  )r[   rN   r  r  s       rH   get_auto_moderation_rulez#HTTPClient.get_auto_moderation_rule&
  s*    
 @	
 ||Arb   c                F    t        dd|      }| j                  |||      S )Nr   r
  rp  r8  r  )r[   rN   r   r   r  s        rH   create_auto_moderation_rulez&HTTPClient.create_auto_moderation_rule3
  s.     6

 ||AGF|;;rb   c                H    t        dd||      }| j                  |||      S )Nr,  r  r  r8  r  )r[   rN   r  r   r   r  s         rH   edit_auto_moderation_rulez$HTTPClient.edit_auto_moderation_rule@
  s1     @	
 ||AGF|;;rb   c                F    t        dd||      }| j                  ||      S )Nr   r  r  r1  r  )r[   rN   r  r   r  s        rH   delete_auto_moderation_rulez&HTTPClient.delete_auto_moderation_ruleO
  s/     @	
 ||Af|--rb   c                    i }|r||d<   |r||d<   |r||d<   dt        j                  |      dg}|r*|j                  d|j                  |j                  dd       | j                  |||r|g	      S d 	      S )
Nr	  r   r  r  rB  r#  r  r  r  )r   r   r  r!  r  r   )r[   r   r#  r	  r   r  r   r   s           rH   _edit_webhook_helperzHTTPClient._edit_webhook_helper_
  s     #%!(GI &GH*:G&' '0&
 KK"!WW $$>	 ||EdTF|MM|MMrb   )r   c               \    t        dd||      }d|i}|||d<   | j                  ||      S )Nr   z;/interactions/{interaction_id}/{interaction_token}/callback)interaction_idinteraction_tokenrL  r   r   r  )r[   r  r   rL  r   r  r   s          rH   create_interaction_responsez&HTTPClient.create_interaction_response
  sL     I)#	
 D#
 "GFO||AG|,,rb   c                B    t        dd||      }| j                  |      S )Nr   A/webhooks/{application_id}/{interaction_token}/messages/@originalr  r  r  r[   r  r   r  s       rH   !get_original_interaction_responsez,HTTPClient.get_original_interaction_response
  s*    
 O)#	
 ||Arb   c                L    t        dd||      }| j                  |||||      S )Nr,  r  r  r#  r	  r   r  rK   r  )r[   r  r   r#  r	  r   r  r  s           rH   "edit_original_interaction_responsez-HTTPClient.edit_original_interaction_response
  sC     O)#	
 ((- ) 
 	
rb   c                B    t        dd||      }| j                  |      S )Nr   r  r  r  r   s       rH   $delete_original_interaction_responsez/HTTPClient.delete_original_interaction_response
  s*     O)#	
 ||Arb   c                N    t        dd||      }| j                  ||||||      S )Nr   z./webhooks/{application_id}/{interaction_token}r  )r	  r   r   r   r  r&  )	r[   r  r   r   r	  r   r   r  r  s	            rH   create_followup_messagez"HTTPClient.create_followup_message
  sF     <)#	
 ))- * 
 	
rb   c                N    t        dd|||      }| j                  |||||      S )Nr,  D/webhooks/{application_id}/{interaction_token}/messages/{message_id}r  r  r.  r#  r$  )	r[   r  r   r.  r#  r	  r   r  r  s	            rH   edit_followup_messagez HTTPClient.edit_followup_message
  sF     R)#!
 ((- ) 
 	
rb   c                D    t        dd|||      }| j                  |      S )Nr   r+  r,  r  )r[   r  r   r.  r  s        rH   delete_followup_messagez"HTTPClient.delete_followup_message
  s-     R)#!
 ||Arb   c                B    t        dd||      }| j                  |      S )Nr   E/applications/{application_id}/guilds/{guild_id}/commands/permissionsr  r  r  s       rH   )get_guild_application_command_permissionsz4HTTPClient.get_guild_application_command_permissions  s*    
 S)	
 ||Arb   c                D    t        dd|||      }| j                  |      S )Nr   R/applications/{application_id}/guilds/{guild_id}/commands/{command_id}/permissionsr  r  r  s        rH   #get_application_command_permissionsz.HTTPClient.get_application_command_permissions  s-     `)!
 ||Arb   c                H    t        dd|||      }| j                  ||      S )Nr>  r4  r  r   r  )r[   r  rN   r  r   r  s         rH   $edit_application_command_permissionsz/HTTPClient.edit_application_command_permissions$  s2     `)!
 ||AG|,,rb   c                F    t        dd||      }| j                  ||      S )Nr>  r1  r  r   r  r  s        rH   /bulk_edit_guild_application_command_permissionsz:HTTPClient.bulk_edit_guild_application_command_permissions4  s/     S)	
 ||AG|,,rb   c                @    t        dd|      }| j                  |      S )Nr   8/applications/{application_id}/role-connections/metadatar  r  r[   r  r  s      rH   0get_application_role_connection_metadata_recordsz;HTTPClient.get_application_role_connection_metadata_recordsD  s'     F)

 ||Arb   c                D    t        dd|      }| j                  ||      S )Nr>  r;  r  r   r  r  s       rH   3update_application_role_connection_metadata_recordsz>HTTPClient.update_application_role_connection_metadata_recordsO  s,    
 F)

 ||AG|,,rb   c                @    t        dd|      }| j                  |      S )Nr   z#/applications/{application_id}/skusr  r  r<  s      rH   	list_skuszHTTPClient.list_skus]  s'     1)

 ||Arb   )r   sku_idsrY  rK  rJ  rN   exclude_endedc                   i }	|||	d<   |dj                  |      |	d<   |||	d<   |||	d<   |||	d<   |||	d<   |t        |      |	d<   t        d	d
|      }
| j                  |
|	      S )Nr   ,rB  rY  rK  rJ  rN   rC  r   +/applications/{application_id}/entitlementsr  rM  )r.  r>   rK   r   )r[   r  r   rB  rY  rK  rJ  rN   rC  r   r  s              rH   list_entitlementszHTTPClient.list_entitlementsh  s     "$ 'F9 # 1F9%F8#F7O#F7O!)F:$&)-&8F?#9)

 ||Af|--rb   c                B    t        dd||      }| j                  |      S )Nr   zD/applications/{application_id}/entitlements/{entitlement_id}/consumer  entitlement_idr  r[   r  rJ  r  s       rH   consume_entitlementzHTTPClient.consume_entitlement  s*    
 R))	
 ||Arb   c                D    t        dd|      }| j                  ||      S )Nr   rF  r  r   r  r  s       rH   create_test_entitlementz"HTTPClient.create_test_entitlement  s,    
 9)

 ||AG|,,rb   c                B    t        dd||      }| j                  |      S )Nr   z</applications/{application_id}/entitlements/{entitlement_id}rI  r  rK  s       rH   delete_test_entitlementz"HTTPClient.delete_test_entitlement  s*    
 J))	
 ||Arb   c                <    | j                  t        dd|            S )Nr   /guilds/{guild_id}/onboardingrp  r   r  s     rH   get_onboardingzHTTPClient.get_onboarding  r  rb   c                   d}|j                         D ci c]  \  }}||v s|| }}}| j                  t        dd|      ||      S c c}}w )N)promptsdefault_channel_idsr  moder>  rR  rp  r8  r  r  s          rH   edit_onboardingzHTTPClient.edit_onboarding  sa    
 -4MMOKSsd{38KK||%88L  
 	
 Lr  c                >    | j                  t        dd||            S )Nr   z0/channels/{channel_id}/polls/{message_id}/expirer-  r   r]  s      rH   expire_pollzHTTPClient.expire_poll  s)     ||B%%	
 	
rb   c                ^    t        dd|||      }d|i}|r||d<   | j                  ||      S )Nr   z=/channels/{channel_id}/polls/{message_id}/answers/{answer_id})rM   r.  	answer_idrJ  rK  rM  r  )r[   rM   r.  r\  rJ  rK  r  r   s           rH   get_answer_voterszHTTPClient.get_answer_voters  sL     K!!
 U"
 #F7O||Af|--rb   c                8    | j                  t        dd            S )Nr   z/oauth2/applications/@mer   ra   s    rH   application_infozHTTPClient.application_info  s    ||E%)CDEErb   c               <    | j                  t        dd|            S )Nr   z"/applications/{application_id}/rpcr  r   )r[   r  s     rH   get_applicationzHTTPClient.get_application  s&     ||4-
 	
rb   r   )rA   zlibc                  K   	 | j                  t        dd             d {   }|rd}nd}|j	                  |d   |t
              S 7 %# t        $ r}t               |d }~ww xY ww)Nr   z/gateway+{0}?encoding={1}&v={2}&compress=zlib-stream{0}?encoding={1}&v={2}rY   r   rK   r   r   r   r?   r[   rA   rb  r   ry   r  s         rH   get_gatewayzHTTPClient.get_gateway  si     	-eE:&>??D AE,E||DK;?? @ 	-!#,	-s7   A&A
 AA
 !A&A
 
	A#AA##A&c                  K   	 | j                  t        dd             d {   }|rd}nd}|d   |j	                  |d   |t
              fS 7 *# t        $ r}t               |d }~ww xY ww)Nr   z/gateway/botrd  re  shardsrY   rf  rg  s         rH   get_bot_gatewayzHTTPClient.get_bot_gateway  sr     	-eE>&BCCD AE,EH~u||DK;OOO D 	-!#,	-s7   A+A AA &A+A 	A(A##A((A+c                <    | j                  t        dd|            S )Nr   z/users/{user_id}r   r   )r[   r   s     rH   get_userzHTTPClient.get_user  s    ||E%);WMNNrb   rr   )r   zaiohttp.BaseConnector | Noner   
str | Noner   zaiohttp.BasicAuth | Noner   z asyncio.AbstractEventLoop | Noner   boolrf   rg   r|   )rY   rW   r   r>   rf   r   )
r   rK   r   Sequence[File] | Noner   zIterable[dict[str, Any]] | Noner   r   rf   r   )rY   rW   rf   bytes)r   rW   rf   z	user.User)rf   Response[None])r   r6   r   	list[int]rf   z Response[channel.GroupDMChannel])r   r6   rf   zResponse[channel.DMChannel])rM   r6   r	  rn  r   ro  r"   embed.Embed | Noner   list[embed.Embed] | Noner  int | str | Noner  bool | Noner  message.AllowedMentions | Noner  message.MessageReference | Noner   list[sticker.StickerItem] | Noner!   !list[components.Component] | Noner  
int | Noner,   poll.Poll | Nonerf   Response[message.Message])rM   r6   rf   rr  )r   rK   r   Sequence[File]r	  rn  r   ro  r"   rt  r   z#Iterable[embed.Embed | None] | Noner  rv  r  rw  r  rx  r  ry  r  rz  r!   r{  r  r|  r,   r}  rf   r~  )rM   r6   r   r  r	  rn  r   ro  r"   rt  r   ru  r  rv  r  rw  r  rx  r  ry  r  rz  r!   r{  r  r|  r,   r}  rf   r~  )r   rK   r   r  rf   r~  )rM   r6   r.  r6   r   r  rf   r~  )rM   r6   r.  r6   r   rn  rf   rr  )rM   r6   r9  r7   r   rn  rf   rr  )rM   r6   r.  r6   r/  r   rf   r~  )rM   r6   r.  r6   r#   rW   rf   rr  )
rM   r6   r.  r6   r#   rW   rD  r6   rf   rr  )NN)rM   r6   r.  r6   r#   rW   rJ  r>   rK  Snowflake | NonerL  r|  rf   Response[list[user.User]])rM   r6   r.  r6   rf   rr  )rM   r6   r.  r6   rf   r~  )rM   r6   rf   Response[channel.Channel])NNN)rM   r6   rJ  r>   rY  r  rK  r  rZ  r  rf   Response[list[message.Message]])rM   r6   rf   r  )r   r6   rN   r6   r   rn  rf   rr  )
r   r6   rN   r6   rm  r>   r   rn  rf   rr  )
rq  zlist[Snowflake]rN   r6   rm  r>   r   rn  rf   zResponse[guild.GuildBulkBan])r   r6   rN   r6   ru  rw  rv  rw  r   rn  rf   Response[member.Member])r   dict[str, Any]rf   Response[user.User])rN   r6   r~  rW   r   rn  rf   zResponse[member.Nickname])
rN   r6   r   r6   r~  rW   r   rn  rf   r  )rN   r6   r   r  rf   rr  )rN   r6   r   r6   r   r  rf   rr  )
rN   r6   r   r6   r   rn  r/  r   rf   Response[member.MemberWithUser])rM   r6   r   rn  r  r   rf   r  )rN   r6   r   z!list[guild.ChannelPositionUpdate]r   rn  rf   rr  )
rN   r6   r  zchannel.ChannelTyper   rn  r  r   rf   zResponse[channel.GuildChannel])rM   r6   r   rn  rf   rr  )rM   r6   r.  r6   r  rW   r  threads.ThreadArchiveDurationr  r>   r   rn  rf   Response[threads.Thread])rM   r6   r  rW   r  r  rL  zthreads.ThreadTyper  r>   r  ro  r   rn  rf   r  ) rM   r6   r	  rn  r  rW   r  r  r  r>   r  ro  r  SnowflakeList | Noner   rn  r   rp  r"   rt  r   ru  r  rv  r  rx  r  rz  r!   r{  rf   r  )rM   r6   r   r6   rf   rr  )N2   )rM   r6   rY  r  rJ  r>   rf   )Response[threads.ThreadPaginationPayload])rN   r6   rf   r  )rM   r6   rf   z$Response[list[threads.ThreadMember]])
rM   r6   r  rW   r  zbytes | Noner   rn  rf   Response[webhook.Webhook])rM   r6   rf   Response[list[webhook.Webhook]])rN   r6   rf   r  )rO   r6   rf   r  )rM   r6   r  r6   r   rn  rf   rr  )rJ  r>   rY  r  rK  r  rf   zResponse[list[guild.Guild]])rN   r6   rf   rr  )rN   r6   rf   Response[guild.Guild])r  rW   r  rn  rf   r  )rN   r6   r   rn  r/  r   rf   r  )rN   r6   r  ro  r   rn  rf   zResponse[guild.GuildMFAModify])r  rW   rf   Response[template.Template])rN   r6   rf   z!Response[list[template.Template]])rN   r6   r   ztemplate.CreateTemplaterf   r  )rN   r6   r  rW   rf   r  )rN   r6   r  rW   rf   rr  )r  rW   r  rW   r  rn  rf   r  )
rN   r6   rJ  r|  rY  r  rK  r  rf   zResponse[list[guild.Ban]])r   r6   rN   r6   rf   zResponse[guild.Ban])rN   r6   rf   zResponse[invite.VanityInvite])rN   r6   rf   z"Response[list[guild.GuildChannel]])rN   r6   rJ  r>   rK  r  rf   %Response[list[member.MemberWithUser]])rN   r6   r!  rW   rJ  r>   rf   r  )rN   r6   rD  r6   rf   r  )rN   r6   r(  r>   r)  ro  r/  	list[str]r   rn  rf   Response[guild.GuildPrune])rN   r6   r(  r>   r/  r  rf   r  )r4  r6   rf   zResponse[sticker.Sticker])rf   z)Response[sticker.ListPremiumStickerPacks])rN   r6   rf   z$Response[list[sticker.GuildSticker]])rN   r6   r4  r6   rf   Response[sticker.GuildSticker])
rN   r6   r   zsticker.CreateGuildStickerr#  r   r   rW   rf   r  )
rN   r6   r4  r6   r   zsticker.EditGuildStickerr   rn  rf   r  )rN   r6   r4  r6   r   rn  rf   rr  )rN   r6   rf   zResponse[list[emoji.Emoji]])rN   r6   rR  r6   rf   Response[emoji.Emoji])rN   r6   r  rW   rU  rq  r/  r  r   rn  rf   r  )rN   r6   rR  r6   r   rn  rf   rr  )
rN   r6   rR  r6   r   r  r   rn  rf   r  )rN   r6   rf   z'Response[list[integration.Integration]])rN   r6   rL  zintegration.IntegrationTyper  r>   rf   rr  )rN   r6   rd  r6   r   r   rf   rr  )rN   r6   rd  r6   rf   rr  )rN   r6   rd  r6   r   rn  rf   rr  )d   NNNN)rN   r6   rJ  r>   rY  r  rK  r  r   r  rk  zAuditLogAction | Nonerf   zResponse[audit_log.AuditLog])rN   r6   rf   zResponse[widget.Widget])rN   r6   rf   zResponse[widget.WidgetSettings])rM   r6   r   rn  rq  r>   rr  r>   rs  ro  rt  ro  ru  zinvite.InviteTargetType | Nonerv  r  rw  r  rf   Response[invite.Invite])
r  rW   r  ro  r{  ro  r|  r|  rf   r  )rN   r6   rf   Response[list[invite.Invite]])rM   r6   rf   r  )r  rW   r   rn  rf   rr  )rN   r6   rf   Response[list[role.Role]])
rN   r6   r  r6   r   rn  r/  r   rf   Response[role.Role])rN   r6   r  r6   r   rn  rf   rr  )
r   r6   rN   r6   r  rs  r   rn  rf   r  )rN   r6   r   rn  r/  r   rf   r  )rN   r6   r  zlist[guild.RolePositionUpdate]r   rn  rf   r  )
rN   r6   r   r6   r  r6   r   rn  rf   rr  )rM   r6   r  r6   r  	int | strr  r  rL  channel.OverwriteTyper   rn  rf   rr  )rM   r6   r  r  r   rn  rf   rr  )rN   r6   rf   &Response[welcome_screen.WelcomeScreen])rN   r6   r   r   r   rn  rf   r  )
r   r6   rN   r6   rM   r6   r   rn  rf   r  )rM   r6   r   rn  r   rn  rf   rr  )rM   r6   rf   Response[channel.StageInstance])r   rn  r   r   rf   r  )rM   r6   r   rn  r   r   rf   rr  )T)rN   r6   r  ro  rf   z/Response[list[scheduled_events.ScheduledEvent]])rN   r6   r  r6   r  ro  rf   )Response[scheduled_events.ScheduledEvent])rN   r6   r   rn  r   r   rf   r  )rN   r6   r  r6   rf   rr  )
rN   r6   r  r6   r   rn  r   r   rf   r  )FNN)rN   r6   r  r6   rJ  r>   r  ro  rY  r6   rK  r6   rf   z9Response[list[scheduled_events.ScheduledEventSubscriber]])r  r6   r  ro  r   rW   rf   /Response[list[interactions.ApplicationCommand]])r  r6   r  r6   r   rW   rf   )Response[interactions.ApplicationCommand])r  r6   rf   r  )r  r6   r  r6   r   #interactions.EditApplicationCommandrf   r  )r  r6   r  r6   rf   rr  )r  r6   rf   r  )r  r6   rN   r6   rf   r  )r  r6   rN   r6   r  r6   rf   r  )r  r6   rN   r6   r   r  rf   r  )
r  r6   rN   r6   r  r6   r   r  rf   r  )r  r6   rN   r6   r  r6   rf   rr  )r  r6   rN   r6   r   z)list[interactions.EditApplicationCommand]rf   r  )rN   r6   rf   z#Response[list[automod.AutoModRule]])rN   r6   r  r6   rf   Response[automod.AutoModRule])rN   r6   r   zautomod.CreateAutoModRuler   rn  rf   r  )
rN   r6   r  r6   r   zautomod.EditAutoModRuler   rn  rf   r  )rN   r6   r  r6   r   rn  rf   rr  )NNNN)
r   rK   r#  File | Noner	  rn  r   ru  r  rx  )
r  r6   r   rW   rL  r   r   z=interactions.InteractionApplicationCommandCallbackData | Nonerf   rr  )r  r6   r   rW   rf   r~  )r  r6   r   rW   r#  r  r	  rn  r   ru  r  rx  rf   r~  )r  r6   r   rW   rf   rr  )NNFNN)r  r6   r   rW   r   zlist[File] | Noner	  rn  r   ro  r   ru  r  rx  rf   r~  )r  r6   r   rW   r.  r6   r#  r  r	  rn  r   ru  r  rx  rf   r~  )r  r6   r   rW   r.  r6   rf   rr  )r  r6   rN   r6   rf   z?Response[list[interactions.GuildApplicationCommandPermissions]])r  r6   rN   r6   r  r6   rf   z9Response[interactions.GuildApplicationCommandPermissions])
r  r6   rN   r6   r  r6   r   z3interactions.BaseGuildApplicationCommandPermissionsrf   rr  )r  r6   rN   r6   r   z<list[interactions.PartialGuildApplicationCommandPermissions]rf   rr  )r  r6   rf   MResponse[list[application_role_connection.ApplicationRoleConnectionMetadata]])r  r6   r   zClist[application_role_connection.ApplicationRoleConnectionMetadata]rf   r  )r  r6   rf   z Response[list[monetization.SKU]])r  r6   r   r  rB  zlist[Snowflake] | NonerY  r  rK  r  rJ  r|  rN   r  rC  rw  rf   z(Response[list[monetization.Entitlement]])r  r6   rJ  r6   rf   rr  )r  r6   r   z)monetization.CreateTestEntitlementPayloadrf   z"Response[monetization.Entitlement])rN   r6   rf   Response[onboarding.Onboarding])rN   r6   r   r   r   rn  rf   r  )rM   r6   r.  r6   r\  r>   rJ  r>   rK  r  rf   r  )rf   zResponse[appinfo.AppInfo])r  r6   rf   z Response[appinfo.PartialAppInfo])rA   rW   rb  ro  rf   rW   )rA   rW   rb  ro  rf   ztuple[int, str])r   r6   rf   r  )rh   ri   rj   __doc__r_   r   r   r   r   r   r   r   r   r   r   r  r  r$  r'  r*  r0  r5  r:  r<  rB  rE  rG  rN  rQ  rS  rU  rW  r[  r^  ra  rc  re  rj  rn  rr  rt  ry  r{  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r"  r$  r0  r2  r5  r7  r:  r>  rG  rI  rK  rN  rS  rV  rX  rZ  r^  r`  re  rg  ri  rl  rn  rp  rz  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r!  r%  r'  r)  r-  r/  r2  r5  r7  r9  r=  r?  rA  rG  rL  rN  rP  rS  rX  rZ  r]  r_  ra  rh  rk  rm  rl   rb   rH   r   r      s   M 37
 !/315!
/
 	

 -
 /
 
 

< => >& (,04mDmD %	mD
 .mD mD 
mD^	A)$;
	
 	
.7	
	)	

P $(+/"&%);?=A598< !%8-8- 8-
 8- "8- )8-  8- #8- 98- ;8- 38- 68- 8- 8-  
#!8-t
 #$(6:"&%);?=A598< !%!@;@; 	@;
 @; @; "@; 4@;  @; #@; 9@; ;@; 3@; 6@; @;  !@;" 
##@;N #$(+/"&%);?=A598< !%!"
"
 	"

 "
 "
 ""
 )"
  "
 #"
 9"
 ;"
 3"
 6"
 "
  !"
" 
##"
H ; ;  ;
 
# ;D

 
 	
 
#
J ".. .
 . 
.( "<< #<
 < 
< 	,#	,1:	,FI	,	"	,
#
1:
CF
	
  	
  
"
#
1:
CF
	
$ #'.. . 	.
 .  . . 
#.4
#
1:
	

#
1:
CF
	
	#	1:		"	 $("&#'

 
 !	

  
 !
 
)
0

#

1:

	"

 RV	.#	.1:	.DN	.		. RV	.#	.1:	.DN	.		.
 MQ	. 	.,5	.?I	.		. '+!== = !$	=
 = 
=0 '+!<!< < !$	<
 < 
&<* PT	. 	.,5	.BL	.		.  !"!<< <
 < < < 
!<0H "<< <
 < 
#<& "<< < 	< < 
!<&-!-,:-	-	-!	-,5	-@N	-		-  ";; ;
 ; ; 
);, "	"<"< 	"<
 "< 
#"<R "99 09
 9 
9 "#
#
 *#

 #
 #
 
(#
R "		
	
 		

 
	
* "@@ @
 @  =@ !@ @ 
"@B "@@ 	@
  =@ !@ !@ @ @ 
"@< -1!'+$(+/"&;?598<#W@W@ W@
 W@  =W@ !W@ W@ +W@ W@ %W@ "W@ )W@  W@ 9W@  3!W@" 6#W@$ 
"%W@r


#

.7

	


	##	#.7	#		# TV2#2-=2MP2	22  TV2#2-=2MP2	22  TV2#2-=2MP2	22#!#	2####	-#  $!<< 	<
 < < 
#<"
#
	(



 "	

 &
 	

 

( $("&	NN !N  	N
 
%N"
 37
!
	
VD <@
!
.8
KN
	
B
!
-1
>H
	'
Q


!
,C
	$


!

),

	$


!
),
	$
$


"
*4
	
  !#'"&

 
 !	

  
 
#
(



!
	+

.!
.*-
.6F
.	.
... . 	.
 
/.

!

.7

	(

& "

 
 "	

 
 
 
$
,

 
 	

 
$
 

<
!
	-


!

/8

	'

)
)
 ,)
 	)

 )
 
()
V

 
 *	

 
 
(
$
!
/8
BL
	




!

-6

	

$ '+!<< < 	< $< < 
<. ".. .
 . 
.* "<< <
  < < 
< !	0	-!	-)D	-JM	-		-
-!
-3<
-IL
-	
-
!
3<
	
" ".. ".
 . 
.& #'"&$(-1.. . !	.
  . ". +. 
&.,


!
	(
 "6:+/26<< 	<
 < < < < 4< )<  0< 
!<H ! $/3

 	

 
 #-
 
!
(


#
	&
 7;

)3
	
Y "<< <
 < < 
<6 PT	.!	.,5	.BL	.		." "



 

 	

 

 
)

 <@;!;.8;KN;	; ">> 2>
 > 
#>  ".. . 	. . 
.. ".. . 	. . 
.2 "<< < 	<
 < $< < 
<0 ".. &.
 . 
."
!
	/
 JN
!
,/
<F
	/
. "



 

 	

 

 
)

 RV<#<-7<DN<	<
#
	(

#
03
	(
& >B
#
0:
NQ
	
  >B
#
0:
	
 <@

!

48

	8

 QU
!
-6
IM
	2
$ 9=
!
+5
IL
	2
,

!

-6

	

  "	

 
 	

 
 
3
J " 

 
 	

 
 
 
 
C
H $(
!
 !	

 
 
9
. 	.!. . 	.
 
3.-'-	2--!- - 5	-
 
3-(	'	5>			-'-	8-	'	3<		8	!  	
 
3-!- - 5	-
 
3--!- - 	-
 5- 
3-,!  	
 
-!- - ;	-
 
9- 		 
-	  
'	" "	<< +< 	<
 
'<$ "<< < )	<
 < 
'<& "	.. . 	.
 
.& !"+/;?!N!N !N 	!N
 )!N 9!NR OS-!- -
 &- L- 
-.!  
#	" !"+/;?
!
 
 	

 
 )
 9
 
#
.	'	03			 $("+/;?
!
 
 !	

 
 
 )
 9
 
#
< !"+/;?
!
 
 	

 
 
 )
 9
 
#
2
'
03
AJ
	
!  
I	!  	
 
C-!- - 	-
 E- 
- -!- - N	-
 
- 	!	 
W	
-!
- U
- 
W	
-	!	 
*	 %)*.#'"& %)%)!.!!. "	!.
 (!. !!.  !. !. #!. #!. 
2!.F! " 
	
-!
- ;
- 
,	
-! " 
	
 JN
!
,/
<F
	(
$

#

1:

	"

$ #'.. . 	.
 .  . 
#.2F	
'	
	)	
 4: 	@ "(dPP/3P	POrb   r   )rG   zaiohttp.ClientResponserf   zdict[str, Any] | str)Ur  
__future__r   r   loggingr   r   typingr   r   r   r   r   r	   urllib.parser
   rX   r    r   r   errorsr   r   r   r   r   r   r   gatewayr   r   r   	getLoggerrh   r   typesr   enumsr   r   r#  r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   types.snowflaker6   r7   r8   BaseExceptionr9   r;   Responser?   __annotations__rI   rK   r<   hdrs	WEBSOCKETr   rl   rb   rH   <module>r     s   2 #   
  M M +      4 +w"#>      8 :A	]	+B	]	+Bc1%HS 	@ @<   . % t-O t-Orb   