
    ,hS                        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y)z6Objects shared by modules in the docx.oxml subpackage.    )annotations)cast)qn)OxmlElement)ST_DecimalNumberST_OnOff	ST_String)BaseOxmlElementOptionalAttributeRequiredAttributec                  @    e Zd ZU dZ ede      Zded<   edd       Z	y)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valc                D    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   str)cls
nsptagnamer   s      R/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/docx/oxml/shared.pynewzCT_DecimalNumber.new   s     :bk3s8-DEE    N)r   r   r   r   )
__name__
__module____qualname____doc__r   r   r   __annotations__classmethodr    r   r   r   r      s/     !*:;C;F Fr   r   c                  2    e Zd ZU dZ eded      Zded<   y)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"      s!     "4C r   r"   c                  @    e Zd ZU dZ ede      Zded<   edd       Z	y)	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   c                F    t        t        t        |            }||_        |S )zhReturn a 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6
r   N)r   r   r   r   )
r   r   r   r   r   r	   r   r   r   r   r    r   r   r&   r&   '   s,    
 !)4C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/      sF    < "   ( G G T TF F	 	 r   