o
    pi                     @   s  U d dl mZmZmZmZmZmZmZ d dlm	Z	m
Z
mZmZmZ eee	gee f eee e	df f ZdZeed< 	 de
defdd	Zd
Zeed< 	 de
deee  defddZdZeed< 	 de
deee  defddZdZeed< 	 de
deee  defddZdZeed< 	 de
deee  defddZdZeed< 	 de
defddZdZeed < 	 de
deee  defd!d"Zd#Zeed$< 	 de
deee  defd%d&Zd'Z eed(< 	 de
deee  defd)d*Z!d+Z"eed,< 	 de
defd-d.Z#dS )/    )CallableFinal	GeneratorIterableOptionalSequenceUnion)CallbackOptionsMeterObservableGaugeObservationUpDownCounterNzvcs.change.countVCS_CHANGE_COUNTmeterreturnc                 C      | j tdddS )zThe number of changes (pull requests/merge requests/changelists) in a repository, categorized by their state (e.g. open or merged)zThe number of changes (pull requests/merge requests/changelists) in a repository, categorized by their state (e.g. open or merged).z{change}namedescriptionunit)create_up_down_counterr   r    r   i/home/ubuntu/.local/lib/python3.10/site-packages/opentelemetry/semconv/_incubating/metrics/vcs_metrics.pycreate_vcs_change_count0   
   r   zvcs.change.durationVCS_CHANGE_DURATION	callbacksc                 C      | j t|dddS )z\The time duration a change (pull request/merge request/changelist) has been in a given statez]The time duration a change (pull request/merge request/changelist) has been in a given state.sr   r   r   r   )create_observable_gauger   r   r   r   r   r   create_vcs_change_durationA      r#   zvcs.change.time_to_approvalVCS_CHANGE_TIME_TO_APPROVALc                 C   r   )zxThe amount of time since its creation it took a change (pull request/merge request/changelist) to get the first approvalzyThe amount of time since its creation it took a change (pull request/merge request/changelist) to get the first approval.r   r    )r!   r%   r"   r   r   r   "create_vcs_change_time_to_approvalU   r$   r&   zvcs.change.time_to_mergeVCS_CHANGE_TIME_TO_MERGEc                 C   r   )zThe amount of time since its creation it took a change (pull request/merge request/changelist) to get merged into the target(base) refzThe amount of time since its creation it took a change (pull request/merge request/changelist) to get merged into the target(base) ref.r   r    )r!   r'   r"   r   r   r   create_vcs_change_time_to_mergei   r$   r(   zvcs.contributor.countVCS_CONTRIBUTOR_COUNTc                 C   r   )z1The number of unique contributors to a repositoryz2The number of unique contributors to a repository.z{contributor}r    )r!   r)   r"   r   r   r   create_vcs_contributor_count}   r$   r*   zvcs.ref.countVCS_REF_COUNTc                 C   r   )z8The number of refs of type branch or tag in a repositoryz9The number of refs of type branch or tag in a repository.z{ref}r   )r   r+   r   r   r   r   create_vcs_ref_count   r   r,   zvcs.ref.lines_deltaVCS_REF_LINES_DELTAc                 C   r   )znThe number of lines added/removed in a ref (branch) relative to the ref from the `vcs.ref.base.name` attributezoThe number of lines added/removed in a ref (branch) relative to the ref from the `vcs.ref.base.name` attribute.z{line}r    )r!   r-   r"   r   r   r   create_vcs_ref_lines_delta   r$   r.   zvcs.ref.revisions_deltaVCS_REF_REVISIONS_DELTAc                 C   r   )zrThe number of revisions (commits) a ref (branch) is ahead/behind the branch from the `vcs.ref.base.name` attributezsThe number of revisions (commits) a ref (branch) is ahead/behind the branch from the `vcs.ref.base.name` attribute.z
{revision}r    )r!   r/   r"   r   r   r   create_vcs_ref_revisions_delta   r$   r0   zvcs.ref.timeVCS_REF_TIMEc                 C   r   )zyTime a ref (branch) created from the default branch (trunk) has existed. The `ref.type` attribute will always be `branch`zzTime a ref (branch) created from the default branch (trunk) has existed. The `ref.type` attribute will always be `branch`.r   r    )r!   r1   r"   r   r   r   create_vcs_ref_time   r$   r2   zvcs.repository.countVCS_REPOSITORY_COUNTc                 C   r   )z-The number of repositories in an organizationz.The number of repositories in an organization.z{repository}r   )r   r3   r   r   r   r   create_vcs_repository_count   r   r4   )$typingr   r   r   r   r   r   r   opentelemetry.metricsr	   r
   r   r   r   	CallbackTr   __annotations__r   r   r#   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r   r   r   r   <module>   s   &
		







	


	



