ó
    Û°›jÏ-  ã                   ó^   • S SK Jr  S SKJr   " S S\5      r " S S\5      r " S S\5      rg	)
é    )ÚShapeDocumenter)Úpy_type_namec                   óv   • \ rS rSrSS jrS r SS jr SS jr SS jr   SS jr	S	 r
S
 rS rS rS rSrg)ÚBaseParamsDocumenteré   Nc           	      ó0   • / nU R                  UUUSUUS9  g)aë  Fills out the documentation for a section given a model shape.

:param section: The section to write the documentation to.

:param shape: The shape of the operation.

:type include: Dictionary where keys are parameter names and
    values are the shapes of the parameter names.
:param include: The parameter shapes to include in the documentation.

:type exclude: List of the names of the parameters to exclude.
:param exclude: The names of the parameters to exclude from
    documentation.
N)ÚsectionÚshapeÚhistoryÚnameÚincludeÚexclude)Útraverse_and_document_shape)Úselfr	   r
   r   r   r   s         ÚQ/home/mande/repo/quber/.venv/lib/python3.13/site-packages/botocore/docs/params.pyÚdocument_paramsÚ$BaseParamsDocumenter.document_params   s.   € ð ˆØ×(Ñ(ØØØØØØð 	)ò 	
ó    c                 ó*   • U R                   " X40 UD6  g ©N©Ú_add_member_documentation©r   r	   r
   Úkwargss       r   Údocument_recursive_shapeÚ-BaseParamsDocumenter.document_recursive_shape+   s   € Ø×&Ò& wÑ@¸Ó@r   c                 ó*   • U R                   " X40 UD6  g r   r   )r   r	   r
   r   r   r   r   s          r   Údocument_shape_defaultÚ+BaseParamsDocumenter.document_shape_default.   s   € ð 	×&Ò& wÑ@¸Ó@r   c                 ó,  • U R                   " X40 UD6  UR                  nUR                  UR                  SUR                  R                  0S9nU R	                  U5        U R                  UUUS S9  UR                  S5      nU R                  U5        g )Nr
   ©Úcontext©r	   r
   r   r   zend-list)r   ÚmemberÚadd_new_sectionr   Ú_start_nested_paramr   Ú_end_nested_param)	r   r	   r
   r   r   r   r   Úparam_shapeÚparam_sections	            r   Údocument_shape_type_listÚ-BaseParamsDocumenter.document_shape_type_list3   sž   € ð 	×&Ò& wÑ@¸Ò@Ø—l‘lˆØ×/Ñ/Ø×Ñ w°·±×0AÑ0AÐ&Bð 0ð 
ˆð 	× Ñ  Ô/Ø×(Ñ(Ø!ØØØð	 	)ñ 	
ð ×)Ñ)¨*Ó5ˆØ×Ñ˜wÕ'r   c                 ó6  • U R                   " X40 UD6  UR                  SSUR                  R                  0S9nU R	                  U5        U R                  XrR                  5        UR                  UR
                  R                  SUR
                  R                  0S9nUR                  R                  5         U R	                  U5        U R                  UUR
                  US S9  UR                  S5      n	U R                  U	5        U R                  U	5        g )NÚkeyr
   r!   r#   zend-map)
r   r%   r-   r   r&   ÚvalueÚstyleÚindentr   r'   )
r   r	   r
   r   r   r   r   Úkey_sectionr)   Úend_sections
             r   Údocument_shape_type_mapÚ,BaseParamsDocumenter.document_shape_type_mapE   s  € ð 	×&Ò& wÑ@¸Ò@à×-Ñ-Ø˜G U§Y¡Y§^¡^Ð4ð .ð 
ˆð 	× Ñ  Ô-Ø×&Ñ& {·I±IÔ>à×/Ñ/Ø�K‰K×Ñ w°·±×0@Ñ0@Ð&Að 0ð 
ˆð 	×Ñ×"Ñ"Ô$Ø× Ñ  Ô/Ø×(Ñ(Ø!Ø—+‘+ØØð	 	)ñ 	
ð ×-Ñ-¨iÓ8ˆØ×Ñ˜{Ô+Ø×Ñ˜{Õ+r   c                 óT  • U R                  UR                  U5      nU R                  XUS9  U HT  n	U(       a  X•;   a  M  X‰   n
UR                  U	SU
R                  0S9nU R                  U5        U R                  UU
UU	S9  MV     UR                  S5      nU R                  U5        g )N)r   r
   r!   r#   úend-structure)Ú_add_members_to_shapeÚmembersr   r%   r   r&   r   r'   )r   r	   r
   r   r   r   r   r   r8   Úparamr(   r)   s               r   Údocument_shape_type_structureÚ2BaseParamsDocumenter.document_shape_type_structure`   s½   € ð ×,Ñ,¨U¯]©]¸GÓDˆØ×&Ñ& w¸DÐ&ÑAÛˆEÞ˜5Ó+ÙØ!™.ˆKØ#×3Ñ3Ø ¨×)9Ñ)9Ð:ð 4ð ˆMð ×$Ñ$ ]Ô3Ø×,Ñ,Ø%Ø!ØØð	 -ó ñ ð ×)Ñ)¨/Ó:ˆØ×Ñ˜wÕ'r   c                 ó   • g r   © r   s       r   r   Ú.BaseParamsDocumenter._add_member_documentation}   s   € Ør   c                 ób   • U(       a'  UR                  5       nU H  nX1UR                  '   M     U$ r   )Úcopyr   )r   r8   r   r9   s       r   r7   Ú*BaseParamsDocumenter._add_members_to_shape€   s+   € ÞØ—l‘l“nˆGÛ �Ø&+˜Ÿ
™
Ó#ñ !àˆr   c                 óÞ   • U R                  U5      n[        UR                  5      nSnUb  UR                  XS-  5        OUR                  R                  XT-  5        UR                  S5        g )Nz(%s) --Ú )Ú_get_special_py_type_namer   Ú	type_nameÚwriter/   Úitalics)r   Útype_sectionr
   Úspecial_py_typeÚpy_typeÚtype_formats         r   Ú"_document_non_top_level_param_typeÚ7BaseParamsDocumenter._document_non_top_level_param_type‡   sc   € Ø×8Ñ8¸Ó?ˆÜ˜uŸ™Ó/ˆàˆØÑ&ð ×Ñ˜{Ñ<Õ=à×Ñ×&Ñ& {Ñ'<Ô=Ø×Ñ˜3Õr   c                 ól   • UR                   R                  5         UR                   R                  5         g r   )r/   r0   Únew_line©r   r	   s     r   r&   Ú(BaseParamsDocumenter._start_nested_param”   ó"   € Ø�‰×ÑÔØ�‰×ÑÕ r   c                 ól   • UR                   R                  5         UR                   R                  5         g r   )r/   ÚdedentrO   rP   s     r   r'   Ú&BaseParamsDocumenter._end_nested_param˜   rR   r   r=   ©NN)NNN)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   r   r*   r3   r:   r   r7   rL   r&   r'   Ú__static_attributes__r=   r   r   r   r      sY   † ô
ò2Að >BôAð >Bô(ð& >Bô,ð@ ØØô(ò:òò ò!õ!r   r   c                   ó,   • \ rS rSrSrSrSS jrS rSrg)	ÚResponseParamsDocumenteré�   z5Generates the description for the response parameterszresponse-paramsNc                 ó   • UR                  S5      nUR                  S5        Ub-  UR                  R                  U 5        UR                  S5        UR                  S5      nU R	                  Xb5        UR                  S5      nUR
                  (       aÙ  UR                  R                  5         [        USS5      (       a’  UR                  S5      nS	n	S
R                  UR                  R                  5        V
s/ s H	  n
SU
 S3PM     sn
5      nSnUR                  X›-  5        UR                  S5      nUR                  R                  U5        UR                  UR
                  5        UR                  R                  5         g s  sn
f )Nú
param-nameú- rC   ú
param-typeúparam-documentationÚis_tagged_unionFúparam-tagged-union-docsaK  .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: %s.     If a client receives an unknown member it will     set ``SDK_UNKNOWN_MEMBER`` as the top level key,     which maps to the name or tag of the unknown     member. The structure of ``SDK_UNKNOWN_MEMBER`` is     as followsú, ú``z3'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}zparam-unknown-example)r%   rF   r/   ÚboldrL   Údocumentationr0   ÚgetattrÚjoinr8   ÚkeysÚ	codeblockÚinclude_doc_stringÚnew_paragraph)r   r	   r
   r   r   Úname_sectionrH   Údocumentation_sectionÚtagged_union_docsÚnoter-   Útagged_union_members_strÚunknown_code_exampleÚexamples                 r   r   Ú2ResponseParamsDocumenter._add_member_documentation¢   si  € Ø×.Ñ.¨|Ó<ˆØ×Ñ˜4Ô ØÑØ×Ñ×#Ñ# t fÔ.Ø×Ñ˜sÔ#Ø×.Ñ.¨|Ó<ˆØ×/Ñ/°ÔDà '× 7Ñ 7Ð8MÓ NÐØ××Ø!×'Ñ'×.Ñ.Ô0Ü�uÐ/°×7Ñ7Ø$+×$;Ñ$;Ø-ó%Ð!ð%ð ð ,0¯9©9Ø-2¯]©]×-?Ñ-?Ô-AÓBÒ-A c�r˜#˜˜b“\Ñ-AÑBó,Ð(ð Pð %ð "×'Ñ'¨Ñ(IÔJØ!×1Ñ1Ð2IÓJ�Ø—‘×'Ñ'Ð(<Ô=Ø!×4Ñ4°U×5HÑ5HÔIØ�‰×#Ñ#Õ%ùò Cs   Ã=Fc                 ó,   • U R                   " XU40 UD6  g r   )r:   )r   r	   r
   r   r   s        r   Ú document_shape_type_event_streamÚ9ResponseParamsDocumenter.document_shape_type_event_streamÈ   s   € ð 	×*Ò*¨7¸7ÑMÀfÓMr   r=   r   )	rW   rX   rY   rZ   Ú__doc__Ú
EVENT_NAMEr   ry   r[   r=   r   r   r]   r]   �   s   † Ù?à"€Jô$&õLNr   r]   c                   óD   • \ rS rSrSrSr S
S jr   SS jrS rS r	S	r
g)ÚRequestParamsDocumenteréÎ   z4Generates the description for the request parameterszrequest-paramsNc           	      óV  • [        U5      S:”  a-  U R                  " X40 UD6  UR                  R                  5         U R	                  UR
                  U5      n[        U5       Hn  u  p‰U(       a  X•;   a  M  Xy   n
UR                  U	SU
R                  0S9nUR                  R                  5         X’R                  ;   nU R                  UU
UU	US9  Mp     UR                  S5      n[        U5      S:”  a  UR                  R                  5         UR                  R                  5         g )Né   r
   r!   )r	   r
   r   r   Úis_requiredr6   )Úlenr   r/   r0   r7   r8   Ú	enumerater%   r   rO   Úrequired_membersr   rT   )r   r	   r
   r   r   r   r   r8   Úir9   r(   r)   r‚   s                r   r:   Ú5RequestParamsDocumenter.document_shape_type_structureÓ   s  € ô ˆw‹<˜!ÓØ×*Ò*¨7ÑD¸VÒDØ�M‰M× Ñ Ô"Ø×,Ñ,¨U¯]©]¸GÓDˆÜ! 'Ö*‰HˆAÞ˜5Ó+ÙØ!™.ˆKØ#×3Ñ3Ø ¨×)9Ñ)9Ð:ð 4ð ˆMð ×Ñ×(Ñ(Ô*Ø×#9Ñ#9Ñ9ˆKØ×,Ñ,Ø%Ø!ØØØ'ð -ó ñ +ð  ×)Ñ)¨/Ó:ˆÜˆw‹<˜!ÓØ�M‰M× Ñ Ô"Ø�‰×ÑÕ r   c                 ó  • U R                  U5      nUc  [        UR                  5      nU(       az  UR                  S5      nUR	                  SU SU 35        UR                  S5      n	U	R
                  R                  5         UR                  S5      n
U
R	                  SU S35        OtUR                  S5      n
U
R	                  S5        Ub-  U
R
                  R                  U 5        U
R	                  S5        UR                  S5      nU R                  X‚5        U(       aW  UR                  S	5      nUR
                  R                  5         UR
                  R                  S
5        UR	                  S5        UR                  (       aÎ  UR                  S5      nUR
                  R                  5         [        USS5      (       ae  UR                  S5      nSnSR                  UR                  R                  5        Vs/ s H	  nSU S3PM     sn5      nUR	                  UU-  5        UR                  UR                  5        U R!                  XÂ5        UR                  S5      nUR
                  R#                  5         g s  snf )Nrb   z:type z: zend-param-typer`   z:param ra   rC   zis-requiredz
[REQUIRED]rc   rd   Fre   zl.. note::    This is a Tagged Union structure. Only one of the     following top level keys can be set: %s. rf   rg   z	end-param)rD   r   rE   r%   rF   r/   rO   rh   rL   r0   ri   rj   rk   r8   rl   rn   Ú _add_special_trait_documentationro   )r   r	   r
   r   Úis_top_level_paramr‚   r   rJ   rH   Úend_type_sectionrp   Úis_required_sectionrq   rr   rs   r-   rt   Úend_param_sections                     r   r   Ú1RequestParamsDocumenter._add_member_documentationï   sL  € ð ×0Ñ0°Ó7ˆØ‰?Ü" 5§?¡?Ó3ˆGÞØ"×2Ñ2°<Ó@ˆLØ×Ñ ¨ v¨R°¨yÐ9Ô:Ø+×;Ñ;Ð<LÓMÐØ×"Ñ"×+Ñ+Ô-Ø"×2Ñ2°<Ó@ˆLØ×Ñ ¨¨¨bÐ1Õ2ð #×2Ñ2°<Ó@ˆLØ×Ñ˜tÔ$ØÑØ×"Ñ"×'Ñ'¨4¨&Ô2Ø×"Ñ" 3Ô'Ø"×2Ñ2°<Ó@ˆLØ×3Ñ3°LÔHæØ")×"9Ñ"9¸-Ó"HÐØ×%Ñ%×,Ñ,Ô.Ø×%Ñ%×*Ñ*¨<Ô8Ø×%Ñ% cÔ*Ø××Ø$+×$;Ñ$;Ø%ó%Ð!ð "×'Ñ'×.Ñ.Ô0Ü�uÐ/°×7Ñ7Ø$+×$;Ñ$;Ø-ó%Ð!ðDð ð
 ,0¯9©9Ø-2¯]©]×-?Ñ-?Ô-AÓBÒ-A c�r˜#˜˜b“\Ñ-AÑBó,Ð(ð "×'Ñ'¨Ð0HÑ(IÔJØ!×4Ñ4°U×5HÑ5HÔIØ×1Ñ1Ð2GÔOØ#×3Ñ3°KÓ@ÐØ×Ñ×-Ñ-Õ/ùò Cs   ÈJc                 óH   • SUR                   ;   a  U R                  U5        g g )NÚidempotencyToken)ÚmetadataÚ!_append_idempotency_documentation)r   r	   r
   s      r   r‰   Ú8RequestParamsDocumenter._add_special_trait_documentation(  s!   € Ø §¡Ó/Ø×2Ñ2°7Õ;ð 0r   c                 ó*   • SnUR                  U5        g )Nz,This field is autopopulated if not provided.)rF   )r   r	   Ú	docstrings      r   r’   Ú9RequestParamsDocumenter._append_idempotency_documentation,  s   € ØBˆ	Ø�‰�iÕ r   r=   rV   )NFF)rW   rX   rY   rZ   r{   r|   r:   r   r‰   r’   r[   r=   r   r   r~   r~   Î   s1   † Ù>à!€Jð >Bô!ð@ Ø Øô70òr<õ!r   r~   N)Úbotocore.docs.shaper   Úbotocore.docs.utilsr   r   r]   r~   r=   r   r   Ú<module>r™      s;   ðõ 0Ý ,ôI!˜?ô I!ôX.NÐ3ô .Nôb`!Ð2õ `!r   