
    hiA                        d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
mZmZ ddlmZmZmZ  G d d	e          Z G d
 de          Z G d de          ZdS )z6Objects shared by modules in the docx.oxml subpackage.    )annotations)cast)qn)OxmlElement)ST_DecimalNumberST_OnOff	ST_String)BaseOxmlElementOptionalAttributeRequiredAttributec                  N    e Zd ZU dZ ede          Zded<   ed	d            Z	dS )
CT_DecimalNumberzUsed for ``<w:numId>``, ``<w:ilvl>``, ``<w:abstractNumId>`` and several others,
    containing a text representation of a decimal number (e.g. 42) in its ``val``
    attribute.w:valintval
nsptagnamestrc                \    t          |t          d          t          |          i          S )zqReturn a new ``CT_DecimalNumber`` element having tagname `nsptagname` and
        ``val`` attribute set to `val`.r   )attrs)r   r   r   )clsr   r   s      h/var/www/development/aibuddy-work/election-extract/venv/lib/python3.11/site-packages/docx/oxml/shared.pynewzCT_DecimalNumber.new   s(     :bkk3s88-DEEEE    N)r   r   r   r   )
__name__
__module____qualname____doc__r   r   r   __annotations__classmethodr    r   r   r   r      se           ! *:;;C;;;;F F F [F F Fr   r   c                  :    e Zd ZU dZ eded          Zded<   dS )CT_OnOffzUsed for `w:b`, `w:i` elements and others.

    Contains a bool-ish string in its `val` attribute, xsd:boolean plus "on" and
    "off". Defaults to `True`, so `<w:b>` for example means "bold is turned on".
    r   T)defaultboolr   N)r   r   r   r   r   r   r   r   r    r   r   r"   r"      sT           "!4  C      r   r"   c                  N    e Zd ZU dZ ede          Zded<   edd            Z	dS )		CT_StringzUsed for `w:pStyle` and `w:tblStyle` elements and others.

    In those cases, it containing a style name in its `val` attribute.
    r   r   r   r   c                X    t          t          t          |                    }||_        |S )zVA new `CT_String`` element with tagname `nsptagname` and `val` attribute set to `val`.)r   r&   r   r   )r   r   r   elms       r   r   zCT_String.new/   s'     9k*5566
r   N)r   r   r   r   )
r   r   r   r   r   r	   r   r   r   r   r    r   r   r&   r&   '   s^          
 ! )44C4444   [  r   r&   N)r   
__future__r   typingr   docx.oxml.nsr   docx.oxml.parserr   docx.oxml.simpletypesr   r   r	   docx.oxml.xmlchemyr
   r   r   r   r"   r&   r    r   r   <module>r/      s   < < " " " " " "             ( ( ( ( ( ( G G G G G G G G G G T T T T T T T T T TF F F F F F F F	 	 	 	 	 	 	 	         r   