+
    WBiP	                    L    ^ RI Ht ^ RIt^ RIHtHt ^ RIHt  ! R R]4      tR# )    )annotationsN)ABCabstractmethod)cached_propertyc                      ] tR t^tRtRt R R lt]R R l4       t]R R l4       t	]
R	 R
 l4       t]R R l4       tRtR# )VersionSchemeInterfacea  
Example usage:

```python tab="plugin.py"
from hatchling.version.scheme.plugin.interface import VersionSchemeInterface


class SpecialVersionScheme(VersionSchemeInterface):
    PLUGIN_NAME = "special"
    ...
```

```python tab="hooks.py"
from hatchling.plugin import hookimpl

from .plugin import SpecialVersionScheme


@hookimpl
def hatch_register_version_scheme():
    return SpecialVersionScheme
```
 c               $    V ^8  d   QhRRRRRR/# )   rootstrconfigdictreturnNone )formats   "N/usr/lib/python3.14/site-packages/hatchling/version/scheme/plugin/interface.py__annotate__#VersionSchemeInterface.__annotate__$   s!      S $ 4     c                	    Wn         W n        R # )N)_VersionSchemeInterface__root_VersionSchemeInterface__config)selfr   r   s   &&&r   __init__VersionSchemeInterface.__init__$   s    r   c                   V ^8  d   QhRR/# )r   r   r   r   )r   s   "r   r   r   )   s      c r   c                    V P                   # )z+
The root of the project tree as a string.
)r   r   s   &r   r   VersionSchemeInterface.root(   s    
 {{r   c                   V ^8  d   QhRR/# )r   r   r   r   )r   s   "r   r   r   0   s       r   c                    V P                   # )z1
```toml config-example
[tool.hatch.version]
```
)r   r    s   &r   r   VersionSchemeInterface.config/   s     }}r   c                   V ^8  d   QhRR/# )r   r   boolr   )r   s   "r   r   r   9   s      t r   c                   ^ RI Hp VP                  \        P                  9   d%   \        P                  VP                  ,          R9  # V P
                  P                  RR4      p\        V\        4      '       g   Rp\        V4      hV# )z
This is the value of the `validate-bump` option, with the `HATCH_VERSION_VALIDATE_BUMP`
environment variable taking precedence. Validation is enabled by default.

```toml config-example
[tool.hatch.version]
validate-bump = true
```
)VersionEnvVarszvalidate-bumpTz(option `validate-bump` must be a boolean>   0false)
hatchling.utils.constantsr(   VALIDATE_BUMPosenvironr   get
isinstancer&   	TypeError)r   r(   validate_bumpmessages   &   r   r2   $VersionSchemeInterface.validate_bump8   sj     	=''2::5::n::;>QQ>-..@GG$$r   c               (    V ^8  d   QhRRRRRRRR/# )r   desired_versionr   original_versionversion_datar   r   r   )r   s   "r   r   r   P   s*      c S PT Y\ r   c                    R# )a  
This should return a normalized form of the desired version. If the
[validate_bump](reference.md#hatchling.version.scheme.plugin.interface.VersionSchemeInterface.validate_bump)
property is `True`, this method should also verify that the version is higher than the original version.
Nr   )r   r6   r7   r8   s   &&&&r   updateVersionSchemeInterface.updateO   s    r   )__config__rootN)__name__
__module____qualname____firstlineno____doc__PLUGIN_NAMEr   propertyr   r   r   r2   r   r:   __static_attributes__r   r   r   r   r      sf    0 K&      ,  r   r   )	
__future__r   r-   abcr   r   	functoolsr   r   r   r   r   <module>rI      s    " 	 # %MS Mr   