Ë
    ÌiÃ
  ã                  óà   — d dl mZ d dl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
 G d
„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Zy)é    )Úannotations)Úabstractmethod)ÚOptionalÚProtocolÚSequencec                  ó"   — e Zd ZdZedd„«       Zy)ÚQueryInterfaceMetricz;Represents the interface for Metric in the query interface.c                 ó   — y©z Set the sort order for order-by.N© ©ÚselfÚ_is_descendings     úr/var/www/html/strategist-ai/venv/lib/python3.12/site-packages/dbt_semantic_interfaces/protocols/query_interface.pyÚ
descendingzQueryInterfaceMetric.descending
   ó   € ð 	ó    N)r   ÚboolÚreturnr	   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r	   r	      s   „ ÙEàòó ñr   r	   c                  óF   — e Zd ZdZedd„«       Zedd„«       Zedd„«       Zy)	ÚQueryInterfaceDimensionz>Represents the interface for Dimension in the query interface.c                 ó   — y)zThe time granularity.Nr   )r   Ú_grains     r   ÚgrainzQueryInterfaceDimension.grain   r   r   c                 ó   — yr   r   r   s     r   r   z"QueryInterfaceDimension.descending   r   r   c                 ó   — y)z(Date part to extract from the dimension.Nr   )r   Ú
_date_parts     r   Ú	date_partz!QueryInterfaceDimension.date_part   r   r   N)r   Ústrr   r   )r   r   r   r   )r!   r#   r   r   )r   r   r   r   r   r   r   r"   r   r   r   r   r      s?   „ ÙHàòó ðð òó ðð òó ñr   r   c                  ó$   — e Zd ZdZeddd„«       Zy)ÚQueryInterfaceDimensionFactoryzuCreates a Dimension for the query interface.

    Represented as the Dimension constructor in the Jinja sandbox.
    c                 ó   — y)z!Create a QueryInterfaceDimension.Nr   )r   ÚnameÚentity_paths      r   Úcreatez%QueryInterfaceDimensionFactory.create)   r   r   N©r   )r'   r#   r(   úSequence[str]r   r   ©r   r   r   r   r   r)   r   r   r   r%   r%   #   ó   „ ñð
 óó ñr   r%   c                  ó   — e Zd ZdZy)ÚQueryInterfaceTimeDimensionzBRepresents the interface for TimeDimension in the query interface.N©r   r   r   r   r   r   r   r/   r/   /   s   „ ÙLàr   r/   c                  óB   — e Zd ZdZe	 	 	 	 d	 	 	 	 	 	 	 	 	 	 	 dd„«       Zy)Ú"QueryInterfaceTimeDimensionFactoryz}Creates a TimeDimension for the query interface.

    Represented as the TimeDimension constructor in the Jinja sandbox.
    Nc                 ó   — y)zCreate a TimeDimension.Nr   )r   Útime_dimension_nameÚtime_granularity_namer(   r   Údate_part_names         r   r)   z)QueryInterfaceTimeDimensionFactory.create;   s   € ð 	r   )Nr   NN)r4   r#   r5   úOptional[str]r(   r+   r   zOptional[bool]r6   r7   r   r/   r,   r   r   r   r2   r2   5   sc   „ ñð
 ð 04Ø%'Ø%)Ø(,ð	à ð	ð  -ð	ð #ð		ð
 #ð	ð &ð	ð 
%ò	ó ñ	r   r2   c                  ó   — e Zd ZdZy)ÚQueryInterfaceEntityz;Represents the interface for Entity in the query interface.Nr0   r   r   r   r9   r9   H   s   „ ÙEàr   r9   c                  ó$   — e Zd ZdZeddd„«       Zy)ÚQueryInterfaceEntityFactoryzpCreates an Entity for the query interface.

    Represented as the Entity constructor in the Jinja sandbox.
    c                 ó   — y)zCreate an Entity.Nr   )r   Úentity_namer(   s      r   r)   z"QueryInterfaceEntityFactory.createT   r   r   Nr*   )r=   r#   r(   r+   r   r9   r,   r   r   r   r;   r;   N   r-   r   r;   c                  ó$   — e Zd ZdZeddd„«       Zy)ÚQueryInterfaceMetricFactoryzpCreates an Metric for the query interface.

    Represented as the Metric constructor in the Jinja sandbox.
    c                 ó   — y)zCreate a Metric.Nr   )r   Úmetric_nameÚgroup_bys      r   r)   z"QueryInterfaceMetricFactory.create`   r   r   Nr*   )rA   r#   rB   r+   r   r	   r,   r   r   r   r?   r?   Z   r-   r   r?   N)Ú
__future__r   Úabcr   Útypingr   r   r   r	   r   r%   r/   r2   r9   r;   r?   r   r   r   ú<module>rF      sq   ðÝ "å ß /Ñ /ô˜8ô ô˜hô ô&	 Xô 	ô	 (ô 	ô¨ô ô&	˜8ô 	ô	 (ô 	ô	 (õ 	r   