o
    i[                     @   s`   d dl Z ddlmZmZ ddlmZ ddlmZ ddlm	Z	m
Z
 G dd	 d	ZG d
d dZdS )    N   )AsyncClientWrapperSyncClientWrapper)RequestOptions)UsageFieldsV1Response   )AsyncRawFieldsClientRawFieldsClientc                   @   f   e Zd ZdefddZedefddZddddd	ed
e	j
e de	j
e de	j
e def
ddZdS )FieldsClientclient_wrapperc                C      t |d| _d S N)r   )r	   _raw_clientselfr    r   c/home/ubuntu/.local/lib/python3.10/site-packages/deepgram/manage/v1/projects/usage/fields/client.py__init__      zFieldsClient.__init__returnc                 C      | j S )z
        Retrieves a raw implementation of this client that returns raw responses.

        Returns
        -------
        RawFieldsClient
        r   r   r   r   r   with_raw_response      	zFieldsClient.with_raw_responseNstartendrequest_options
project_idr   r   r   c                C   s   | j j||||d}|jS )a  
        Lists the features, models, tags, languages, and processing method used for requests in the specified project

        Parameters
        ----------
        project_id : str
            The unique identifier of the project

        start : typing.Optional[str]
            Start date of the requested date range. Format accepted is YYYY-MM-DD

        end : typing.Optional[str]
            End date of the requested date range. Format accepted is YYYY-MM-DD

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        UsageFieldsV1Response
            A list of fields for a specific project

        Examples
        --------
        from deepgram import DeepgramClient

        client = DeepgramClient(
            api_key="YOUR_API_KEY",
        )
        client.manage.v1.projects.usage.fields.list(
            project_id="123456-7890-1234-5678-901234",
            start="start",
            end="end",
        )
        r   r   listdatar   r    r   r   r   	_responser   r   r   r"      s   +zFieldsClient.list)__name__
__module____qualname__r   r   propertyr	   r   strtypingOptionalr   r   r"   r   r   r   r   r      $    r   c                   @   r
   )AsyncFieldsClientr   c                C   r   r   )r   r   r   r   r   r   r   J   r   zAsyncFieldsClient.__init__r   c                 C   r   )z
        Retrieves a raw implementation of this client that returns raw responses.

        Returns
        -------
        AsyncRawFieldsClient
        r   r   r   r   r   r   M   r   z#AsyncFieldsClient.with_raw_responseNr   r    r   r   r   c                   s"   | j j||||dI dH }|jS )a{  
        Lists the features, models, tags, languages, and processing method used for requests in the specified project

        Parameters
        ----------
        project_id : str
            The unique identifier of the project

        start : typing.Optional[str]
            Start date of the requested date range. Format accepted is YYYY-MM-DD

        end : typing.Optional[str]
            End date of the requested date range. Format accepted is YYYY-MM-DD

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        UsageFieldsV1Response
            A list of fields for a specific project

        Examples
        --------
        import asyncio

        from deepgram import AsyncDeepgramClient

        client = AsyncDeepgramClient(
            api_key="YOUR_API_KEY",
        )


        async def main() -> None:
            await client.manage.v1.projects.usage.fields.list(
                project_id="123456-7890-1234-5678-901234",
                start="start",
                end="end",
            )


        asyncio.run(main())
        r   Nr!   r$   r   r   r   r"   X   s   3zAsyncFieldsClient.list)r&   r'   r(   r   r   r)   r   r   r*   r+   r,   r   r   r"   r   r   r   r   r.   I   r-   r.   )r+   core.client_wrapperr   r   core.request_optionsr   types.usage_fields_v1responser   
raw_clientr   r	   r   r.   r   r   r   r   <module>   s   >