# This file was auto-generated by Fern from our API Definition. import typing from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ..core.request_options import RequestOptions from ..types.user import User from .raw_client import AsyncRawUserClient, RawUserClient from .subscription.client import AsyncSubscriptionClient, SubscriptionClient class UserClient: def __init__(self, *, client_wrapper: SyncClientWrapper): self._raw_client = RawUserClient(client_wrapper=client_wrapper) self.subscription = SubscriptionClient(client_wrapper=client_wrapper) @property def with_raw_response(self) -> RawUserClient: """ Retrieves a raw implementation of this client that returns raw responses. Returns ------- RawUserClient """ return self._raw_client def get(self, *, request_options: typing.Optional[RequestOptions] = None) -> User: """ Gets information about the user Parameters ---------- request_options : typing.Optional[RequestOptions] Request-specific configuration. Returns ------- User Successful Response Examples -------- from elevenlabs import ElevenLabs client = ElevenLabs( api_key="YOUR_API_KEY", ) client.user.get() """ _response = self._raw_client.get(request_options=request_options) return _response.data class AsyncUserClient: def __init__(self, *, client_wrapper: AsyncClientWrapper): self._raw_client = AsyncRawUserClient(client_wrapper=client_wrapper) self.subscription = AsyncSubscriptionClient(client_wrapper=client_wrapper) @property def with_raw_response(self) -> AsyncRawUserClient: """ Retrieves a raw implementation of this client that returns raw responses. Returns ------- AsyncRawUserClient """ return self._raw_client async def get(self, *, request_options: typing.Optional[RequestOptions] = None) -> User: """ Gets information about the user Parameters ---------- request_options : typing.Optional[RequestOptions] Request-specific configuration. Returns ------- User Successful Response Examples -------- import asyncio from elevenlabs import AsyncElevenLabs client = AsyncElevenLabs( api_key="YOUR_API_KEY", ) async def main() -> None: await client.user.get() asyncio.run(main()) """ _response = await self._raw_client.get(request_options=request_options) return _response.data