= response.stream();
+// const arrayBuffer: ArrayBuffer = await response.arrayBuffer();
+// const blob: Blob = response.blob();
+// const bytes: Uint8Array = response.bytes();
+// You can only use the response body once, so you must choose one of the above methods.
+// If you want to check if the response body has been used, you can use the following property.
+const bodyUsed = response.bodyUsed;
```
-**API Endpoint**: `POST https://api.deepgram.com/v1/speak`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/text-to-speech-api/speak).
+
+Save binary response to a file
-### Continuous Text Stream (WebSocket)
+
+
+Node.js
-Connect to our websocket and send a continuous text stream to generate speech.
-
-```js
-const deepgramConnection = deepgramClient.speak.live({
- model: "aura-2-thalia-en",
- // live text to speech options
-});
+
+
+ReadableStream (most-efficient)
-deepgramConnection.on(LiveTTSEvents.Open, () => {
- console.log("Connection opened");
+```ts
+import { createWriteStream } from 'fs';
+import { Readable } from 'stream';
+import { pipeline } from 'stream/promises';
- // Send text data for TTS synthesis
- deepgramConnection.sendText(text);
+const response = await client.speak.v1.audio.generate(...);
- // Send Flush message to the server after sending the text
- deepgramConnection.flush();
+const stream = response.stream();
+const nodeStream = Readable.fromWeb(stream);
+const writeStream = createWriteStream('path/to/file');
- deepgramConnection.on(LiveTTSEvents.Close, () => {
- console.log("Connection closed");
- });
-});
+await pipeline(nodeStream, writeStream);
```
-**WebSocket Endpoint**: `wss://api.deepgram.com/v1/speak`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/text-to-speech-api/speak-streaming).
+
+
-## Text Intelligence
+
+
+ArrayBuffer
-Analyze text using our intelligence AI features.
+```ts
+import { writeFile } from 'fs/promises';
-```js
-const text = `The history of the phrase 'The quick brown fox jumps over the
-lazy dog'. The earliest known appearance of the phrase was in The Boston
-Journal...`;
+const response = await client.speak.v1.audio.generate(...);
-const { result, error } = await deepgramClient.read.analyzeText(
- { text },
- {
- language: "en",
- // text intelligence options
- }
-);
+const arrayBuffer = await response.arrayBuffer();
+await writeFile('path/to/file', Buffer.from(arrayBuffer));
```
-**API Endpoint**: `POST https://api.deepgram.com/v1/read`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/text-intelligence-api/text-read).
+
+
-## Token Management
+
+
+Blob
-### Get Token Details
+```ts
+import { writeFile } from 'fs/promises';
-Retrieves the details of the current authentication token.
+const response = await client.speak.v1.audio.generate(...);
-```js
-const { result, error } = await deepgramClient.manage.getTokenDetails();
+const blob = await response.blob();
+const arrayBuffer = await blob.arrayBuffer();
+await writeFile('output.bin', Buffer.from(arrayBuffer));
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/auth/token`
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/authentication)
+
+
+Bytes (UIntArray8)
-### Grant Access Token
+```ts
+import { writeFile } from 'fs/promises';
-Creates a temporary access token with a 30-second TTL. Requires an existing API key for authentication.
+const response = await client.speak.v1.audio.generate(...);
-```js
-// Create a temporary access token
-const { result, error } = await deepgramClient.auth.grantToken();
-// Returns: { access_token: string, expires_in: 30 }
-
-// Use the access token in a new client instance
-const tempClient = createClient({ accessToken: result.access_token });
+const bytes = await response.bytes();
+await writeFile('path/to/file', bytes);
```
-**API Endpoint**: `POST https://api.deepgram.com/v1/auth/grant`
-
-> **Important**: You _must_ pass an `accessToken` property to use a temporary token. Passing the token as a raw string will treat it as an API key and use the incorrect authorization scheme.
-
-[See our API reference for more info](https://developers.deepgram.com/reference/token-based-auth-api/grant-token).
-
-## Projects
-
-### Get Projects
-
-Returns all projects accessible by the API key.
+
+
-```js
-const { result, error } = await deepgramClient.manage.getProjects();
-```
-
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects`
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/get-projects).
+
+
+Bun
-### Get Project
+
+
+ReadableStream (most-efficient)
-Retrieves a specific project based on the provided project_id.
+```ts
+const response = await client.speak.v1.audio.generate(...);
-```js
-const { result, error } = await deepgramClient.manage.getProject(projectId);
+const stream = response.stream();
+await Bun.write('path/to/file', stream);
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId`
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/get-project).
+
+
+ArrayBuffer
-### Update Project
+```ts
+const response = await client.speak.v1.audio.generate(...);
-Update a project.
-
-```js
-const { result, error } = await deepgramClient.manage.updateProject(projectId, options);
+const arrayBuffer = await response.arrayBuffer();
+await Bun.write('path/to/file', arrayBuffer);
```
-**API Endpoint**: `PATCH https://api.deepgram.com/v1/projects/:projectId`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/update-project).
+
+
-### Delete Project
+
+
+Blob
-Delete a project.
+```ts
+const response = await client.speak.v1.audio.generate(...);
-```js
-const { error } = await deepgramClient.manage.deleteProject(projectId);
+const blob = await response.blob();
+await Bun.write('path/to/file', blob);
```
-**API Endpoint**: `DELETE https://api.deepgram.com/v1/projects/:projectId`
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/delete-project).
+
+
+Bytes (UIntArray8)
-## Keys
+```ts
+const response = await client.speak.v1.audio.generate(...);
-### List Keys
-
-Retrieves all keys associated with the provided project_id.
-
-```js
-const { result, error } = await deepgramClient.manage.getProjectKeys(projectId);
+const bytes = await response.bytes();
+await Bun.write('path/to/file', bytes);
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/keys`
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/list-keys).
+
+
-### Get Key
+
+
+Deno
-Retrieves a specific key associated with the provided project_id.
+
+
+ReadableStream (most-efficient)
-```js
-const { result, error } = await deepgramClient.manage.getProjectKey(projectId, projectKeyId);
-```
+```ts
+const response = await client.speak.v1.audio.generate(...);
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/keys/:keyId`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/get-key).
-
-### Create Key
-
-Creates an API key with the provided scopes.
-
-```js
-const { result, error } = await deepgramClient.manage.createProjectKey(projectId, {
- comment: "My API key",
- scopes: ["usage:write"], // Required: array of scope strings
- tags: ["production"], // Optional: array of tag strings
- time_to_live_in_seconds: 86400, // Optional: TTL in seconds
- // OR use expiration_date: "2024-12-31T23:59:59Z" // Optional: ISO date string
-});
+const stream = response.stream();
+const file = await Deno.open('path/to/file', { write: true, create: true });
+await stream.pipeTo(file.writable);
```
-**API Endpoint**: `POST https://api.deepgram.com/v1/projects/:projectId/keys`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/create-key).
+
+
-### Delete Key
+
+
+ArrayBuffer
-Deletes a specific key associated with the provided project_id.
+```ts
+const response = await client.speak.v1.audio.generate(...);
-```js
-const { error } = await deepgramClient.manage.deleteProjectKey(projectId, projectKeyId);
+const arrayBuffer = await response.arrayBuffer();
+await Deno.writeFile('path/to/file', new Uint8Array(arrayBuffer));
```
-**API Endpoint**: `DELETE https://api.deepgram.com/v1/projects/:projectId/keys/:keyId`
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/delete-key).
+
+
+Blob
-## Members
+```ts
+const response = await client.speak.v1.audio.generate(...);
-### Get Members
-
-Retrieves account objects for all of the accounts in the specified project_id.
-
-```js
-const { result, error } = await deepgramClient.manage.getProjectMembers(projectId);
+const blob = await response.blob();
+const arrayBuffer = await blob.arrayBuffer();
+await Deno.writeFile('path/to/file', new Uint8Array(arrayBuffer));
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/members`
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/get-members).
+
+
+Bytes (UIntArray8)
-### Remove Member
+```ts
+const response = await client.speak.v1.audio.generate(...);
-Removes member account for specified member_id.
-
-```js
-const { error } = await deepgramClient.manage.removeProjectMember(projectId, projectMemberId);
+const bytes = await response.bytes();
+await Deno.writeFile('path/to/file', bytes);
```
-**API Endpoint**: `DELETE https://api.deepgram.com/v1/projects/:projectId/members/:memberId`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/remove-member).
-
-## Scopes
-
-### Get Member Scopes
-
-Retrieves scopes of the specified member in the specified project.
+
+
-```js
-const { result, error } = await deepgramClient.manage.getProjectMemberScopes(
- projectId,
- projectMemberId
-);
-```
+
+
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/members/:memberId/scopes`
+
+
+Browser
-[See our API reference for more info](https://developers.deepgram.com/reference/get-member-scopes).
+
+
+Blob (most-efficient)
-### Update Scope
+```ts
+const response = await client.speak.v1.audio.generate(...);
-Updates the scope for the specified member in the specified project.
+const blob = await response.blob();
+const url = URL.createObjectURL(blob);
-```js
-const { result, error } = await deepgramClient.manage.updateProjectMemberScope(
- projectId,
- projectMemberId,
- options
-);
+// trigger download
+const a = document.createElement('a');
+a.href = url;
+a.download = 'filename';
+a.click();
+URL.revokeObjectURL(url);
```
-**API Endpoint**: `PUT https://api.deepgram.com/v1/projects/:projectId/members/:memberId/scopes`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/update-scope).
+
+
-## Invitations
+
+
+ReadableStream
-### List Invites
+```ts
+const response = await client.speak.v1.audio.generate(...);
-Retrieves all invitations associated with the provided project_id.
-
-```js
-const { result, error } = await deepgramClient.manage.getProjectInvites(projectId);
-```
+const stream = response.stream();
+const reader = stream.getReader();
+const chunks = [];
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/invites`
+while (true) {
+ const { done, value } = await reader.read();
+ if (done) break;
+ chunks.push(value);
+}
-[See our API reference for more info](https://developers.deepgram.com/reference/list-invites).
+const blob = new Blob(chunks);
+const url = URL.createObjectURL(blob);
-### Send Invite
-
-Sends an invitation to the provided email address.
-
-```js
-const { result, error } = await deepgramClient.manage.sendProjectInvite(projectId, options);
+// trigger download
+const a = document.createElement('a');
+a.href = url;
+a.download = 'filename';
+a.click();
+URL.revokeObjectURL(url);
```
-**API Endpoint**: `POST https://api.deepgram.com/v1/projects/:projectId/invites`
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/send-invites).
+
+
+ArrayBuffer
-### Delete Invite
+```ts
+const response = await client.speak.v1.audio.generate(...);
-Removes the specified invitation from the project.
+const arrayBuffer = await response.arrayBuffer();
+const blob = new Blob([arrayBuffer]);
+const url = URL.createObjectURL(blob);
-```js
-const { error } = await deepgramClient.manage.deleteProjectInvite(projectId, email);
+// trigger download
+const a = document.createElement('a');
+a.href = url;
+a.download = 'filename';
+a.click();
+URL.revokeObjectURL(url);
```
-**API Endpoint**: `DELETE https://api.deepgram.com/v1/projects/:projectId/invites/:email`
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/delete-invite).
+
+
+Bytes (UIntArray8)
-### Leave Project
+```ts
+const response = await client.speak.v1.audio.generate(...);
-Removes the authenticated user from the project.
+const bytes = await response.bytes();
+const blob = new Blob([bytes]);
+const url = URL.createObjectURL(blob);
-```js
-const { result, error } = await deepgramClient.manage.leaveProject(projectId);
+// trigger download
+const a = document.createElement('a');
+a.href = url;
+a.download = 'filename';
+a.click();
+URL.revokeObjectURL(url);
```
-**API Endpoint**: `DELETE https://api.deepgram.com/v1/projects/:projectId/leave`
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/leave-project).
+
+
-## Usage
+
+
-### Get All Requests
+
+Convert binary response to text
-Retrieves all requests associated with the provided project_id based on the provided options.
+
+
+ReadableStream
-```js
-const { result, error } = await deepgramClient.manage.getProjectUsageRequests(projectId, options);
-```
-
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/requests`
-
-### Get Request
-
-Retrieves a specific request associated with the provided project_id.
+```ts
+const response = await client.speak.v1.audio.generate(...);
-```js
-const { result, error } = await deepgramClient.manage.getProjectUsageRequest(projectId, requestId);
+const stream = response.stream();
+const text = await new Response(stream).text();
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/requests/:requestId`
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/get-request).
+
+
+ArrayBuffer
-### Summarize Usage
+```ts
+const response = await client.speak.v1.audio.generate(...);
-Retrieves usage associated with the provided project_id based on the provided options.
-
-```js
-const { result, error } = await deepgramClient.manage.getProjectUsageSummary(projectId, options);
+const arrayBuffer = await response.arrayBuffer();
+const text = new TextDecoder().decode(arrayBuffer);
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/usage`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/summarize-usage).
+
+
-### Get Fields
+
+
+Blob
-Lists the features, models, tags, languages, and processing method used for requests in the specified project.
+```ts
+const response = await client.speak.v1.audio.generate(...);
-```js
-const { result, error } = await deepgramClient.manage.getProjectUsageFields(projectId, options);
+const blob = await response.blob();
+const text = await blob.text();
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/usage/fields`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/get-fields).
+
+
-### Summarize Usage
+
+
+Bytes (UIntArray8)
-`Deprecated` Retrieves the usage for a specific project. Use Get Project Usage Breakdown for a more comprehensive usage summary.
+```ts
+const response = await client.speak.v1.audio.generate(...);
-```js
-const { result, error } = await deepgramClient.manage.getProjectUsage(projectId, options);
+const bytes = await response.bytes();
+const text = new TextDecoder().decode(bytes);
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/usage` (deprecated)
+
+
-[See our API reference for more info](https://developers.deepgram.com/reference/management-api/usage/get).
+
-## Billing
+## Advanced
-### Get All Balances
+### Additional Headers
-Retrieves the list of balance info for the specified project.
+If you would like to send additional headers as part of the request, use the `headers` request option.
-```js
-const { result, error } = await deepgramClient.manage.getProjectBalances(projectId);
+```typescript
+const response = await client.listen.v1.media.transcribeFile(..., {
+ headers: {
+ 'X-Custom-Header': 'custom value'
+ }
+});
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/balances`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/get-all-balances).
-
-### Get Balance
+### Additional Query String Parameters
-Retrieves the balance info for the specified project and balance_id.
+If you would like to send additional query string parameters as part of the request, use the `queryParams` request option.
-```js
-const { result, error } = await deepgramClient.manage.getProjectBalance(projectId, balanceId);
+```typescript
+const response = await client.listen.v1.media.transcribeFile(..., {
+ queryParams: {
+ 'customQueryParamKey': 'custom query param value'
+ }
+});
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/balances/:balanceId`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/get-balance).
+### Retries
-## Models
+The SDK is instrumented with automatic retries with exponential backoff. A request will be retried as long
+as the request is deemed retryable and the number of retry attempts has not grown larger than the configured
+retry limit (default: 2).
-### Get All Models
+A request is deemed retryable when any of the following HTTP status codes is returned:
-Retrieves all models available globally.
+- [408](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/408) (Timeout)
+- [429](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429) (Too Many Requests)
+- [5XX](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500) (Internal Server Errors)
-```js
-const { result, error } = await deepgramClient.models.getAll();
-```
+Use the `maxRetries` request option to configure this behavior.
-**API Endpoint**: `GET https://api.deepgram.com/v1/models`
-
-### Get All Project Models
-
-Retrieves all models available for a given project.
-
-```js
-const { result, error } = await deepgramClient.manage.getAllModels(projectId, {});
+```typescript
+const response = await client.listen.v1.media.transcribeFile(..., {
+ maxRetries: 0 // override maxRetries at the request level
+});
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/models`
+### Timeouts
-[See our API reference for more info](https://developers.deepgram.com/reference/management-api/projects/list-models).
+The SDK defaults to a 60 second timeout. Use the `timeoutInSeconds` option to configure this behavior.
-### Get Model
-
-Retrieves details of a specific model.
-
-```js
-const { result, error } = await deepgramClient.manage.getModel(projectId, modelId);
+```typescript
+const response = await client.listen.v1.media.transcribeFile(..., {
+ timeoutInSeconds: 30 // override timeout to 30s
+});
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/models/:modelId`
+### Aborting Requests
-[See our API reference for more info](https://developers.deepgram.com/reference/management-api/models/get)
+The SDK allows users to abort requests at any point by passing in an abort signal.
-## On-Prem APIs
-
-### List On-Prem credentials
-
-Lists sets of distribution credentials for the specified project.
-
-```js
-const { result, error } = await deepgramClient.onprem.listCredentials(projectId);
+```typescript
+const controller = new AbortController();
+const response = await client.listen.v1.media.transcribeFile(..., {
+ abortSignal: controller.signal
+});
+controller.abort(); // aborts the request
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/onprem/distribution/credentials`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/self-hosted-api/list-credentials)
+### Access Raw Response Data
-### Get On-Prem credentials
+The SDK provides access to raw response data, including headers, through the `.withRawResponse()` method.
+The `.withRawResponse()` method returns a promise that results to an object with a `data` and a `rawResponse` property.
-Returns a set of distribution credentials for the specified project.
+```typescript
+const { data, rawResponse } = await client.listen.v1.media.transcribeFile(...).withRawResponse();
-```js
-const { result, error } = await deepgramClient.onprem.getCredentials(projectId, credentialId);
+console.log(data);
+console.log(rawResponse.headers['X-My-Header']);
```
-**API Endpoint**: `GET https://api.deepgram.com/v1/projects/:projectId/onprem/distribution/credentials/:credentialsId`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/self-hosted-api/get-credentials)
+### Runtime Compatibility
-### Create On-Prem credentials
+The SDK works in the following runtimes:
-Creates a set of distribution credentials for the specified project.
+- Node.js 18+
+- Vercel
+- Cloudflare Workers
+- Deno v1.25+
+- Bun 1.0+
+- React Native
-```js
-const { result, error } = await deepgramClient.onprem.createCredentials(projectId, options);
-```
-
-**API Endpoint**: `POST https://api.deepgram.com/v1/projects/:projectId/onprem/distribution/credentials`
+### Customizing Fetch Client
-[See our API reference for more info](https://developers.deepgram.com/reference/self-hosted-api/create-credentials)
+The SDK provides a way for you to customize the underlying HTTP client / Fetch function. If you're running in an
+unsupported environment, this provides a way for you to break glass and ensure the SDK works.
-### Delete On-Prem credentials
+```typescript
+import { DeepgramClient } from "@deepgram/sdk";
-Deletes a set of distribution credentials for the specified project.
-
-```js
-const { result, error } = await deepgramClient.onprem.deleteCredentials(projectId, credentialId);
+const client = new DeepgramClient({
+ ...
+ fetcher: // provide your implementation here
+});
```
-**API Endpoint**: `DELETE https://api.deepgram.com/v1/projects/:projectId/onprem/distribution/credentials/:credentialsId`
-
-[See our API reference for more info](https://developers.deepgram.com/reference/self-hosted-api/delete-credentials)
-
-## Backwards Compatibility
-
-Older SDK versions will receive Priority 1 (P1) bug support only. Security issues, both in our code and dependencies, are promptly addressed. Significant bugs without clear workarounds are also given priority attention.
-
-## Development and Contributing
-
-Interested in contributing? We ❤️ pull requests!
-
-To make sure our community is safe for all, be sure to review and agree to our
-[Code of Conduct](./CODE_OF_CONDUCT.md). Then see the
-[Contribution](./CONTRIBUTING.md) guidelines for more information.
-
-### Debugging and making changes locally
-
-If you want to make local changes to the SDK and run the [`examples/`](./examples/), you'll need to `pnpm build` first, to ensure that your changes are included in the examples that are running.
-
-## Getting Help
+## Contributing
-We love to hear from you so if you have questions, comments or find a bug in the
-project, let us know! You can either:
+While we value open-source contributions to this SDK, this library is generated programmatically.
+Additions made directly to this library would have to be moved over to our generation code,
+otherwise they would be overwritten upon the next generated release. Feel free to open a PR as
+a proof of concept, but know that we will not be able to merge it as-is. We suggest opening
+an issue first to discuss with us!
-- [Open an issue in this repository](https://github.com/deepgram/deepgram-node-sdk/issues/new)
-- [Join the Deepgram Discord Community](https://discord.gg/xWRaCDBtW4)
-- [Join the Deepgram Github Discussions Community](https://github.com/orgs/deepgram/discussions)
+On the other hand, contributions to the README are always very welcome!
diff --git a/SECURITY.md b/SECURITY.md
deleted file mode 100644
index a8e6c01b..00000000
--- a/SECURITY.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# Security Policy
-
-## Supported Versions
-
-Use this section to tell people about which versions of your project are
-currently being supported with security updates.
-
-| Version | Supported |
-| ------- | ------------------ |
-| 3.3.x | :white_check_mark: |
-| 2.4.x | :white_check_mark: |
-| < 2.4.x | :x: |
-
-## Reporting a Vulnerability
-
-Use this section to tell people how to report a vulnerability.
-
-Tell them where to go, how often they can expect to get an update on a
-reported vulnerability, what to expect if the vulnerability is accepted or
-declined, etc.
diff --git a/biome.json b/biome.json
new file mode 100644
index 00000000..a777468e
--- /dev/null
+++ b/biome.json
@@ -0,0 +1,74 @@
+{
+ "$schema": "https://biomejs.dev/schemas/2.3.1/schema.json",
+ "root": true,
+ "vcs": {
+ "enabled": false
+ },
+ "files": {
+ "ignoreUnknown": true,
+ "includes": [
+ "**",
+ "!!dist",
+ "!!**/dist",
+ "!!lib",
+ "!!**/lib",
+ "!!_tmp_*",
+ "!!**/_tmp_*",
+ "!!*.tmp",
+ "!!**/*.tmp",
+ "!!.tmp/",
+ "!!**/.tmp/",
+ "!!*.log",
+ "!!**/*.log",
+ "!!**/.DS_Store",
+ "!!**/Thumbs.db"
+ ]
+ },
+ "formatter": {
+ "enabled": true,
+ "indentStyle": "space",
+ "indentWidth": 4,
+ "lineWidth": 120
+ },
+ "javascript": {
+ "formatter": {
+ "quoteStyle": "double"
+ }
+ },
+ "assist": {
+ "enabled": true,
+ "actions": {
+ "source": {
+ "organizeImports": "on"
+ }
+ }
+ },
+ "linter": {
+ "rules": {
+ "style": {
+ "useNodejsImportProtocol": "off"
+ },
+ "suspicious": {
+ "noAssignInExpressions": "warn",
+ "noUselessEscapeInString": {
+ "level": "warn",
+ "fix": "none",
+ "options": {}
+ },
+ "noThenProperty": "warn",
+ "useIterableCallbackReturn": "warn",
+ "noShadowRestrictedNames": "warn",
+ "noTsIgnore": {
+ "level": "warn",
+ "fix": "none",
+ "options": {}
+ },
+ "noConfusingVoidType": {
+ "level": "warn",
+ "fix": "none",
+ "options": {}
+ }
+ }
+ }
+ }
+}
diff --git a/commitlint.config.js b/commitlint.config.js
deleted file mode 100644
index 5073c20d..00000000
--- a/commitlint.config.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = { extends: ["@commitlint/config-conventional"] };
diff --git a/examples/README.md b/examples/README.md
deleted file mode 100644
index 186389a2..00000000
--- a/examples/README.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# Examples
-
-This directory contains examples for using the Deepgram JS SDK.
-
-## Setup
-
-First, build the SDK from the root of the project:
-
-```bash
-pnpm run build
-```
-
-## Running the Examples
-
-Each example has its own `README.md` with instructions on how to run it. Be sure to add your Deepgram API key to the example file before running it.
diff --git a/examples/browser-live/README.md b/examples/browser-live/README.md
deleted file mode 100644
index d95026f5..00000000
--- a/examples/browser-live/README.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# Live Transcription (Browser)
-
-This example demonstrates how to transcribe a live audio stream in the browser using the Deepgram JS SDK.
-
-## Setup
-
-1. From the root of the project, start a local web server:
-
- ```bash
- npx http-server .
- ```
-
-2. Open your browser to the following URL:
-
- [http://localhost:8080/examples/browser-live/](http://localhost:8080/examples/browser-live/)
-
-3. Add your `DEEPGRAM_API_KEY` as a query string parameter to the URL.
-
- For example: `http://localhost:8080/examples/browser-live/?key=YOUR_DEEPGRAM_API_KEY`
-
-## Usage
-
-Once the page is loaded with your API key, you can use the "Start" and "Stop" buttons to control the live transcription.
diff --git a/examples/browser-live/index.html b/examples/browser-live/index.html
deleted file mode 100644
index 886d380f..00000000
--- a/examples/browser-live/index.html
+++ /dev/null
@@ -1,98 +0,0 @@
-
-
-
- Deepgram Live Transcription
-
-
-
- Live Transcription
- Start
- Stop
-
-
-
-
-
-
diff --git a/examples/browser-prerecorded/README.md b/examples/browser-prerecorded/README.md
deleted file mode 100644
index 0a65688d..00000000
--- a/examples/browser-prerecorded/README.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# Prerecorded Transcription (Browser)
-
-This example demonstrates how to transcribe a prerecorded audio file in the browser using the Deepgram JS SDK.
-
-## Setup
-
-1. From the root of the project, start a local web server:
-
- ```bash
- npx http-server .
- ```
-
-2. Open your browser to the following URL:
-
- [http://localhost:8080/examples/browser-prerecorded/](http://localhost:8080/examples/browser-prerecorded/)
-
-3. Add your `DEEPGRAM_API_KEY` as a query string parameter to the URL.
-
- For example: `http://localhost:8080/examples/browser-prerecorded/?key=YOUR_DEEPGRAM_API_KEY`
-
-## Usage
-
-Once the page is loaded with your API key, you can click the "Transcribe" button to see the transcription results in the console.
diff --git a/examples/browser-prerecorded/index.html b/examples/browser-prerecorded/index.html
deleted file mode 100644
index 268d373f..00000000
--- a/examples/browser-prerecorded/index.html
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
- Deepgram Prerecorded Transcription
-
-
-
- Prerecorded Transcription
- Open the console to see the transcription results.
- Transcribe
-
-
-
-
-
diff --git a/examples/nasa.mp4 b/examples/nasa.mp4
deleted file mode 100644
index 021dd52a..00000000
Binary files a/examples/nasa.mp4 and /dev/null differ
diff --git a/examples/node-agent-live/.gitignore b/examples/node-agent-live/.gitignore
deleted file mode 100644
index e2278d77..00000000
--- a/examples/node-agent-live/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-chatlog.txt
-output-*.wav
-node_modules
-.env
diff --git a/examples/node-agent-live/README.md b/examples/node-agent-live/README.md
deleted file mode 100644
index 8cb2ad03..00000000
--- a/examples/node-agent-live/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# Live Agent
-
-This example demonstrates how to use the Deepgram JS SDK to interact with a live agent.
-
-## Setup
-
-1. Make sure you have a `.env` file with your `DEEPGRAM_API_KEY`.
-2. Install the dependencies:
-
- ```bash
- pnpm install
- ```
-
-## Usage
-
-Run the example with the following command:
-
-```bash
-pnpm start
-```
diff --git a/examples/node-agent-live/index.js b/examples/node-agent-live/index.js
deleted file mode 100644
index e93aa141..00000000
--- a/examples/node-agent-live/index.js
+++ /dev/null
@@ -1,131 +0,0 @@
-/* eslint-env node */
-/* eslint-disable @typescript-eslint/no-var-requires, @typescript-eslint/no-require-imports, no-console */
-
-const { createClient, AgentEvents } = require("../../dist/main/index");
-const fetch = require("cross-fetch");
-require("dotenv").config();
-
-console.log("🔑 API Key loaded successfully");
-
-const agent = async () => {
- // Checks for API key
- if (!process.env.DEEPGRAM_API_KEY) {
- console.error("❌ Error: DEEPGRAM_API_KEY environment variable is required");
- console.log("💡 Run with: DEEPGRAM_API_KEY=your_api_key_here npm start");
- process.exit(1);
- }
-
- console.log("🚀 Starting Deepgram Agent Live example...");
- const deepgram = createClient(process.env.DEEPGRAM_API_KEY);
-
- console.log("📞 Connecting to Deepgram Agent API...");
- const connection = deepgram.agent();
-
- // Error handler
- connection.on(AgentEvents.Error, (error) => {
- if (error.code === 'CLIENT_MESSAGE_TIMEOUT') {
- console.log("⏰ Agent session timed out");
- } else {
- console.error("❌ Agent error:", error.description || error.message);
- }
- });
-
- connection.on(AgentEvents.Open, () => {
- console.log("✅ Connected to Deepgram Agent");
- console.log("⚙️ Configuring agent with tags and providers...");
-
- const config = {
- // Agent tags for filtered searching and analytics
- tags: ["live-agent-test", "nodejs-example"],
- agent: {
- listen: {
- provider: {
- type: "deepgram",
- model: "nova-3"
- }
- },
- speak: {
- provider: {
- type: "deepgram",
- model: "aura-asteria-en"
- }
- },
- greeting: "Hello! I'm a Deepgram voice agent. How can I help you today?"
- },
- };
-
- connection.configure(config);
- });
-
- connection.on(AgentEvents.SettingsApplied, () => {
- console.log("⚙️ Agent configuration applied successfully");
- console.log("🏷️ Tags:", ["live-agent-test", "nodejs-example"]);
- console.log("🎵 Starting 15-second audio demo...");
- startAudioStream();
- });
-
- function startAudioStream() {
- fetch("http://stream.live.vc.bbcmedia.co.uk/bbc_world_service")
- .then((r) => r.body)
- .then((res) => {
- console.log("🔊 Streaming live audio to agent...");
-
- let isStreamActive = true;
-
- // Stop stream after 15 seconds
- setTimeout(() => {
- isStreamActive = false;
- res.destroy();
- console.log("⏹️ Audio stream stopped after 15 seconds");
- console.log("🎯 Agent tags demo completed successfully!");
- console.log("📊 Tags used: ['live-agent-test', 'nodejs-example']");
-
- // Close connection after a brief delay
- setTimeout(() => {
- connection.disconnect();
- }, 2000);
- }, 15000);
-
- res.on("readable", () => {
- if (!isStreamActive) return;
-
- const chunk = res.read();
- if (chunk) {
- connection.send(chunk);
- }
- });
-
- res.on("error", (error) => {
- if (isStreamActive) {
- console.error("❌ Audio stream error:", error);
- }
- });
- })
- .catch((error) => {
- console.error("❌ Failed to fetch audio stream:", error);
- });
- }
-
- // Agent conversation events
- connection.on(AgentEvents.ConversationText, (data) => {
- console.log(`💬 ${data.role}: ${data.content}`);
- });
-
- connection.on(AgentEvents.UserStartedSpeaking, () => {
- console.log("🎤 User speaking detected");
- });
-
- connection.on(AgentEvents.AgentThinking, () => {
- console.log("🤔 Agent processing...");
- });
-
- connection.on(AgentEvents.AgentStartedSpeaking, () => {
- console.log("🗨️ Agent responding");
- });
-
- connection.on(AgentEvents.Close, () => {
- console.log("👋 Agent session ended");
- });
-};
-
-agent();
diff --git a/examples/node-agent-live/package.json b/examples/node-agent-live/package.json
deleted file mode 100644
index 147ddb98..00000000
--- a/examples/node-agent-live/package.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "deepgram-node-agent-live-example",
- "version": "1.0.0",
- "description": "A simple example of using the Deepgram JS SDK to interact with a live agent in Node.js.",
- "main": "index.js",
- "scripts": {
- "start": "node index.js"
- },
- "dependencies": {
- "dotenv": "^16.3.1"
- }
-}
diff --git a/examples/node-live-token/.gitignore b/examples/node-live-token/.gitignore
deleted file mode 100644
index 37d7e734..00000000
--- a/examples/node-live-token/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules
-.env
diff --git a/examples/node-live-token/README.md b/examples/node-live-token/README.md
deleted file mode 100644
index 81c0ff31..00000000
--- a/examples/node-live-token/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# Live Transcription with a Temporary Token
-
-This example demonstrates how to transcribe a live audio stream using a temporary token with the Deepgram JS SDK.
-
-## Setup
-
-1. Make sure you have a `.env` file with your `DEEPGRAM_API_KEY` to generate the token.
-2. Install the dependencies:
-
- ```bash
- pnpm install
- ```
-
-## Usage
-
-Run the example with the following command:
-
-```bash
-pnpm start
-```
diff --git a/examples/node-live-token/index.js b/examples/node-live-token/index.js
deleted file mode 100644
index a784e20b..00000000
--- a/examples/node-live-token/index.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/* eslint-env node */
-/* eslint-disable @typescript-eslint/no-var-requires, @typescript-eslint/no-require-imports, no-console */
-
-const { createClient, LiveTranscriptionEvents } = require("../../dist/main/index");
-const fetch = require("cross-fetch");
-require("dotenv").config();
-
-const live = async () => {
- const deepgram = createClient(process.env.DEEPGRAM_API_KEY);
-
- // First, generate a temporary token with 60 second TTL
- console.log("🔍 Requesting token with ttl_seconds: 60");
- const { result: token, error } = await deepgram.auth.grantToken({
- ttl_seconds: 60,
- });
-
- if (error) {
- console.error("❌ Failed to generate token:", error);
- return;
- }
-
- // Log successful token generation
- console.log("✅ Token generated successfully!");
- console.log(` • Expires in: ${token.expires_in} seconds`);
- console.log(` • Token preview: ${token.access_token.substring(0, 20)}...`);
- console.log("");
-
- // Now, use the temporary token to create a new client
- // Note: Must use 'accessToken' property, not 'key'
- const deepgramWithToken = createClient({ accessToken: token.access_token });
- console.log("✅ Client created with temporary token - ready for live transcription!");
- const connection = deepgramWithToken.listen.live({
- model: "nova-3",
- });
-
- connection.on(LiveTranscriptionEvents.Open, () => {
- console.log("Connection opened.");
-
- fetch("http://stream.live.vc.bbcmedia.co.uk/bbc_world_service")
- .then((r) => r.body)
- .then((res) => {
- res.on("readable", () => {
- connection.send(res.read());
- });
- });
-
- connection.on(LiveTranscriptionEvents.Transcript, (data) => {
- console.log(data.channel.alternatives[0].transcript);
- });
-
- connection.on(LiveTranscriptionEvents.Close, () => {
- console.log("Connection closed.");
- });
- });
-};
-
-live();
diff --git a/examples/node-live-token/package.json b/examples/node-live-token/package.json
deleted file mode 100644
index 952ad7bb..00000000
--- a/examples/node-live-token/package.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "deepgram-node-live-token-example",
- "version": "1.0.0",
- "description": "A simple example of using a temporary token to transcribe a live audio stream in Node.js.",
- "main": "index.js",
- "scripts": {
- "start": "node index.js"
- },
- "dependencies": {
- "dotenv": "^16.3.1"
- }
-}
diff --git a/examples/node-live/.gitignore b/examples/node-live/.gitignore
deleted file mode 100644
index 37d7e734..00000000
--- a/examples/node-live/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules
-.env
diff --git a/examples/node-live/README.md b/examples/node-live/README.md
deleted file mode 100644
index 1b75efcd..00000000
--- a/examples/node-live/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# Live Transcription
-
-This example demonstrates how to transcribe a live audio stream using the Deepgram JS SDK.
-
-## Setup
-
-1. Make sure you have a `.env` file with your `DEEPGRAM_API_KEY`.
-2. Install the dependencies:
-
- ```bash
- pnpm install
- ```
-
-## Usage
-
-Run the example with the following command:
-
-```bash
-pnpm start
-```
diff --git a/examples/node-live/index.js b/examples/node-live/index.js
deleted file mode 100644
index 64087563..00000000
--- a/examples/node-live/index.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/* eslint-env node */
-/* eslint-disable @typescript-eslint/no-var-requires, @typescript-eslint/no-require-imports, no-console */
-
-const { createClient, LiveTranscriptionEvents } = require("../../dist/main/index");
-const fetch = require("cross-fetch");
-require("dotenv").config();
-
-const live = async () => {
- const deepgram = createClient(process.env.DEEPGRAM_API_KEY);
- const connection = deepgram.listen.live({
- model: "nova-3",
- });
-
- connection.on(LiveTranscriptionEvents.Open, () => {
- console.log("Connection opened.");
-
- fetch("http://stream.live.vc.bbcmedia.co.uk/bbc_world_service")
- .then((r) => r.body)
- .then((res) => {
- res.on("readable", () => {
- connection.send(res.read());
- });
- });
-
- connection.on(LiveTranscriptionEvents.Transcript, (data) => {
- console.log(data.channel.alternatives[0].transcript);
- });
-
- connection.on(LiveTranscriptionEvents.Close, () => {
- console.log("Connection closed.");
- });
- });
-};
-
-live();
diff --git a/examples/node-live/package.json b/examples/node-live/package.json
deleted file mode 100644
index e0205c30..00000000
--- a/examples/node-live/package.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "deepgram-node-live-example",
- "version": "1.0.0",
- "description": "A simple example of using the Deepgram JS SDK to transcribe a live audio stream in Node.js.",
- "main": "index.js",
- "scripts": {
- "start": "node index.js"
- },
- "dependencies": {
- "dotenv": "^16.3.1"
- }
-}
diff --git a/examples/node-prerecorded/.gitignore b/examples/node-prerecorded/.gitignore
deleted file mode 100644
index 37d7e734..00000000
--- a/examples/node-prerecorded/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules
-.env
diff --git a/examples/node-prerecorded/README.md b/examples/node-prerecorded/README.md
deleted file mode 100644
index 48d96033..00000000
--- a/examples/node-prerecorded/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# Prerecorded Transcription
-
-This example demonstrates how to transcribe a prerecorded audio file using the Deepgram JS SDK.
-
-## Setup
-
-1. Make sure you have a `.env` file with your `DEEPGRAM_API_KEY`.
-2. Install the dependencies:
-
- ```bash
- pnpm install
- ```
-
-## Usage
-
-Run the example with the following command:
-
-```bash
-pnpm start
-```
diff --git a/examples/node-prerecorded/index.js b/examples/node-prerecorded/index.js
deleted file mode 100644
index aeb5ac5a..00000000
--- a/examples/node-prerecorded/index.js
+++ /dev/null
@@ -1,120 +0,0 @@
-/* eslint-env node */
-/* eslint-disable @typescript-eslint/no-var-requires, @typescript-eslint/no-require-imports, no-console */
-
-const { createClient } = require("../../dist/main/index");
-const { readFileSync } = require("fs");
-const { resolve } = require("path");
-require("dotenv").config();
-
-const transcribeUrlAuthWithFactory = async () => {
- console.log("transcribing url with auth factory");
-
- const authFactory = async () => {
- const deepgramTokenClient = createClient(process.env.DEEPGRAM_API_KEY);
-
- const { result: tokenResult, error: tokenError } = await deepgramTokenClient.auth.grantToken();
-
- if (tokenError) console.error(tokenError);
- if (!tokenError) return tokenResult.access_token;
- };
-
- const deepgramClient = createClient({ accessToken: authFactory });
-
- console.log("Transcribing URL", "https://dpgr.am/spacewalk.wav");
- const { result, error } = await deepgramClient.listen.prerecorded.transcribeUrl(
- {
- url: "https://dpgr.am/spacewalk.wav",
- },
- {
- model: "nova-3",
- }
- );
-
- if (error) console.error(error);
- if (!error) console.dir(result, { depth: 1 });
-};
-
-const transcribeUrlWithAccessToken = async () => {
- console.log("transcribing url with access token");
-
- const deepgramTokenClient = createClient(process.env.DEEPGRAM_API_KEY);
-
- const { result: tokenResult, error: tokenError } = await deepgramTokenClient.auth.grantToken();
-
- if (tokenError) console.error(tokenError);
-
- const deepgramClient = createClient({ accessToken: tokenResult.access_token });
-
- console.log("Transcribing URL", "https://dpgr.am/spacewalk.wav");
- const { result, error } = await deepgramClient.listen.prerecorded.transcribeUrl(
- {
- url: "https://dpgr.am/spacewalk.wav",
- },
- {
- model: "nova-3",
- }
- );
-
- if (error) console.error(error);
- if (!error) console.dir(result, { depth: 1 });
-};
-
-const transcribeUrl = async () => {
- console.log("transcribing url with api key");
-
- const deepgram = createClient(process.env.DEEPGRAM_API_KEY);
-
- console.log("Transcribing URL", "https://dpgr.am/spacewalk.wav");
- const { result, error } = await deepgram.listen.prerecorded.transcribeUrl(
- {
- url: "https://dpgr.am/spacewalk.wav",
- },
- {
- model: "nova-3",
- }
- );
-
- if (error) console.error(error);
- if (!error) console.dir(result, { depth: 1 });
-};
-
-const transcribeFile = async () => {
- console.log("transcribing file with api key");
-
- const deepgram = createClient(process.env.DEEPGRAM_API_KEY);
-
- const filePath = resolve(__dirname, "../spacewalk.wav");
- console.log(filePath);
- const file = readFileSync(filePath);
-
- console.log("Transcribing file", file);
- const { result, error } = await deepgram.listen.prerecorded.transcribeFile(file, {
- model: "nova-3",
- });
-
- if (error) console.error(error);
- if (!error) console.dir(result, { depth: 1 });
-};
-
-const transcribe = async () => {
- const deepgram = createClient(process.env.DEEPGRAM_API_KEY);
- const audio = readFileSync(resolve(__dirname, "../spacewalk.wav"));
-
- const { result, error } = await deepgram.listen.prerecorded.transcribeFile(audio, {
- model: "nova-3",
- });
-
- if (error) {
- console.error(error);
- } else {
- console.log(result.results.channels[0].alternatives[0].transcript);
- }
-};
-
-(async () => {
- await transcribeUrl();
- await transcribeFile();
- await transcribeUrlAuthWithFactory();
- await transcribeUrlWithAccessToken();
- await transcribe();
-})();
diff --git a/examples/node-prerecorded/package.json b/examples/node-prerecorded/package.json
deleted file mode 100644
index f04ae89f..00000000
--- a/examples/node-prerecorded/package.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "deepgram-node-prerecorded-example",
- "version": "1.0.0",
- "description": "A simple example of using the Deepgram JS SDK to transcribe a prerecorded audio file in Node.js.",
- "main": "index.js",
- "scripts": {
- "start": "node index.js"
- },
- "dependencies": {
- "dotenv": "^16.3.1"
- }
-}
diff --git a/examples/node-read/.gitignore b/examples/node-read/.gitignore
deleted file mode 100644
index 37d7e734..00000000
--- a/examples/node-read/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules
-.env
diff --git a/examples/node-read/README.md b/examples/node-read/README.md
deleted file mode 100644
index 9d9519d2..00000000
--- a/examples/node-read/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# Read (Text Analysis)
-
-This example demonstrates how to analyze text using the Deepgram JS SDK.
-
-## Setup
-
-1. Make sure you have a `.env` file with your `DEEPGRAM_API_KEY`.
-2. Install the dependencies:
-
- ```bash
- pnpm install
- ```
-
-## Usage
-
-Run the example with the following command:
-
-```bash
-pnpm start
-```
diff --git a/examples/node-read/index.js b/examples/node-read/index.js
deleted file mode 100644
index 78eca5a9..00000000
--- a/examples/node-read/index.js
+++ /dev/null
@@ -1,25 +0,0 @@
-/* eslint-env node */
-/* eslint-disable @typescript-eslint/no-var-requires, @typescript-eslint/no-require-imports, no-console */
-
-const { createClient } = require("../../dist/main/index");
-require("dotenv").config();
-
-const analyze = async () => {
- const deepgram = createClient(process.env.DEEPGRAM_API_KEY);
- const text = "Hello, world!";
-
- const { result, error } = await deepgram.read.analyzeText(
- { text },
- {
- model: "nova-3",
- }
- );
-
- if (error) {
- console.error(error);
- } else {
- console.dir(result, { depth: null });
- }
-};
-
-analyze();
diff --git a/examples/node-read/package.json b/examples/node-read/package.json
deleted file mode 100644
index 2bf05686..00000000
--- a/examples/node-read/package.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "deepgram-node-read-example",
- "version": "1.0.0",
- "description": "A simple example of using the Deepgram JS SDK to analyze text in Node.js.",
- "main": "index.js",
- "scripts": {
- "start": "node index.js"
- },
- "dependencies": {
- "dotenv": "^16.3.1"
- }
-}
diff --git a/examples/node-speak-live/.gitignore b/examples/node-speak-live/.gitignore
deleted file mode 100644
index 7444d06a..00000000
--- a/examples/node-speak-live/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-node_modules
-.env
-output.mp3
diff --git a/examples/node-speak-live/README.md b/examples/node-speak-live/README.md
deleted file mode 100644
index 9bbdeafd..00000000
--- a/examples/node-speak-live/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# Live Speak (Text-to-Speech)
-
-This example demonstrates how to synthesize speech from a live text stream using the Deepgram JS SDK.
-
-## Setup
-
-1. Make sure you have a `.env` file with your `DEEPGRAM_API_KEY`.
-2. Install the dependencies:
-
- ```bash
- pnpm install
- ```
-
-## Usage
-
-Run the example with the following command:
-
-```bash
-pnpm start
-```
diff --git a/examples/node-speak-live/index.js b/examples/node-speak-live/index.js
deleted file mode 100644
index a19e0690..00000000
--- a/examples/node-speak-live/index.js
+++ /dev/null
@@ -1,38 +0,0 @@
-/* eslint-env node */
-/* eslint-disable @typescript-eslint/no-var-requires, @typescript-eslint/no-require-imports, no-console */
-
-const { createClient, LiveTTSEvents } = require("../../dist/main/index");
-const { writeFileSync } = require("fs");
-const { resolve } = require("path");
-require("dotenv").config();
-
-const speak = async () => {
- const deepgram = createClient(process.env.DEEPGRAM_API_KEY);
- const connection = deepgram.speak.live({
- model: "aura-asteria-en",
- });
-
- const audioChunks = [];
-
- connection.on(LiveTTSEvents.Open, () => {
- console.log("Connection opened.");
- connection.sendText("Hello, world! This is a live text-to-speech test.");
- connection.sendText("This is a second sentence.");
- connection.finish();
- });
-
- connection.on(LiveTTSEvents.Audio, (audio) => {
- console.log("Received audio chunk.");
- audioChunks.push(audio);
- });
-
- connection.on(LiveTTSEvents.Close, () => {
- console.log("Connection closed.");
- const buffer = Buffer.concat(audioChunks);
- const filePath = resolve(__dirname, "output.mp3");
- writeFileSync(filePath, buffer);
- console.log(`Audio file saved to ${filePath}`);
- });
-};
-
-speak();
diff --git a/examples/node-speak-live/package.json b/examples/node-speak-live/package.json
deleted file mode 100644
index 23ada3f6..00000000
--- a/examples/node-speak-live/package.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "deepgram-node-speak-live-example",
- "version": "1.0.0",
- "description": "A simple example of using the Deepgram JS SDK to synthesize speech from a live text stream in Node.js.",
- "main": "index.js",
- "scripts": {
- "start": "node index.js"
- },
- "dependencies": {
- "dotenv": "^16.3.1"
- }
-}
diff --git a/examples/node-speak/.gitignore b/examples/node-speak/.gitignore
deleted file mode 100644
index 7444d06a..00000000
--- a/examples/node-speak/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-node_modules
-.env
-output.mp3
diff --git a/examples/node-speak/README.md b/examples/node-speak/README.md
deleted file mode 100644
index e009a4d8..00000000
--- a/examples/node-speak/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# Speak (Text-to-Speech)
-
-This example demonstrates how to synthesize speech from text using the Deepgram JS SDK.
-
-## Setup
-
-1. Make sure you have a `.env` file with your `DEEPGRAM_API_KEY`.
-2. Install the dependencies:
-
- ```bash
- pnpm install
- ```
-
-## Usage
-
-Run the example with the following command:
-
-```bash
-pnpm start
-```
diff --git a/examples/node-speak/index.js b/examples/node-speak/index.js
deleted file mode 100644
index fea1211a..00000000
--- a/examples/node-speak/index.js
+++ /dev/null
@@ -1,43 +0,0 @@
-/* eslint-env node */
-/* eslint-disable @typescript-eslint/no-var-requires, @typescript-eslint/no-require-imports, no-console */
-
-const { createClient } = require("../../dist/main/index");
-const { writeFileSync } = require("fs");
-const { resolve } = require("path");
-require("dotenv").config();
-
-const speak = async () => {
- const deepgram = createClient(process.env.DEEPGRAM_API_KEY);
- const text = "Hello, world! This is a test of the Deepgram JS SDK.";
-
- const response = await deepgram.speak.request(
- { text },
- {
- model: "aura-asteria-en",
- }
- );
-
- const stream = await response.getStream();
- const headers = await response.getHeaders();
-
- if (stream) {
- const buffer = await new Promise((resolve, reject) => {
- const chunks = [];
- stream.on("data", (chunk) => chunks.push(chunk));
- stream.on("end", () => resolve(Buffer.concat(chunks)));
- stream.on("error", reject);
- });
-
- const filePath = resolve(__dirname, "output.mp3");
- writeFileSync(filePath, buffer);
- console.log(`Audio file saved to ${filePath}`);
- } else {
- console.error("Error: Could not get audio stream.");
- }
-
- if (headers) {
- console.log("Headers:", headers);
- }
-};
-
-speak();
diff --git a/examples/node-speak/package.json b/examples/node-speak/package.json
deleted file mode 100644
index eec5d6a6..00000000
--- a/examples/node-speak/package.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "deepgram-node-speak-example",
- "version": "1.0.0",
- "description": "A simple example of using the Deepgram JS SDK to synthesize speech in Node.js.",
- "main": "index.js",
- "scripts": {
- "start": "node index.js"
- },
- "dependencies": {
- "dotenv": "^16.3.1"
- }
-}
diff --git a/jest.config.js b/jest.config.js
deleted file mode 100644
index 3f2adae4..00000000
--- a/jest.config.js
+++ /dev/null
@@ -1,53 +0,0 @@
-/** @type {import('jest').Config} */
-/* eslint-env node */
-module.exports = {
- preset: "ts-jest",
- testEnvironment: "node",
-
- // Test file patterns
- testMatch: ["/tests/**/*.test.ts", "/tests/**/*.spec.ts"],
-
- // Module path mapping
- moduleNameMapper: {
- "^@/(.*)$": "/src/$1",
- "^@deepgram/sdk$": "/src/index.ts",
- },
-
- // Setup files
- setupFilesAfterEnv: ["/tests/setup.ts"],
-
- // Coverage configuration
- collectCoverageFrom: [
- "src/**/*.ts",
- "!src/**/*.d.ts",
- "!src/**/index.ts",
- "!src/**/__tests__/**",
- "!src/**/__mocks__/**",
- ],
-
- coverageDirectory: "coverage",
- coverageReporters: ["text", "lcov", "html", "json"],
-
- // Test timeout
- testTimeout: 10000,
-
- // Transform configuration
- transform: {
- "^.+\\.ts$": [
- "ts-jest",
- {
- tsconfig: "tsconfig.json",
- },
- ],
- },
-
- // Module file extensions
- moduleFileExtensions: ["ts", "js", "json"],
-
- // Clear mocks between tests
- clearMocks: true,
- restoreMocks: true,
-
- // Detect open handles to identify resource leaks
- detectOpenHandles: true,
-};
diff --git a/package.json b/package.json
index 07a760ec..5516e639 100644
--- a/package.json
+++ b/package.json
@@ -1,117 +1,72 @@
{
- "name": "@deepgram/sdk",
- "version": "0.0.0-automated",
- "description": "Isomorphic Javascript client for Deepgram",
- "keywords": [
- "javascript",
- "typescript",
- "deepgram",
- "asr",
- "speech",
- "sdk"
- ],
- "packageManager": "pnpm@10.12.1",
- "homepage": "https://github.com/deepgram/deepgram-js-sdk",
- "bugs": "https://github.com/deepgram/deepgram-js-sdk/issues",
- "license": "MIT",
- "author": {
- "name": "Deepgram DevRel Team",
- "email": "devrel@deepgram.com"
- },
- "contributors": [
- "Brian Barrow",
- "Brian Hillis",
- "Luke Oliff",
- "Michael Jolley",
- "Sandra Rodgers",
- "Shir Goldberg"
- ],
- "files": [
- "dist",
- "src"
- ],
- "engines": {
- "node": ">=18.0.0"
- },
- "main": "dist/main/index.js",
- "module": "dist/module/index.js",
- "types": "dist/module/index.d.ts",
- "sideEffects": false,
- "repository": "deepgram/deepgram-js-sdk",
- "scripts": {
- "clean": "rimraf dist docs/v2",
- "format": "prettier --write \"src/**/*.ts\"",
- "build": "run-s clean format build:*",
- "build:main": "tsc -p tsconfig.json",
- "build:module": "tsc -p tsconfig.module.json",
- "build:umd": "webpack --mode=production",
- "lint": "run-s lint:*",
- "lint:js": "eslint -c .eslintrc-examples.js examples --max-warnings 0",
- "lint:md": "markdownlint **/*.md *.md",
- "lint:yml": "yamllint .github/workflows",
- "lint:ts": "eslint src --max-warnings 0",
- "watch": "nodemon -e ts --watch src --exec \"npm run build\"",
- "docs": "typedoc --entryPoints src/index.ts --out docs/ --includes src/packages/**/*.ts --emit none",
- "docs:json": "typedoc --entryPoints src/index.ts --includes src/packages/**/*.ts --json docs/spec.json --emit none",
- "test": "jest",
- "test:unit": "jest --testPathPattern=tests/unit",
- "test:e2e": "jest --testPathPattern=tests/e2e",
- "test:e2e:offline": "node scripts/test-offline.js",
- "test:watch": "jest --watch",
- "test:coverage": "jest --coverage",
- "test:ci": "jest --ci --coverage --watchAll=false"
- },
- "dependencies": {
- "@deepgram/captions": "^1.1.1",
- "@types/node": "^18.19.39",
- "cross-fetch": "^3.1.5",
- "deepmerge": "^4.3.1",
- "events": "^3.3.0",
- "ws": "^8.17.0"
- },
- "devDependencies": {
- "@commitlint/cli": "^17.6.7",
- "@commitlint/config-conventional": "^17.6.7",
- "@types/jest": "^29.5.12",
- "@types/ws": "^8.5.10",
- "@typescript-eslint/eslint-plugin": "^8.7.0",
- "@typescript-eslint/parser": "^8.7.0",
- "buffer": "^6.0.3",
- "cross-env": "^7.0.3",
- "dotenv": "^16.5.0",
- "eslint": "^8.57.1",
- "husky": "^4.3.0",
- "jest": "^29.7.0",
- "jest-environment-jsdom": "^29.7.0",
- "markdownlint": "^0.35.0",
- "markdownlint-cli": "^0.42.0",
- "nodemon": "^3.0.1",
- "npm-run-all": "^4.1.5",
- "prettier": "^2.5.1",
- "pretty-quick": "^3.1.3",
- "rimraf": "^3.0.2",
- "semantic-release-plugin-update-version-in-files": "^1.1.0",
- "stream-browserify": "^3.0.0",
- "ts-jest": "^29.1.2",
- "ts-loader": "^8.0.11",
- "ts-node": "^10.9.1",
- "typedoc": "^0.22.16",
- "typescript": "^4.5.5",
- "url": "^0.11.4",
- "util": "^0.12.5",
- "webpack": "^5.69.1",
- "webpack-cli": "^4.9.2",
- "yaml-lint": "^1.7.0"
- },
- "overrides": {
- "es5-ext": "0.10.53"
- },
- "husky": {
- "hooks": {
- "pre-commit": "pretty-quick --staged",
- "commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
- }
- },
- "jsdelivr": "dist/umd/deepgram.js",
- "unpkg": "dist/umd/deepgram.js"
+ "name": "@deepgram/sdk",
+ "version": "4.11.3",
+ "private": false,
+ "repository": "github:deepgram/deepgram-js-sdk",
+ "license": "MIT",
+ "type": "commonjs",
+ "main": "./dist/cjs/index.js",
+ "module": "./dist/esm/index.mjs",
+ "types": "./dist/cjs/index.d.ts",
+ "exports": {
+ ".": {
+ "types": "./dist/cjs/index.d.ts",
+ "import": {
+ "types": "./dist/esm/index.d.mts",
+ "default": "./dist/esm/index.mjs"
+ },
+ "require": {
+ "types": "./dist/cjs/index.d.ts",
+ "default": "./dist/cjs/index.js"
+ },
+ "default": "./dist/cjs/index.js"
+ },
+ "./package.json": "./package.json"
+ },
+ "files": [
+ "dist",
+ "reference.md",
+ "README.md",
+ "LICENSE"
+ ],
+ "scripts": {
+ "format": "biome format --write --skip-parse-errors --no-errors-on-unmatched --max-diagnostics=none",
+ "format:check": "biome format --skip-parse-errors --no-errors-on-unmatched --max-diagnostics=none",
+ "lint": "biome lint --skip-parse-errors --no-errors-on-unmatched --max-diagnostics=none",
+ "lint:fix": "biome lint --fix --unsafe --skip-parse-errors --no-errors-on-unmatched --max-diagnostics=none",
+ "check": "biome check --skip-parse-errors --no-errors-on-unmatched --max-diagnostics=none",
+ "check:fix": "biome check --fix --unsafe --skip-parse-errors --no-errors-on-unmatched --max-diagnostics=none",
+ "build": "pnpm build:cjs && pnpm build:esm",
+ "build:cjs": "tsc --project ./tsconfig.cjs.json",
+ "build:esm": "tsc --project ./tsconfig.esm.json && node scripts/rename-to-esm-files.js dist/esm",
+ "test": "vitest",
+ "test:unit": "vitest --project unit",
+ "test:wire": "vitest --project wire"
+ },
+ "dependencies": {
+ "ws": "^8.16.0"
+ },
+ "devDependencies": {
+ "webpack": "^5.97.1",
+ "ts-loader": "^9.5.1",
+ "@types/ws": "^8.5.10",
+ "vitest": "^3.2.4",
+ "msw": "2.11.2",
+ "@types/node": "^18.19.70",
+ "typescript": "~5.7.2",
+ "@biomejs/biome": "2.3.1",
+ "playwright": "^1.56.1",
+ "@playwright/test": "^1.56.1"
+ },
+ "browser": {
+ "fs": false,
+ "os": false,
+ "path": false,
+ "stream": false
+ },
+ "packageManager": "pnpm@10.20.0",
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "sideEffects": false
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index e021df84..e9aa7b09 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -1,1275 +1,567 @@
-lockfileVersion: "9.0"
+lockfileVersion: '9.0'
settings:
autoInstallPeers: true
excludeLinksFromLockfile: false
importers:
+
.:
dependencies:
- "@deepgram/captions":
- specifier: ^1.1.1
- version: 1.2.0
- "@types/node":
- specifier: ^18.19.39
- version: 18.19.112
- cross-fetch:
- specifier: ^3.1.5
- version: 3.2.0
- deepmerge:
- specifier: ^4.3.1
- version: 4.3.1
- events:
- specifier: ^3.3.0
- version: 3.3.0
ws:
- specifier: ^8.17.0
- version: 8.18.2
+ specifier: ^8.16.0
+ version: 8.18.3
devDependencies:
- "@commitlint/cli":
- specifier: ^17.6.7
- version: 17.8.1
- "@commitlint/config-conventional":
- specifier: ^17.6.7
- version: 17.8.1
- "@types/jest":
- specifier: ^29.5.12
- version: 29.5.14
- "@types/ws":
+ '@biomejs/biome':
+ specifier: 2.3.1
+ version: 2.3.1
+ '@playwright/test':
+ specifier: ^1.56.1
+ version: 1.56.1
+ '@types/node':
+ specifier: ^18.19.70
+ version: 18.19.130
+ '@types/ws':
specifier: ^8.5.10
version: 8.18.1
- "@typescript-eslint/eslint-plugin":
- specifier: ^8.7.0
- version: 8.34.0(@typescript-eslint/parser@8.34.0(eslint@8.57.1)(typescript@4.9.5))(eslint@8.57.1)(typescript@4.9.5)
- "@typescript-eslint/parser":
- specifier: ^8.7.0
- version: 8.34.0(eslint@8.57.1)(typescript@4.9.5)
- buffer:
- specifier: ^6.0.3
- version: 6.0.3
- cross-env:
- specifier: ^7.0.3
- version: 7.0.3
- dotenv:
- specifier: ^16.5.0
- version: 16.5.0
- eslint:
- specifier: ^8.57.1
- version: 8.57.1
- husky:
- specifier: ^4.3.0
- version: 4.3.8
- jest:
- specifier: ^29.7.0
- version: 29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))
- jest-environment-jsdom:
- specifier: ^29.7.0
- version: 29.7.0
- markdownlint:
- specifier: ^0.35.0
- version: 0.35.0
- markdownlint-cli:
- specifier: ^0.42.0
- version: 0.42.0
- nodemon:
- specifier: ^3.0.1
- version: 3.1.10
- npm-run-all:
- specifier: ^4.1.5
- version: 4.1.5
- prettier:
- specifier: ^2.5.1
- version: 2.8.8
- pretty-quick:
- specifier: ^3.1.3
- version: 3.3.1(prettier@2.8.8)
- rimraf:
- specifier: ^3.0.2
- version: 3.0.2
- semantic-release-plugin-update-version-in-files:
- specifier: ^1.1.0
- version: 1.1.0
- stream-browserify:
- specifier: ^3.0.0
- version: 3.0.0
- ts-jest:
- specifier: ^29.1.2
- version: 29.4.0(@babel/core@7.27.4)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.27.4))(jest-util@29.7.0)(jest@29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5)))(typescript@4.9.5)
+ msw:
+ specifier: 2.11.2
+ version: 2.11.2(@types/node@18.19.130)(typescript@5.7.3)
+ playwright:
+ specifier: ^1.56.1
+ version: 1.56.1
ts-loader:
- specifier: ^8.0.11
- version: 8.4.0(typescript@4.9.5)(webpack@5.99.9)
- ts-node:
- specifier: ^10.9.1
- version: 10.9.2(@types/node@18.19.112)(typescript@4.9.5)
- typedoc:
- specifier: ^0.22.16
- version: 0.22.18(typescript@4.9.5)
+ specifier: ^9.5.1
+ version: 9.5.4(typescript@5.7.3)(webpack@5.103.0)
typescript:
- specifier: ^4.5.5
- version: 4.9.5
- url:
- specifier: ^0.11.4
- version: 0.11.4
- util:
- specifier: ^0.12.5
- version: 0.12.5
+ specifier: ~5.7.2
+ version: 5.7.3
+ vitest:
+ specifier: ^3.2.4
+ version: 3.2.4(@types/node@18.19.130)(msw@2.11.2(@types/node@18.19.130)(typescript@5.7.3))(terser@5.44.1)
webpack:
- specifier: ^5.69.1
- version: 5.99.9(webpack-cli@4.10.0)
- webpack-cli:
- specifier: ^4.9.2
- version: 4.10.0(webpack@5.99.9)
- yaml-lint:
- specifier: ^1.7.0
- version: 1.7.0
+ specifier: ^5.97.1
+ version: 5.103.0
packages:
- "@ampproject/remapping@2.3.0":
- resolution:
- {
- integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==,
- }
- engines: { node: ">=6.0.0" }
-
- "@babel/code-frame@7.27.1":
- resolution:
- {
- integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/compat-data@7.27.5":
- resolution:
- {
- integrity: sha512-KiRAp/VoJaWkkte84TvUd9qjdbZAdiqyvMxrGl1N6vzFogKmaLgoM3L1kgtLicp2HP5fBJS8JrZKLVIZGVJAVg==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/core@7.27.4":
- resolution:
- {
- integrity: sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/generator@7.27.5":
- resolution:
- {
- integrity: sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/helper-compilation-targets@7.27.2":
- resolution:
- {
- integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/helper-module-imports@7.27.1":
- resolution:
- {
- integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/helper-module-transforms@7.27.3":
- resolution:
- {
- integrity: sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==,
- }
- engines: { node: ">=6.9.0" }
- peerDependencies:
- "@babel/core": ^7.0.0
-
- "@babel/helper-plugin-utils@7.27.1":
- resolution:
- {
- integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/helper-string-parser@7.27.1":
- resolution:
- {
- integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/helper-validator-identifier@7.27.1":
- resolution:
- {
- integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/helper-validator-option@7.27.1":
- resolution:
- {
- integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/helpers@7.27.6":
- resolution:
- {
- integrity: sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/parser@7.27.5":
- resolution:
- {
- integrity: sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==,
- }
- engines: { node: ">=6.0.0" }
+
+ '@biomejs/biome@2.3.1':
+ resolution: {integrity: sha512-A29evf1R72V5bo4o2EPxYMm5mtyGvzp2g+biZvRFx29nWebGyyeOSsDWGx3tuNNMFRepGwxmA9ZQ15mzfabK2w==}
+ engines: {node: '>=14.21.3'}
hasBin: true
- "@babel/plugin-syntax-async-generators@7.8.4":
- resolution:
- {
- integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==,
- }
- peerDependencies:
- "@babel/core": ^7.0.0-0
+ '@biomejs/cli-darwin-arm64@2.3.1':
+ resolution: {integrity: sha512-ombSf3MnTUueiYGN1SeI9tBCsDUhpWzOwS63Dove42osNh0PfE1cUtHFx6eZ1+MYCCLwXzlFlYFdrJ+U7h6LcA==}
+ engines: {node: '>=14.21.3'}
+ cpu: [arm64]
+ os: [darwin]
- "@babel/plugin-syntax-bigint@7.8.3":
- resolution:
- {
- integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==,
- }
- peerDependencies:
- "@babel/core": ^7.0.0-0
+ '@biomejs/cli-darwin-x64@2.3.1':
+ resolution: {integrity: sha512-pcOfwyoQkrkbGvXxRvZNe5qgD797IowpJPovPX5biPk2FwMEV+INZqfCaz4G5bVq9hYnjwhRMamg11U4QsRXrQ==}
+ engines: {node: '>=14.21.3'}
+ cpu: [x64]
+ os: [darwin]
- "@babel/plugin-syntax-class-properties@7.12.13":
- resolution:
- {
- integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==,
- }
- peerDependencies:
- "@babel/core": ^7.0.0-0
-
- "@babel/plugin-syntax-class-static-block@7.14.5":
- resolution:
- {
- integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==,
- }
- engines: { node: ">=6.9.0" }
- peerDependencies:
- "@babel/core": ^7.0.0-0
-
- "@babel/plugin-syntax-import-attributes@7.27.1":
- resolution:
- {
- integrity: sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==,
- }
- engines: { node: ">=6.9.0" }
- peerDependencies:
- "@babel/core": ^7.0.0-0
+ '@biomejs/cli-linux-arm64-musl@2.3.1':
+ resolution: {integrity: sha512-+DZYv8l7FlUtTrWs1Tdt1KcNCAmRO87PyOnxKGunbWm5HKg1oZBSbIIPkjrCtDZaeqSG1DiGx7qF+CPsquQRcg==}
+ engines: {node: '>=14.21.3'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@biomejs/cli-linux-arm64@2.3.1':
+ resolution: {integrity: sha512-td5O8pFIgLs8H1sAZsD6v+5quODihyEw4nv2R8z7swUfIK1FKk+15e4eiYVLcAE4jUqngvh4j3JCNgg0Y4o4IQ==}
+ engines: {node: '>=14.21.3'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@biomejs/cli-linux-x64-musl@2.3.1':
+ resolution: {integrity: sha512-Y3Ob4nqgv38Mh+6EGHltuN+Cq8aj/gyMTJYzkFZV2AEj+9XzoXB9VNljz9pjfFNHUxvLEV4b55VWyxozQTBaUQ==}
+ engines: {node: '>=14.21.3'}
+ cpu: [x64]
+ os: [linux]
+
+ '@biomejs/cli-linux-x64@2.3.1':
+ resolution: {integrity: sha512-PYWgEO7up7XYwSAArOpzsVCiqxBCXy53gsReAb1kKYIyXaoAlhBaBMvxR/k2Rm9aTuZ662locXUmPk/Aj+Xu+Q==}
+ engines: {node: '>=14.21.3'}
+ cpu: [x64]
+ os: [linux]
+
+ '@biomejs/cli-win32-arm64@2.3.1':
+ resolution: {integrity: sha512-RHIG/zgo+69idUqVvV3n8+j58dKYABRpMyDmfWu2TITC+jwGPiEaT0Q3RKD+kQHiS80mpBrST0iUGeEXT0bU9A==}
+ engines: {node: '>=14.21.3'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@biomejs/cli-win32-x64@2.3.1':
+ resolution: {integrity: sha512-izl30JJ5Dp10mi90Eko47zhxE6pYyWPcnX1NQxKpL/yMhXxf95oLTzfpu4q+MDBh/gemNqyJEwjBpe0MT5iWPA==}
+ engines: {node: '>=14.21.3'}
+ cpu: [x64]
+ os: [win32]
+
+ '@bundled-es-modules/cookie@2.0.1':
+ resolution: {integrity: sha512-8o+5fRPLNbjbdGRRmJj3h6Hh1AQJf2dk3qQ/5ZFb+PXkRNiSoMGGUKlsgLfrxneb72axVJyIYji64E2+nNfYyw==}
+
+ '@bundled-es-modules/statuses@1.0.1':
+ resolution: {integrity: sha512-yn7BklA5acgcBr+7w064fGV+SGIFySjCKpqjcWgBAIfrAkY+4GQTJJHQMeT3V/sgz23VTEVV8TtOmkvJAhFVfg==}
+
+ '@esbuild/aix-ppc64@0.25.12':
+ resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [aix]
+
+ '@esbuild/android-arm64@0.25.12':
+ resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [android]
+
+ '@esbuild/android-arm@0.25.12':
+ resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [android]
+
+ '@esbuild/android-x64@0.25.12':
+ resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [android]
+
+ '@esbuild/darwin-arm64@0.25.12':
+ resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [darwin]
- "@babel/plugin-syntax-import-meta@7.10.4":
- resolution:
- {
- integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==,
- }
- peerDependencies:
- "@babel/core": ^7.0.0-0
+ '@esbuild/darwin-x64@0.25.12':
+ resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [darwin]
- "@babel/plugin-syntax-json-strings@7.8.3":
- resolution:
- {
- integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==,
- }
+ '@esbuild/freebsd-arm64@0.25.12':
+ resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [freebsd]
+
+ '@esbuild/freebsd-x64@0.25.12':
+ resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@esbuild/linux-arm64@0.25.12':
+ resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@esbuild/linux-arm@0.25.12':
+ resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [linux]
+
+ '@esbuild/linux-ia32@0.25.12':
+ resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [linux]
+
+ '@esbuild/linux-loong64@0.25.12':
+ resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==}
+ engines: {node: '>=18'}
+ cpu: [loong64]
+ os: [linux]
+
+ '@esbuild/linux-mips64el@0.25.12':
+ resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==}
+ engines: {node: '>=18'}
+ cpu: [mips64el]
+ os: [linux]
+
+ '@esbuild/linux-ppc64@0.25.12':
+ resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [linux]
+
+ '@esbuild/linux-riscv64@0.25.12':
+ resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==}
+ engines: {node: '>=18'}
+ cpu: [riscv64]
+ os: [linux]
+
+ '@esbuild/linux-s390x@0.25.12':
+ resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==}
+ engines: {node: '>=18'}
+ cpu: [s390x]
+ os: [linux]
+
+ '@esbuild/linux-x64@0.25.12':
+ resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [linux]
+
+ '@esbuild/netbsd-arm64@0.25.12':
+ resolution: {integrity: sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [netbsd]
+
+ '@esbuild/netbsd-x64@0.25.12':
+ resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [netbsd]
+
+ '@esbuild/openbsd-arm64@0.25.12':
+ resolution: {integrity: sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openbsd]
+
+ '@esbuild/openbsd-x64@0.25.12':
+ resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [openbsd]
+
+ '@esbuild/openharmony-arm64@0.25.12':
+ resolution: {integrity: sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@esbuild/sunos-x64@0.25.12':
+ resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [sunos]
+
+ '@esbuild/win32-arm64@0.25.12':
+ resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@esbuild/win32-ia32@0.25.12':
+ resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [win32]
+
+ '@esbuild/win32-x64@0.25.12':
+ resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [win32]
+
+ '@inquirer/ansi@1.0.2':
+ resolution: {integrity: sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ==}
+ engines: {node: '>=18'}
+
+ '@inquirer/confirm@5.1.21':
+ resolution: {integrity: sha512-KR8edRkIsUayMXV+o3Gv+q4jlhENF9nMYUZs9PA2HzrXeHI8M5uDag70U7RJn9yyiMZSbtF5/UexBtAVtZGSbQ==}
+ engines: {node: '>=18'}
peerDependencies:
- "@babel/core": ^7.0.0-0
-
- "@babel/plugin-syntax-jsx@7.27.1":
- resolution:
- {
- integrity: sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==,
- }
- engines: { node: ">=6.9.0" }
- peerDependencies:
- "@babel/core": ^7.0.0-0
+ '@types/node': '>=18'
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
- "@babel/plugin-syntax-logical-assignment-operators@7.10.4":
- resolution:
- {
- integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==,
- }
+ '@inquirer/core@10.3.2':
+ resolution: {integrity: sha512-43RTuEbfP8MbKzedNqBrlhhNKVwoK//vUFNW3Q3vZ88BLcrs4kYpGg+B2mm5p2K/HfygoCxuKwJJiv8PbGmE0A==}
+ engines: {node: '>=18'}
peerDependencies:
- "@babel/core": ^7.0.0-0
+ '@types/node': '>=18'
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
- "@babel/plugin-syntax-nullish-coalescing-operator@7.8.3":
- resolution:
- {
- integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==,
- }
- peerDependencies:
- "@babel/core": ^7.0.0-0
+ '@inquirer/figures@1.0.15':
+ resolution: {integrity: sha512-t2IEY+unGHOzAaVM5Xx6DEWKeXlDDcNPeDyUpsRc6CUhBfU3VQOEl+Vssh7VNp1dR8MdUJBWhuObjXCsVpjN5g==}
+ engines: {node: '>=18'}
- "@babel/plugin-syntax-numeric-separator@7.10.4":
- resolution:
- {
- integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==,
- }
+ '@inquirer/type@3.0.10':
+ resolution: {integrity: sha512-BvziSRxfz5Ov8ch0z/n3oijRSEcEsHnhggm4xFZe93DHcUCTlutlq9Ox4SVENAfcRD22UQq7T/atg9Wr3k09eA==}
+ engines: {node: '>=18'}
peerDependencies:
- "@babel/core": ^7.0.0-0
+ '@types/node': '>=18'
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
- "@babel/plugin-syntax-object-rest-spread@7.8.3":
- resolution:
- {
- integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==,
- }
- peerDependencies:
- "@babel/core": ^7.0.0-0
+ '@jridgewell/gen-mapping@0.3.13':
+ resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
- "@babel/plugin-syntax-optional-catch-binding@7.8.3":
- resolution:
- {
- integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==,
- }
- peerDependencies:
- "@babel/core": ^7.0.0-0
+ '@jridgewell/resolve-uri@3.1.2':
+ resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
+ engines: {node: '>=6.0.0'}
- "@babel/plugin-syntax-optional-chaining@7.8.3":
- resolution:
- {
- integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==,
- }
- peerDependencies:
- "@babel/core": ^7.0.0-0
-
- "@babel/plugin-syntax-private-property-in-object@7.14.5":
- resolution:
- {
- integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==,
- }
- engines: { node: ">=6.9.0" }
- peerDependencies:
- "@babel/core": ^7.0.0-0
-
- "@babel/plugin-syntax-top-level-await@7.14.5":
- resolution:
- {
- integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==,
- }
- engines: { node: ">=6.9.0" }
- peerDependencies:
- "@babel/core": ^7.0.0-0
-
- "@babel/plugin-syntax-typescript@7.27.1":
- resolution:
- {
- integrity: sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==,
- }
- engines: { node: ">=6.9.0" }
- peerDependencies:
- "@babel/core": ^7.0.0-0
-
- "@babel/template@7.27.2":
- resolution:
- {
- integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/traverse@7.27.4":
- resolution:
- {
- integrity: sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==,
- }
- engines: { node: ">=6.9.0" }
-
- "@babel/types@7.27.6":
- resolution:
- {
- integrity: sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==,
- }
- engines: { node: ">=6.9.0" }
-
- "@bcoe/v8-coverage@0.2.3":
- resolution:
- {
- integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==,
- }
-
- "@commitlint/cli@17.8.1":
- resolution:
- {
- integrity: sha512-ay+WbzQesE0Rv4EQKfNbSMiJJ12KdKTDzIt0tcK4k11FdsWmtwP0Kp1NWMOUswfIWo6Eb7p7Ln721Nx9FLNBjg==,
- }
- engines: { node: ">=v14" }
+ '@jridgewell/source-map@0.3.11':
+ resolution: {integrity: sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==}
+
+ '@jridgewell/sourcemap-codec@1.5.5':
+ resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
+
+ '@jridgewell/trace-mapping@0.3.31':
+ resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
+
+ '@mswjs/interceptors@0.39.8':
+ resolution: {integrity: sha512-2+BzZbjRO7Ct61k8fMNHEtoKjeWI9pIlHFTqBwZ5icHpqszIgEZbjb1MW5Z0+bITTCTl3gk4PDBxs9tA/csXvA==}
+ engines: {node: '>=18'}
+
+ '@open-draft/deferred-promise@2.2.0':
+ resolution: {integrity: sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==}
+
+ '@open-draft/logger@0.3.0':
+ resolution: {integrity: sha512-X2g45fzhxH238HKO4xbSr7+wBS8Fvw6ixhTDuvLd5mqh6bJJCFAPwU9mPDxbcrRtfxv4u5IHCEH77BmxvXmmxQ==}
+
+ '@open-draft/until@2.1.0':
+ resolution: {integrity: sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==}
+
+ '@playwright/test@1.56.1':
+ resolution: {integrity: sha512-vSMYtL/zOcFpvJCW71Q/OEGQb7KYBPAdKh35WNSkaZA75JlAO8ED8UN6GUNTm3drWomcbcqRPFqQbLae8yBTdg==}
+ engines: {node: '>=18'}
hasBin: true
- "@commitlint/config-conventional@17.8.1":
- resolution:
- {
- integrity: sha512-NxCOHx1kgneig3VLauWJcDWS40DVjg7nKOpBEEK9E5fjJpQqLCilcnKkIIjdBH98kEO1q3NpE5NSrZ2kl/QGJg==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/config-validator@17.8.1":
- resolution:
- {
- integrity: sha512-UUgUC+sNiiMwkyiuIFR7JG2cfd9t/7MV8VB4TZ+q02ZFkHoduUS4tJGsCBWvBOGD9Btev6IecPMvlWUfJorkEA==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/ensure@17.8.1":
- resolution:
- {
- integrity: sha512-xjafwKxid8s1K23NFpL8JNo6JnY/ysetKo8kegVM7c8vs+kWLP8VrQq+NbhgVlmCojhEDbzQKp4eRXSjVOGsow==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/execute-rule@17.8.1":
- resolution:
- {
- integrity: sha512-JHVupQeSdNI6xzA9SqMF+p/JjrHTcrJdI02PwesQIDCIGUrv04hicJgCcws5nzaoZbROapPs0s6zeVHoxpMwFQ==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/format@17.8.1":
- resolution:
- {
- integrity: sha512-f3oMTyZ84M9ht7fb93wbCKmWxO5/kKSbwuYvS867duVomoOsgrgljkGGIztmT/srZnaiGbaK8+Wf8Ik2tSr5eg==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/is-ignored@17.8.1":
- resolution:
- {
- integrity: sha512-UshMi4Ltb4ZlNn4F7WtSEugFDZmctzFpmbqvpyxD3la510J+PLcnyhf9chs7EryaRFJMdAKwsEKfNK0jL/QM4g==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/lint@17.8.1":
- resolution:
- {
- integrity: sha512-aQUlwIR1/VMv2D4GXSk7PfL5hIaFSfy6hSHV94O8Y27T5q+DlDEgd/cZ4KmVI+MWKzFfCTiTuWqjfRSfdRllCA==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/load@17.8.1":
- resolution:
- {
- integrity: sha512-iF4CL7KDFstP1kpVUkT8K2Wl17h2yx9VaR1ztTc8vzByWWcbO/WaKwxsnCOqow9tVAlzPfo1ywk9m2oJ9ucMqA==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/message@17.8.1":
- resolution:
- {
- integrity: sha512-6bYL1GUQsD6bLhTH3QQty8pVFoETfFQlMn2Nzmz3AOLqRVfNNtXBaSY0dhZ0dM6A2MEq4+2d7L/2LP8TjqGRkA==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/parse@17.8.1":
- resolution:
- {
- integrity: sha512-/wLUickTo0rNpQgWwLPavTm7WbwkZoBy3X8PpkUmlSmQJyWQTj0m6bDjiykMaDt41qcUbfeFfaCvXfiR4EGnfw==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/read@17.8.1":
- resolution:
- {
- integrity: sha512-Fd55Oaz9irzBESPCdMd8vWWgxsW3OWR99wOntBDHgf9h7Y6OOHjWEdS9Xzen1GFndqgyoaFplQS5y7KZe0kO2w==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/resolve-extends@17.8.1":
- resolution:
- {
- integrity: sha512-W/ryRoQ0TSVXqJrx5SGkaYuAaE/BUontL1j1HsKckvM6e5ZaG0M9126zcwL6peKSuIetJi7E87PRQF8O86EW0Q==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/rules@17.8.1":
- resolution:
- {
- integrity: sha512-2b7OdVbN7MTAt9U0vKOYKCDsOvESVXxQmrvuVUZ0rGFMCrCPJWWP1GJ7f0lAypbDAhaGb8zqtdOr47192LBrIA==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/to-lines@17.8.1":
- resolution:
- {
- integrity: sha512-LE0jb8CuR/mj6xJyrIk8VLz03OEzXFgLdivBytoooKO5xLt5yalc8Ma5guTWobw998sbR3ogDd+2jed03CFmJA==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/top-level@17.8.1":
- resolution:
- {
- integrity: sha512-l6+Z6rrNf5p333SHfEte6r+WkOxGlWK4bLuZKbtf/2TXRN+qhrvn1XE63VhD8Oe9oIHQ7F7W1nG2k/TJFhx2yA==,
- }
- engines: { node: ">=v14" }
-
- "@commitlint/types@17.8.1":
- resolution:
- {
- integrity: sha512-PXDQXkAmiMEG162Bqdh9ChML/GJZo6vU+7F03ALKDK8zYc6SuAr47LjG7hGYRqUOz+WK0dU7bQ0xzuqFMdxzeQ==,
- }
- engines: { node: ">=v14" }
-
- "@cspotcode/source-map-support@0.8.1":
- resolution:
- {
- integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==,
- }
- engines: { node: ">=12" }
-
- "@deepgram/captions@1.2.0":
- resolution:
- {
- integrity: sha512-8B1C/oTxTxyHlSFubAhNRgCbQ2SQ5wwvtlByn8sDYZvdDtdn/VE2yEPZ4BvUnrKWmsbTQY6/ooLV+9Ka2qmDSQ==,
- }
- engines: { node: ">=18.0.0" }
-
- "@discoveryjs/json-ext@0.5.7":
- resolution:
- {
- integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==,
- }
- engines: { node: ">=10.0.0" }
-
- "@eslint-community/eslint-utils@4.7.0":
- resolution:
- {
- integrity: sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==,
- }
- engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
-
- "@eslint-community/regexpp@4.12.1":
- resolution:
- {
- integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==,
- }
- engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 }
-
- "@eslint/eslintrc@2.1.4":
- resolution:
- {
- integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==,
- }
- engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
-
- "@eslint/js@8.57.1":
- resolution:
- {
- integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==,
- }
- engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
-
- "@humanwhocodes/config-array@0.13.0":
- resolution:
- {
- integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==,
- }
- engines: { node: ">=10.10.0" }
- deprecated: Use @eslint/config-array instead
-
- "@humanwhocodes/module-importer@1.0.1":
- resolution:
- {
- integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==,
- }
- engines: { node: ">=12.22" }
-
- "@humanwhocodes/object-schema@2.0.3":
- resolution:
- {
- integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==,
- }
- deprecated: Use @eslint/object-schema instead
-
- "@isaacs/balanced-match@4.0.1":
- resolution:
- {
- integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==,
- }
- engines: { node: 20 || >=22 }
-
- "@isaacs/brace-expansion@5.0.0":
- resolution:
- {
- integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==,
- }
- engines: { node: 20 || >=22 }
-
- "@isaacs/cliui@8.0.2":
- resolution:
- {
- integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==,
- }
- engines: { node: ">=12" }
-
- "@istanbuljs/load-nyc-config@1.1.0":
- resolution:
- {
- integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==,
- }
- engines: { node: ">=8" }
-
- "@istanbuljs/schema@0.1.3":
- resolution:
- {
- integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==,
- }
- engines: { node: ">=8" }
-
- "@jest/console@29.7.0":
- resolution:
- {
- integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jest/core@29.7.0":
- resolution:
- {
- integrity: sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
- peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
- peerDependenciesMeta:
- node-notifier:
- optional: true
+ '@rollup/rollup-android-arm-eabi@4.53.3':
+ resolution: {integrity: sha512-mRSi+4cBjrRLoaal2PnqH82Wqyb+d3HsPUN/W+WslCXsZsyHa9ZeQQX/pQsZaVIWDkPcpV6jJ+3KLbTbgnwv8w==}
+ cpu: [arm]
+ os: [android]
- "@jest/environment@29.7.0":
- resolution:
- {
- integrity: sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jest/expect-utils@29.7.0":
- resolution:
- {
- integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jest/expect@29.7.0":
- resolution:
- {
- integrity: sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jest/fake-timers@29.7.0":
- resolution:
- {
- integrity: sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jest/globals@29.7.0":
- resolution:
- {
- integrity: sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jest/reporters@29.7.0":
- resolution:
- {
- integrity: sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
- peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
- peerDependenciesMeta:
- node-notifier:
- optional: true
+ '@rollup/rollup-android-arm64@4.53.3':
+ resolution: {integrity: sha512-CbDGaMpdE9sh7sCmTrTUyllhrg65t6SwhjlMJsLr+J8YjFuPmCEjbBSx4Z/e4SmDyH3aB5hGaJUP2ltV/vcs4w==}
+ cpu: [arm64]
+ os: [android]
- "@jest/schemas@29.6.3":
- resolution:
- {
- integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jest/source-map@29.6.3":
- resolution:
- {
- integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jest/test-result@29.7.0":
- resolution:
- {
- integrity: sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jest/test-sequencer@29.7.0":
- resolution:
- {
- integrity: sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jest/transform@29.7.0":
- resolution:
- {
- integrity: sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jest/types@29.6.3":
- resolution:
- {
- integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- "@jridgewell/gen-mapping@0.3.8":
- resolution:
- {
- integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==,
- }
- engines: { node: ">=6.0.0" }
-
- "@jridgewell/resolve-uri@3.1.2":
- resolution:
- {
- integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==,
- }
- engines: { node: ">=6.0.0" }
-
- "@jridgewell/set-array@1.2.1":
- resolution:
- {
- integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==,
- }
- engines: { node: ">=6.0.0" }
-
- "@jridgewell/source-map@0.3.6":
- resolution:
- {
- integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==,
- }
-
- "@jridgewell/sourcemap-codec@1.5.0":
- resolution:
- {
- integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==,
- }
-
- "@jridgewell/trace-mapping@0.3.25":
- resolution:
- {
- integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==,
- }
-
- "@jridgewell/trace-mapping@0.3.9":
- resolution:
- {
- integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==,
- }
-
- "@nodelib/fs.scandir@2.1.5":
- resolution:
- {
- integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==,
- }
- engines: { node: ">= 8" }
-
- "@nodelib/fs.stat@2.0.5":
- resolution:
- {
- integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==,
- }
- engines: { node: ">= 8" }
-
- "@nodelib/fs.walk@1.2.8":
- resolution:
- {
- integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==,
- }
- engines: { node: ">= 8" }
-
- "@sinclair/typebox@0.27.8":
- resolution:
- {
- integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==,
- }
-
- "@sinonjs/commons@3.0.1":
- resolution:
- {
- integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==,
- }
-
- "@sinonjs/fake-timers@10.3.0":
- resolution:
- {
- integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==,
- }
-
- "@tootallnate/once@2.0.0":
- resolution:
- {
- integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==,
- }
- engines: { node: ">= 10" }
-
- "@tsconfig/node10@1.0.11":
- resolution:
- {
- integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==,
- }
-
- "@tsconfig/node12@1.0.11":
- resolution:
- {
- integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==,
- }
-
- "@tsconfig/node14@1.0.3":
- resolution:
- {
- integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==,
- }
-
- "@tsconfig/node16@1.0.4":
- resolution:
- {
- integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==,
- }
-
- "@types/babel__core@7.20.5":
- resolution:
- {
- integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==,
- }
-
- "@types/babel__generator@7.27.0":
- resolution:
- {
- integrity: sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==,
- }
-
- "@types/babel__template@7.4.4":
- resolution:
- {
- integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==,
- }
-
- "@types/babel__traverse@7.20.7":
- resolution:
- {
- integrity: sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==,
- }
-
- "@types/eslint-scope@3.7.7":
- resolution:
- {
- integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==,
- }
-
- "@types/eslint@9.6.1":
- resolution:
- {
- integrity: sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==,
- }
-
- "@types/estree@1.0.8":
- resolution:
- {
- integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==,
- }
-
- "@types/graceful-fs@4.1.9":
- resolution:
- {
- integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==,
- }
-
- "@types/istanbul-lib-coverage@2.0.6":
- resolution:
- {
- integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==,
- }
-
- "@types/istanbul-lib-report@3.0.3":
- resolution:
- {
- integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==,
- }
-
- "@types/istanbul-reports@3.0.4":
- resolution:
- {
- integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==,
- }
-
- "@types/jest@29.5.14":
- resolution:
- {
- integrity: sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==,
- }
-
- "@types/jsdom@20.0.1":
- resolution:
- {
- integrity: sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==,
- }
-
- "@types/json-schema@7.0.15":
- resolution:
- {
- integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==,
- }
-
- "@types/minimist@1.2.5":
- resolution:
- {
- integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==,
- }
-
- "@types/node@18.19.112":
- resolution:
- {
- integrity: sha512-i+Vukt9POdS/MBI7YrrkkI5fMfwFtOjphSmt4WXYLfwqsfr6z/HdCx7LqT9M7JktGob8WNgj8nFB4TbGNE4Cog==,
- }
-
- "@types/node@20.5.1":
- resolution:
- {
- integrity: sha512-4tT2UrL5LBqDwoed9wZ6N3umC4Yhz3W3FloMmiiG4JwmUJWpie0c7lcnUNd4gtMKuDEO4wRVS8B6Xa0uMRsMKg==,
- }
-
- "@types/normalize-package-data@2.4.4":
- resolution:
- {
- integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==,
- }
-
- "@types/parse-json@4.0.2":
- resolution:
- {
- integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==,
- }
-
- "@types/stack-utils@2.0.3":
- resolution:
- {
- integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==,
- }
-
- "@types/tough-cookie@4.0.5":
- resolution:
- {
- integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==,
- }
-
- "@types/ws@8.18.1":
- resolution:
- {
- integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==,
- }
-
- "@types/yargs-parser@21.0.3":
- resolution:
- {
- integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==,
- }
-
- "@types/yargs@17.0.33":
- resolution:
- {
- integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==,
- }
-
- "@typescript-eslint/eslint-plugin@8.34.0":
- resolution:
- {
- integrity: sha512-QXwAlHlbcAwNlEEMKQS2RCgJsgXrTJdjXT08xEgbPFa2yYQgVjBymxP5DrfrE7X7iodSzd9qBUHUycdyVJTW1w==,
- }
- engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
- peerDependencies:
- "@typescript-eslint/parser": ^8.34.0
- eslint: ^8.57.0 || ^9.0.0
- typescript: ">=4.8.4 <5.9.0"
-
- "@typescript-eslint/parser@8.34.0":
- resolution:
- {
- integrity: sha512-vxXJV1hVFx3IXz/oy2sICsJukaBrtDEQSBiV48/YIV5KWjX1dO+bcIr/kCPrW6weKXvsaGKFNlwH0v2eYdRRbA==,
- }
- engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
- peerDependencies:
- eslint: ^8.57.0 || ^9.0.0
- typescript: ">=4.8.4 <5.9.0"
-
- "@typescript-eslint/project-service@8.34.0":
- resolution:
- {
- integrity: sha512-iEgDALRf970/B2YExmtPMPF54NenZUf4xpL3wsCRx/lgjz6ul/l13R81ozP/ZNuXfnLCS+oPmG7JIxfdNYKELw==,
- }
- engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
- peerDependencies:
- typescript: ">=4.8.4 <5.9.0"
-
- "@typescript-eslint/scope-manager@8.34.0":
- resolution:
- {
- integrity: sha512-9Ac0X8WiLykl0aj1oYQNcLZjHgBojT6cW68yAgZ19letYu+Hxd0rE0veI1XznSSst1X5lwnxhPbVdwjDRIomRw==,
- }
- engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
-
- "@typescript-eslint/tsconfig-utils@8.34.0":
- resolution:
- {
- integrity: sha512-+W9VYHKFIzA5cBeooqQxqNriAP0QeQ7xTiDuIOr71hzgffm3EL2hxwWBIIj4GuofIbKxGNarpKqIq6Q6YrShOA==,
- }
- engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
- peerDependencies:
- typescript: ">=4.8.4 <5.9.0"
-
- "@typescript-eslint/type-utils@8.34.0":
- resolution:
- {
- integrity: sha512-n7zSmOcUVhcRYC75W2pnPpbO1iwhJY3NLoHEtbJwJSNlVAZuwqu05zY3f3s2SDWWDSo9FdN5szqc73DCtDObAg==,
- }
- engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
- peerDependencies:
- eslint: ^8.57.0 || ^9.0.0
- typescript: ">=4.8.4 <5.9.0"
-
- "@typescript-eslint/types@8.34.0":
- resolution:
- {
- integrity: sha512-9V24k/paICYPniajHfJ4cuAWETnt7Ssy+R0Rbcqo5sSFr3QEZ/8TSoUi9XeXVBGXCaLtwTOKSLGcInCAvyZeMA==,
- }
- engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
-
- "@typescript-eslint/typescript-estree@8.34.0":
- resolution:
- {
- integrity: sha512-rOi4KZxI7E0+BMqG7emPSK1bB4RICCpF7QD3KCLXn9ZvWoESsOMlHyZPAHyG04ujVplPaHbmEvs34m+wjgtVtg==,
- }
- engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
- peerDependencies:
- typescript: ">=4.8.4 <5.9.0"
-
- "@typescript-eslint/utils@8.34.0":
- resolution:
- {
- integrity: sha512-8L4tWatGchV9A1cKbjaavS6mwYwp39jql8xUmIIKJdm+qiaeHy5KMKlBrf30akXAWBzn2SqKsNOtSENWUwg7XQ==,
- }
- engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
- peerDependencies:
- eslint: ^8.57.0 || ^9.0.0
- typescript: ">=4.8.4 <5.9.0"
-
- "@typescript-eslint/visitor-keys@8.34.0":
- resolution:
- {
- integrity: sha512-qHV7pW7E85A0x6qyrFn+O+q1k1p3tQCsqIZ1KZ5ESLXY57aTvUd3/a4rdPTeXisvhXn2VQG0VSKUqs8KHF2zcA==,
- }
- engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
-
- "@ungap/structured-clone@1.3.0":
- resolution:
- {
- integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==,
- }
-
- "@webassemblyjs/ast@1.14.1":
- resolution:
- {
- integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==,
- }
-
- "@webassemblyjs/floating-point-hex-parser@1.13.2":
- resolution:
- {
- integrity: sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==,
- }
-
- "@webassemblyjs/helper-api-error@1.13.2":
- resolution:
- {
- integrity: sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==,
- }
-
- "@webassemblyjs/helper-buffer@1.14.1":
- resolution:
- {
- integrity: sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==,
- }
-
- "@webassemblyjs/helper-numbers@1.13.2":
- resolution:
- {
- integrity: sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==,
- }
-
- "@webassemblyjs/helper-wasm-bytecode@1.13.2":
- resolution:
- {
- integrity: sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==,
- }
-
- "@webassemblyjs/helper-wasm-section@1.14.1":
- resolution:
- {
- integrity: sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==,
- }
-
- "@webassemblyjs/ieee754@1.13.2":
- resolution:
- {
- integrity: sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==,
- }
-
- "@webassemblyjs/leb128@1.13.2":
- resolution:
- {
- integrity: sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==,
- }
-
- "@webassemblyjs/utf8@1.13.2":
- resolution:
- {
- integrity: sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==,
- }
-
- "@webassemblyjs/wasm-edit@1.14.1":
- resolution:
- {
- integrity: sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==,
- }
-
- "@webassemblyjs/wasm-gen@1.14.1":
- resolution:
- {
- integrity: sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==,
- }
-
- "@webassemblyjs/wasm-opt@1.14.1":
- resolution:
- {
- integrity: sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==,
- }
-
- "@webassemblyjs/wasm-parser@1.14.1":
- resolution:
- {
- integrity: sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==,
- }
-
- "@webassemblyjs/wast-printer@1.14.1":
- resolution:
- {
- integrity: sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==,
- }
-
- "@webpack-cli/configtest@1.2.0":
- resolution:
- {
- integrity: sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==,
- }
- peerDependencies:
- webpack: 4.x.x || 5.x.x
- webpack-cli: 4.x.x
-
- "@webpack-cli/info@1.5.0":
- resolution:
- {
- integrity: sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==,
- }
- peerDependencies:
- webpack-cli: 4.x.x
+ '@rollup/rollup-darwin-arm64@4.53.3':
+ resolution: {integrity: sha512-Nr7SlQeqIBpOV6BHHGZgYBuSdanCXuw09hon14MGOLGmXAFYjx1wNvquVPmpZnl0tLjg25dEdr4IQ6GgyToCUA==}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@rollup/rollup-darwin-x64@4.53.3':
+ resolution: {integrity: sha512-DZ8N4CSNfl965CmPktJ8oBnfYr3F8dTTNBQkRlffnUarJ2ohudQD17sZBa097J8xhQ26AwhHJ5mvUyQW8ddTsQ==}
+ cpu: [x64]
+ os: [darwin]
+
+ '@rollup/rollup-freebsd-arm64@4.53.3':
+ resolution: {integrity: sha512-yMTrCrK92aGyi7GuDNtGn2sNW+Gdb4vErx4t3Gv/Tr+1zRb8ax4z8GWVRfr3Jw8zJWvpGHNpss3vVlbF58DZ4w==}
+ cpu: [arm64]
+ os: [freebsd]
+
+ '@rollup/rollup-freebsd-x64@4.53.3':
+ resolution: {integrity: sha512-lMfF8X7QhdQzseM6XaX0vbno2m3hlyZFhwcndRMw8fbAGUGL3WFMBdK0hbUBIUYcEcMhVLr1SIamDeuLBnXS+Q==}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@rollup/rollup-linux-arm-gnueabihf@4.53.3':
+ resolution: {integrity: sha512-k9oD15soC/Ln6d2Wv/JOFPzZXIAIFLp6B+i14KhxAfnq76ajt0EhYc5YPeX6W1xJkAdItcVT+JhKl1QZh44/qw==}
+ cpu: [arm]
+ os: [linux]
+
+ '@rollup/rollup-linux-arm-musleabihf@4.53.3':
+ resolution: {integrity: sha512-vTNlKq+N6CK/8UktsrFuc+/7NlEYVxgaEgRXVUVK258Z5ymho29skzW1sutgYjqNnquGwVUObAaxae8rZ6YMhg==}
+ cpu: [arm]
+ os: [linux]
+
+ '@rollup/rollup-linux-arm64-gnu@4.53.3':
+ resolution: {integrity: sha512-RGrFLWgMhSxRs/EWJMIFM1O5Mzuz3Xy3/mnxJp/5cVhZ2XoCAxJnmNsEyeMJtpK+wu0FJFWz+QF4mjCA7AUQ3w==}
+ cpu: [arm64]
+ os: [linux]
+
+ '@rollup/rollup-linux-arm64-musl@4.53.3':
+ resolution: {integrity: sha512-kASyvfBEWYPEwe0Qv4nfu6pNkITLTb32p4yTgzFCocHnJLAHs+9LjUu9ONIhvfT/5lv4YS5muBHyuV84epBo/A==}
+ cpu: [arm64]
+ os: [linux]
+
+ '@rollup/rollup-linux-loong64-gnu@4.53.3':
+ resolution: {integrity: sha512-JiuKcp2teLJwQ7vkJ95EwESWkNRFJD7TQgYmCnrPtlu50b4XvT5MOmurWNrCj3IFdyjBQ5p9vnrX4JM6I8OE7g==}
+ cpu: [loong64]
+ os: [linux]
+
+ '@rollup/rollup-linux-ppc64-gnu@4.53.3':
+ resolution: {integrity: sha512-EoGSa8nd6d3T7zLuqdojxC20oBfNT8nexBbB/rkxgKj5T5vhpAQKKnD+h3UkoMuTyXkP5jTjK/ccNRmQrPNDuw==}
+ cpu: [ppc64]
+ os: [linux]
+
+ '@rollup/rollup-linux-riscv64-gnu@4.53.3':
+ resolution: {integrity: sha512-4s+Wped2IHXHPnAEbIB0YWBv7SDohqxobiiPA1FIWZpX+w9o2i4LezzH/NkFUl8LRci/8udci6cLq+jJQlh+0g==}
+ cpu: [riscv64]
+ os: [linux]
+
+ '@rollup/rollup-linux-riscv64-musl@4.53.3':
+ resolution: {integrity: sha512-68k2g7+0vs2u9CxDt5ktXTngsxOQkSEV/xBbwlqYcUrAVh6P9EgMZvFsnHy4SEiUl46Xf0IObWVbMvPrr2gw8A==}
+ cpu: [riscv64]
+ os: [linux]
+
+ '@rollup/rollup-linux-s390x-gnu@4.53.3':
+ resolution: {integrity: sha512-VYsFMpULAz87ZW6BVYw3I6sWesGpsP9OPcyKe8ofdg9LHxSbRMd7zrVrr5xi/3kMZtpWL/wC+UIJWJYVX5uTKg==}
+ cpu: [s390x]
+ os: [linux]
+
+ '@rollup/rollup-linux-x64-gnu@4.53.3':
+ resolution: {integrity: sha512-3EhFi1FU6YL8HTUJZ51imGJWEX//ajQPfqWLI3BQq4TlvHy4X0MOr5q3D2Zof/ka0d5FNdPwZXm3Yyib/UEd+w==}
+ cpu: [x64]
+ os: [linux]
+
+ '@rollup/rollup-linux-x64-musl@4.53.3':
+ resolution: {integrity: sha512-eoROhjcc6HbZCJr+tvVT8X4fW3/5g/WkGvvmwz/88sDtSJzO7r/blvoBDgISDiCjDRZmHpwud7h+6Q9JxFwq1Q==}
+ cpu: [x64]
+ os: [linux]
+
+ '@rollup/rollup-openharmony-arm64@4.53.3':
+ resolution: {integrity: sha512-OueLAWgrNSPGAdUdIjSWXw+u/02BRTcnfw9PN41D2vq/JSEPnJnVuBgw18VkN8wcd4fjUs+jFHVM4t9+kBSNLw==}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@rollup/rollup-win32-arm64-msvc@4.53.3':
+ resolution: {integrity: sha512-GOFuKpsxR/whszbF/bzydebLiXIHSgsEUp6M0JI8dWvi+fFa1TD6YQa4aSZHtpmh2/uAlj/Dy+nmby3TJ3pkTw==}
+ cpu: [arm64]
+ os: [win32]
+
+ '@rollup/rollup-win32-ia32-msvc@4.53.3':
+ resolution: {integrity: sha512-iah+THLcBJdpfZ1TstDFbKNznlzoxa8fmnFYK4V67HvmuNYkVdAywJSoteUszvBQ9/HqN2+9AZghbajMsFT+oA==}
+ cpu: [ia32]
+ os: [win32]
+
+ '@rollup/rollup-win32-x64-gnu@4.53.3':
+ resolution: {integrity: sha512-J9QDiOIZlZLdcot5NXEepDkstocktoVjkaKUtqzgzpt2yWjGlbYiKyp05rWwk4nypbYUNoFAztEgixoLaSETkg==}
+ cpu: [x64]
+ os: [win32]
+
+ '@rollup/rollup-win32-x64-msvc@4.53.3':
+ resolution: {integrity: sha512-UhTd8u31dXadv0MopwGgNOBpUVROFKWVQgAg5N1ESyCz8AuBcMqm4AuTjrwgQKGDfoFuz02EuMRHQIw/frmYKQ==}
+ cpu: [x64]
+ os: [win32]
+
+ '@types/chai@5.2.3':
+ resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
+
+ '@types/cookie@0.6.0':
+ resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==}
+
+ '@types/deep-eql@4.0.2':
+ resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==}
+
+ '@types/eslint-scope@3.7.7':
+ resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==}
+
+ '@types/eslint@9.6.1':
+ resolution: {integrity: sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==}
+
+ '@types/estree@1.0.8':
+ resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
+
+ '@types/json-schema@7.0.15':
+ resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
+
+ '@types/node@18.19.130':
+ resolution: {integrity: sha512-GRaXQx6jGfL8sKfaIDD6OupbIHBr9jv7Jnaml9tB7l4v068PAOXqfcujMMo5PhbIs6ggR1XODELqahT2R8v0fg==}
+
+ '@types/statuses@2.0.6':
+ resolution: {integrity: sha512-xMAgYwceFhRA2zY+XbEA7mxYbA093wdiW8Vu6gZPGWy9cmOyU9XesH1tNcEWsKFd5Vzrqx5T3D38PWx1FIIXkA==}
+
+ '@types/ws@8.18.1':
+ resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==}
+
+ '@vitest/expect@3.2.4':
+ resolution: {integrity: sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==}
- "@webpack-cli/serve@1.7.0":
- resolution:
- {
- integrity: sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==,
- }
+ '@vitest/mocker@3.2.4':
+ resolution: {integrity: sha512-46ryTE9RZO/rfDd7pEqFl7etuyzekzEhUbTW3BvmeO/BcCMEgq59BKhek3dXDWgAj4oMK6OZi+vRr1wPW6qjEQ==}
peerDependencies:
- webpack-cli: 4.x.x
- webpack-dev-server: "*"
+ msw: ^2.4.9
+ vite: ^5.0.0 || ^6.0.0 || ^7.0.0-0
peerDependenciesMeta:
- webpack-dev-server:
+ msw:
+ optional: true
+ vite:
optional: true
- "@xtuc/ieee754@1.2.0":
- resolution:
- {
- integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==,
- }
-
- "@xtuc/long@4.2.2":
- resolution:
- {
- integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==,
- }
-
- JSONStream@1.3.5:
- resolution:
- {
- integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==,
- }
- hasBin: true
+ '@vitest/pretty-format@3.2.4':
+ resolution: {integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==}
- abab@2.0.6:
- resolution:
- {
- integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==,
- }
- deprecated: Use your platform's native atob() and btoa() methods instead
-
- acorn-globals@7.0.1:
- resolution:
- {
- integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==,
- }
-
- acorn-jsx@5.3.2:
- resolution:
- {
- integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==,
- }
- peerDependencies:
- acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+ '@vitest/runner@3.2.4':
+ resolution: {integrity: sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==}
+
+ '@vitest/snapshot@3.2.4':
+ resolution: {integrity: sha512-dEYtS7qQP2CjU27QBC5oUOxLE/v5eLkGqPE0ZKEIDGMs4vKWe7IjgLOeauHsR0D5YuuycGRO5oSRXnwnmA78fQ==}
+
+ '@vitest/spy@3.2.4':
+ resolution: {integrity: sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==}
+
+ '@vitest/utils@3.2.4':
+ resolution: {integrity: sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==}
+
+ '@webassemblyjs/ast@1.14.1':
+ resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==}
+
+ '@webassemblyjs/floating-point-hex-parser@1.13.2':
+ resolution: {integrity: sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==}
- acorn-walk@8.3.4:
- resolution:
- {
- integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==,
- }
- engines: { node: ">=0.4.0" }
+ '@webassemblyjs/helper-api-error@1.13.2':
+ resolution: {integrity: sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==}
+
+ '@webassemblyjs/helper-buffer@1.14.1':
+ resolution: {integrity: sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==}
+
+ '@webassemblyjs/helper-numbers@1.13.2':
+ resolution: {integrity: sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==}
+
+ '@webassemblyjs/helper-wasm-bytecode@1.13.2':
+ resolution: {integrity: sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==}
+
+ '@webassemblyjs/helper-wasm-section@1.14.1':
+ resolution: {integrity: sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==}
+
+ '@webassemblyjs/ieee754@1.13.2':
+ resolution: {integrity: sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==}
+
+ '@webassemblyjs/leb128@1.13.2':
+ resolution: {integrity: sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==}
+
+ '@webassemblyjs/utf8@1.13.2':
+ resolution: {integrity: sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==}
+
+ '@webassemblyjs/wasm-edit@1.14.1':
+ resolution: {integrity: sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==}
+
+ '@webassemblyjs/wasm-gen@1.14.1':
+ resolution: {integrity: sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==}
+
+ '@webassemblyjs/wasm-opt@1.14.1':
+ resolution: {integrity: sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==}
+
+ '@webassemblyjs/wasm-parser@1.14.1':
+ resolution: {integrity: sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==}
+
+ '@webassemblyjs/wast-printer@1.14.1':
+ resolution: {integrity: sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==}
+
+ '@xtuc/ieee754@1.2.0':
+ resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==}
+
+ '@xtuc/long@4.2.2':
+ resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==}
+
+ acorn-import-phases@1.0.4:
+ resolution: {integrity: sha512-wKmbr/DDiIXzEOiWrTTUcDm24kQ2vGfZQvM2fwg2vXqR5uW6aapr7ObPtj1th32b9u90/Pf4AItvdTh42fBmVQ==}
+ engines: {node: '>=10.13.0'}
+ peerDependencies:
+ acorn: ^8.14.0
acorn@8.15.0:
- resolution:
- {
- integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==,
- }
- engines: { node: ">=0.4.0" }
+ resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==}
+ engines: {node: '>=0.4.0'}
hasBin: true
- agent-base@6.0.2:
- resolution:
- {
- integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==,
- }
- engines: { node: ">= 6.0.0" }
-
ajv-formats@2.1.1:
- resolution:
- {
- integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==,
- }
+ resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==}
peerDependencies:
ajv: ^8.0.0
peerDependenciesMeta:
@@ -1277,7894 +569,1379 @@ packages:
optional: true
ajv-keywords@5.1.0:
- resolution:
- {
- integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==,
- }
+ resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==}
peerDependencies:
ajv: ^8.8.2
- ajv@6.12.6:
- resolution:
- {
- integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==,
- }
-
ajv@8.17.1:
- resolution:
- {
- integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==,
- }
-
- ansi-escapes@4.3.2:
- resolution:
- {
- integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==,
- }
- engines: { node: ">=8" }
+ resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==}
ansi-regex@5.0.1:
- resolution:
- {
- integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==,
- }
- engines: { node: ">=8" }
-
- ansi-regex@6.1.0:
- resolution:
- {
- integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==,
- }
- engines: { node: ">=12" }
-
- ansi-styles@3.2.1:
- resolution:
- {
- integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==,
- }
- engines: { node: ">=4" }
+ resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
+ engines: {node: '>=8'}
ansi-styles@4.3.0:
- resolution:
- {
- integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==,
- }
- engines: { node: ">=8" }
-
- ansi-styles@5.2.0:
- resolution:
- {
- integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==,
- }
- engines: { node: ">=10" }
-
- ansi-styles@6.2.1:
- resolution:
- {
- integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==,
- }
- engines: { node: ">=12" }
-
- anymatch@3.1.3:
- resolution:
- {
- integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==,
- }
- engines: { node: ">= 8" }
-
- arg@4.1.3:
- resolution:
- {
- integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==,
- }
-
- argparse@1.0.10:
- resolution:
- {
- integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==,
- }
-
- argparse@2.0.1:
- resolution:
- {
- integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==,
- }
-
- array-buffer-byte-length@1.0.2:
- resolution:
- {
- integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==,
- }
- engines: { node: ">= 0.4" }
-
- array-ify@1.0.0:
- resolution:
- {
- integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==,
- }
-
- array-union@2.1.0:
- resolution:
- {
- integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==,
- }
- engines: { node: ">=8" }
-
- arraybuffer.prototype.slice@1.0.4:
- resolution:
- {
- integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==,
- }
- engines: { node: ">= 0.4" }
-
- arrify@1.0.1:
- resolution:
- {
- integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==,
- }
- engines: { node: ">=0.10.0" }
-
- async-function@1.0.0:
- resolution:
- {
- integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==,
- }
- engines: { node: ">= 0.4" }
-
- async@3.2.6:
- resolution:
- {
- integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==,
- }
-
- asynckit@0.4.0:
- resolution:
- {
- integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==,
- }
-
- available-typed-arrays@1.0.7:
- resolution:
- {
- integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==,
- }
- engines: { node: ">= 0.4" }
-
- babel-jest@29.7.0:
- resolution:
- {
- integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
- peerDependencies:
- "@babel/core": ^7.8.0
-
- babel-plugin-istanbul@6.1.1:
- resolution:
- {
- integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==,
- }
- engines: { node: ">=8" }
-
- babel-plugin-jest-hoist@29.6.3:
- resolution:
- {
- integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- babel-preset-current-node-syntax@1.1.0:
- resolution:
- {
- integrity: sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==,
- }
- peerDependencies:
- "@babel/core": ^7.0.0
-
- babel-preset-jest@29.6.3:
- resolution:
- {
- integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
- peerDependencies:
- "@babel/core": ^7.0.0
-
- balanced-match@1.0.2:
- resolution:
- {
- integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==,
- }
-
- base64-js@1.5.1:
- resolution:
- {
- integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==,
- }
-
- big.js@5.2.2:
- resolution:
- {
- integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==,
- }
-
- binary-extensions@2.3.0:
- resolution:
- {
- integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==,
- }
- engines: { node: ">=8" }
-
- brace-expansion@1.1.12:
- resolution:
- {
- integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==,
- }
-
- brace-expansion@2.0.2:
- resolution:
- {
- integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==,
- }
+ resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
+ engines: {node: '>=8'}
- braces@3.0.3:
- resolution:
- {
- integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==,
- }
- engines: { node: ">=8" }
-
- browserslist@4.25.0:
- resolution:
- {
- integrity: sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==,
- }
- engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 }
+ assertion-error@2.0.1:
+ resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
+ engines: {node: '>=12'}
+
+ baseline-browser-mapping@2.8.29:
+ resolution: {integrity: sha512-sXdt2elaVnhpDNRDz+1BDx1JQoJRuNk7oVlAlbGiFkLikHCAQiccexF/9e91zVi6RCgqspl04aP+6Cnl9zRLrA==}
hasBin: true
- bs-logger@0.2.6:
- resolution:
- {
- integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==,
- }
- engines: { node: ">= 6" }
+ braces@3.0.3:
+ resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
+ engines: {node: '>=8'}
- bser@2.1.1:
- resolution:
- {
- integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==,
- }
+ browserslist@4.28.0:
+ resolution: {integrity: sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ==}
+ engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+ hasBin: true
buffer-from@1.1.2:
- resolution:
- {
- integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==,
- }
-
- buffer@6.0.3:
- resolution:
- {
- integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==,
- }
-
- call-bind-apply-helpers@1.0.2:
- resolution:
- {
- integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==,
- }
- engines: { node: ">= 0.4" }
-
- call-bind@1.0.8:
- resolution:
- {
- integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==,
- }
- engines: { node: ">= 0.4" }
-
- call-bound@1.0.4:
- resolution:
- {
- integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==,
- }
- engines: { node: ">= 0.4" }
-
- callsites@3.1.0:
- resolution:
- {
- integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==,
- }
- engines: { node: ">=6" }
-
- camelcase-keys@6.2.2:
- resolution:
- {
- integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==,
- }
- engines: { node: ">=8" }
-
- camelcase@5.3.1:
- resolution:
- {
- integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==,
- }
- engines: { node: ">=6" }
-
- camelcase@6.3.0:
- resolution:
- {
- integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==,
- }
- engines: { node: ">=10" }
-
- caniuse-lite@1.0.30001723:
- resolution:
- {
- integrity: sha512-1R/elMjtehrFejxwmexeXAtae5UO9iSyFn6G/I806CYC/BLyyBk1EPhrKBkWhy6wM6Xnm47dSJQec+tLJ39WHw==,
- }
-
- chalk@2.4.2:
- resolution:
- {
- integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==,
- }
- engines: { node: ">=4" }
+ resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
+
+ cac@6.7.14:
+ resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
+ engines: {node: '>=8'}
+
+ caniuse-lite@1.0.30001756:
+ resolution: {integrity: sha512-4HnCNKbMLkLdhJz3TToeVWHSnfJvPaq6vu/eRP0Ahub/07n484XHhBF5AJoSGHdVrS8tKFauUQz8Bp9P7LVx7A==}
+
+ chai@5.3.3:
+ resolution: {integrity: sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==}
+ engines: {node: '>=18'}
chalk@4.1.2:
- resolution:
- {
- integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==,
- }
- engines: { node: ">=10" }
-
- char-regex@1.0.2:
- resolution:
- {
- integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==,
- }
- engines: { node: ">=10" }
-
- chokidar@3.6.0:
- resolution:
- {
- integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==,
- }
- engines: { node: ">= 8.10.0" }
+ resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
+ engines: {node: '>=10'}
+
+ check-error@2.1.1:
+ resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==}
+ engines: {node: '>= 16'}
chrome-trace-event@1.0.4:
- resolution:
- {
- integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==,
- }
- engines: { node: ">=6.0" }
-
- ci-info@2.0.0:
- resolution:
- {
- integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==,
- }
-
- ci-info@3.9.0:
- resolution:
- {
- integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==,
- }
- engines: { node: ">=8" }
-
- cjs-module-lexer@1.4.3:
- resolution:
- {
- integrity: sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==,
- }
-
- cliui@7.0.4:
- resolution:
- {
- integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==,
- }
+ resolution: {integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==}
+ engines: {node: '>=6.0'}
+
+ cli-width@4.1.0:
+ resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==}
+ engines: {node: '>= 12'}
cliui@8.0.1:
- resolution:
- {
- integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==,
- }
- engines: { node: ">=12" }
-
- clone-deep@4.0.1:
- resolution:
- {
- integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==,
- }
- engines: { node: ">=6" }
-
- co@4.6.0:
- resolution:
- {
- integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==,
- }
- engines: { iojs: ">= 1.0.0", node: ">= 0.12.0" }
-
- collect-v8-coverage@1.0.2:
- resolution:
- {
- integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==,
- }
-
- color-convert@1.9.3:
- resolution:
- {
- integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==,
- }
+ resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
+ engines: {node: '>=12'}
color-convert@2.0.1:
- resolution:
- {
- integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==,
- }
- engines: { node: ">=7.0.0" }
-
- color-name@1.1.3:
- resolution:
- {
- integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==,
- }
+ resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
+ engines: {node: '>=7.0.0'}
color-name@1.1.4:
- resolution:
- {
- integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==,
- }
-
- colorette@2.0.20:
- resolution:
- {
- integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==,
- }
-
- combined-stream@1.0.8:
- resolution:
- {
- integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==,
- }
- engines: { node: ">= 0.8" }
-
- commander@12.1.0:
- resolution:
- {
- integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==,
- }
- engines: { node: ">=18" }
+ resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
commander@2.20.3:
- resolution:
- {
- integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==,
- }
-
- commander@7.2.0:
- resolution:
- {
- integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==,
- }
- engines: { node: ">= 10" }
-
- compare-func@2.0.0:
- resolution:
- {
- integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==,
- }
-
- compare-versions@3.6.0:
- resolution:
- {
- integrity: sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==,
- }
-
- concat-map@0.0.1:
- resolution:
- {
- integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==,
- }
-
- consola@2.15.3:
- resolution:
- {
- integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==,
- }
-
- conventional-changelog-angular@6.0.0:
- resolution:
- {
- integrity: sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==,
- }
- engines: { node: ">=14" }
-
- conventional-changelog-conventionalcommits@6.1.0:
- resolution:
- {
- integrity: sha512-3cS3GEtR78zTfMzk0AizXKKIdN4OvSh7ibNz6/DPbhWWQu7LqE/8+/GqSodV+sywUR2gpJAdP/1JFf4XtN7Zpw==,
- }
- engines: { node: ">=14" }
-
- conventional-commits-parser@4.0.0:
- resolution:
- {
- integrity: sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==,
- }
- engines: { node: ">=14" }
- hasBin: true
-
- convert-source-map@2.0.0:
- resolution:
- {
- integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==,
- }
-
- core-util-is@1.0.3:
- resolution:
- {
- integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==,
- }
-
- cosmiconfig-typescript-loader@4.4.0:
- resolution:
- {
- integrity: sha512-BabizFdC3wBHhbI4kJh0VkQP9GkBfoHPydD0COMce1nJ1kJAB3F2TmJ/I7diULBKtmEWSwEbuN/KDtgnmUUVmw==,
- }
- engines: { node: ">=v14.21.3" }
- peerDependencies:
- "@types/node": "*"
- cosmiconfig: ">=7"
- ts-node: ">=10"
- typescript: ">=4"
-
- cosmiconfig@7.1.0:
- resolution:
- {
- integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==,
- }
- engines: { node: ">=10" }
-
- cosmiconfig@8.3.6:
- resolution:
- {
- integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==,
- }
- engines: { node: ">=14" }
- peerDependencies:
- typescript: ">=4.9.5"
- peerDependenciesMeta:
- typescript:
- optional: true
-
- create-jest@29.7.0:
- resolution:
- {
- integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
- hasBin: true
+ resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
- create-require@1.1.1:
- resolution:
- {
- integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==,
- }
-
- cross-env@7.0.3:
- resolution:
- {
- integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==,
- }
- engines: { node: ">=10.14", npm: ">=6", yarn: ">=1" }
- hasBin: true
+ cookie@0.7.2:
+ resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==}
+ engines: {node: '>= 0.6'}
- cross-fetch@3.2.0:
- resolution:
- {
- integrity: sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==,
- }
-
- cross-spawn@6.0.6:
- resolution:
- {
- integrity: sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==,
- }
- engines: { node: ">=4.8" }
-
- cross-spawn@7.0.6:
- resolution:
- {
- integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==,
- }
- engines: { node: ">= 8" }
-
- cssom@0.3.8:
- resolution:
- {
- integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==,
- }
-
- cssom@0.5.0:
- resolution:
- {
- integrity: sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==,
- }
-
- cssstyle@2.3.0:
- resolution:
- {
- integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==,
- }
- engines: { node: ">=8" }
-
- dargs@7.0.0:
- resolution:
- {
- integrity: sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==,
- }
- engines: { node: ">=8" }
-
- data-urls@3.0.2:
- resolution:
- {
- integrity: sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==,
- }
- engines: { node: ">=12" }
-
- data-view-buffer@1.0.2:
- resolution:
- {
- integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==,
- }
- engines: { node: ">= 0.4" }
-
- data-view-byte-length@1.0.2:
- resolution:
- {
- integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==,
- }
- engines: { node: ">= 0.4" }
-
- data-view-byte-offset@1.0.1:
- resolution:
- {
- integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==,
- }
- engines: { node: ">= 0.4" }
-
- dayjs@1.11.13:
- resolution:
- {
- integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==,
- }
-
- debug@4.4.1:
- resolution:
- {
- integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==,
- }
- engines: { node: ">=6.0" }
+ debug@4.4.3:
+ resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==}
+ engines: {node: '>=6.0'}
peerDependencies:
- supports-color: "*"
+ supports-color: '*'
peerDependenciesMeta:
supports-color:
optional: true
- decamelize-keys@1.1.1:
- resolution:
- {
- integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==,
- }
- engines: { node: ">=0.10.0" }
-
- decamelize@1.2.0:
- resolution:
- {
- integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==,
- }
- engines: { node: ">=0.10.0" }
-
- decimal.js@10.5.0:
- resolution:
- {
- integrity: sha512-8vDa8Qxvr/+d94hSh5P3IJwI5t8/c0KsMp+g8bNw9cY2icONa5aPfvKeieW1WlG0WQYwwhJ7mjui2xtiePQSXw==,
- }
-
- dedent@1.6.0:
- resolution:
- {
- integrity: sha512-F1Z+5UCFpmQUzJa11agbyPVMbpgT/qA3/SKyJ1jyBgm7dUcUEa8v9JwDkerSQXfakBwFljIxhOJqGkjUwZ9FSA==,
- }
- peerDependencies:
- babel-plugin-macros: ^3.1.0
- peerDependenciesMeta:
- babel-plugin-macros:
- optional: true
-
- deep-extend@0.6.0:
- resolution:
- {
- integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==,
- }
- engines: { node: ">=4.0.0" }
-
- deep-is@0.1.4:
- resolution:
- {
- integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==,
- }
-
- deepmerge@4.3.1:
- resolution:
- {
- integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==,
- }
- engines: { node: ">=0.10.0" }
-
- define-data-property@1.1.4:
- resolution:
- {
- integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==,
- }
- engines: { node: ">= 0.4" }
-
- define-properties@1.2.1:
- resolution:
- {
- integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==,
- }
- engines: { node: ">= 0.4" }
-
- delayed-stream@1.0.0:
- resolution:
- {
- integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==,
- }
- engines: { node: ">=0.4.0" }
-
- detect-newline@3.1.0:
- resolution:
- {
- integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==,
- }
- engines: { node: ">=8" }
-
- diff-sequences@29.6.3:
- resolution:
- {
- integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- diff@4.0.2:
- resolution:
- {
- integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==,
- }
- engines: { node: ">=0.3.1" }
-
- dir-glob@3.0.1:
- resolution:
- {
- integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==,
- }
- engines: { node: ">=8" }
-
- doctrine@3.0.0:
- resolution:
- {
- integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==,
- }
- engines: { node: ">=6.0.0" }
-
- domexception@4.0.0:
- resolution:
- {
- integrity: sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==,
- }
- engines: { node: ">=12" }
- deprecated: Use your platform's native DOMException instead
-
- dot-prop@5.3.0:
- resolution:
- {
- integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==,
- }
- engines: { node: ">=8" }
-
- dotenv@16.5.0:
- resolution:
- {
- integrity: sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg==,
- }
- engines: { node: ">=12" }
-
- dunder-proto@1.0.1:
- resolution:
- {
- integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==,
- }
- engines: { node: ">= 0.4" }
-
- eastasianwidth@0.2.0:
- resolution:
- {
- integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==,
- }
-
- ejs@3.1.10:
- resolution:
- {
- integrity: sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==,
- }
- engines: { node: ">=0.10.0" }
- hasBin: true
-
- electron-to-chromium@1.5.167:
- resolution:
- {
- integrity: sha512-LxcRvnYO5ez2bMOFpbuuVuAI5QNeY1ncVytE/KXaL6ZNfzX1yPlAO0nSOyIHx2fVAuUprMqPs/TdVhUFZy7SIQ==,
- }
+ deep-eql@5.0.2:
+ resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==}
+ engines: {node: '>=6'}
- emittery@0.13.1:
- resolution:
- {
- integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==,
- }
- engines: { node: ">=12" }
+ electron-to-chromium@1.5.256:
+ resolution: {integrity: sha512-uqYq1IQhpXXLX+HgiXdyOZml7spy4xfy42yPxcCCRjswp0fYM2X+JwCON07lqnpLEGVCj739B7Yr+FngmHBMEQ==}
emoji-regex@8.0.0:
- resolution:
- {
- integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==,
- }
-
- emoji-regex@9.2.2:
- resolution:
- {
- integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==,
- }
-
- emojis-list@3.0.0:
- resolution:
- {
- integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==,
- }
- engines: { node: ">= 4" }
-
- end-of-stream@1.4.4:
- resolution:
- {
- integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==,
- }
-
- enhanced-resolve@4.5.0:
- resolution:
- {
- integrity: sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==,
- }
- engines: { node: ">=6.9.0" }
-
- enhanced-resolve@5.18.1:
- resolution:
- {
- integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==,
- }
- engines: { node: ">=10.13.0" }
-
- entities@4.5.0:
- resolution:
- {
- integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==,
- }
- engines: { node: ">=0.12" }
-
- entities@6.0.1:
- resolution:
- {
- integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==,
- }
- engines: { node: ">=0.12" }
-
- envinfo@7.14.0:
- resolution:
- {
- integrity: sha512-CO40UI41xDQzhLB1hWyqUKgFhs250pNcGbyGKe1l/e4FSaI/+YE4IMG76GDt0In67WLPACIITC+sOi08x4wIvg==,
- }
- engines: { node: ">=4" }
- hasBin: true
-
- errno@0.1.8:
- resolution:
- {
- integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==,
- }
- hasBin: true
+ resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
- error-ex@1.3.2:
- resolution:
- {
- integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==,
- }
-
- es-abstract@1.24.0:
- resolution:
- {
- integrity: sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==,
- }
- engines: { node: ">= 0.4" }
-
- es-define-property@1.0.1:
- resolution:
- {
- integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==,
- }
- engines: { node: ">= 0.4" }
-
- es-errors@1.3.0:
- resolution:
- {
- integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==,
- }
- engines: { node: ">= 0.4" }
+ enhanced-resolve@5.18.3:
+ resolution: {integrity: sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==}
+ engines: {node: '>=10.13.0'}
es-module-lexer@1.7.0:
- resolution:
- {
- integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==,
- }
-
- es-object-atoms@1.1.1:
- resolution:
- {
- integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==,
- }
- engines: { node: ">= 0.4" }
-
- es-set-tostringtag@2.1.0:
- resolution:
- {
- integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==,
- }
- engines: { node: ">= 0.4" }
-
- es-to-primitive@1.3.0:
- resolution:
- {
- integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==,
- }
- engines: { node: ">= 0.4" }
-
- escalade@3.2.0:
- resolution:
- {
- integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==,
- }
- engines: { node: ">=6" }
-
- escape-string-regexp@1.0.5:
- resolution:
- {
- integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==,
- }
- engines: { node: ">=0.8.0" }
-
- escape-string-regexp@2.0.0:
- resolution:
- {
- integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==,
- }
- engines: { node: ">=8" }
-
- escape-string-regexp@4.0.0:
- resolution:
- {
- integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==,
- }
- engines: { node: ">=10" }
-
- escodegen@2.1.0:
- resolution:
- {
- integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==,
- }
- engines: { node: ">=6.0" }
- hasBin: true
+ resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==}
- eslint-scope@5.1.1:
- resolution:
- {
- integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==,
- }
- engines: { node: ">=8.0.0" }
-
- eslint-scope@7.2.2:
- resolution:
- {
- integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==,
- }
- engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
-
- eslint-visitor-keys@3.4.3:
- resolution:
- {
- integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==,
- }
- engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
-
- eslint-visitor-keys@4.2.1:
- resolution:
- {
- integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==,
- }
- engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
-
- eslint@8.57.1:
- resolution:
- {
- integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==,
- }
- engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
- deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options.
+ esbuild@0.25.12:
+ resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==}
+ engines: {node: '>=18'}
hasBin: true
- espree@9.6.1:
- resolution:
- {
- integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==,
- }
- engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
-
- esprima@4.0.1:
- resolution:
- {
- integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==,
- }
- engines: { node: ">=4" }
- hasBin: true
+ escalade@3.2.0:
+ resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
+ engines: {node: '>=6'}
- esquery@1.6.0:
- resolution:
- {
- integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==,
- }
- engines: { node: ">=0.10" }
+ eslint-scope@5.1.1:
+ resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
+ engines: {node: '>=8.0.0'}
esrecurse@4.3.0:
- resolution:
- {
- integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==,
- }
- engines: { node: ">=4.0" }
+ resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
+ engines: {node: '>=4.0'}
estraverse@4.3.0:
- resolution:
- {
- integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==,
- }
- engines: { node: ">=4.0" }
+ resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
+ engines: {node: '>=4.0'}
estraverse@5.3.0:
- resolution:
- {
- integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==,
- }
- engines: { node: ">=4.0" }
-
- esutils@2.0.3:
- resolution:
- {
- integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==,
- }
- engines: { node: ">=0.10.0" }
+ resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
+ engines: {node: '>=4.0'}
+
+ estree-walker@3.0.3:
+ resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
events@3.3.0:
- resolution:
- {
- integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==,
- }
- engines: { node: ">=0.8.x" }
-
- execa@4.1.0:
- resolution:
- {
- integrity: sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==,
- }
- engines: { node: ">=10" }
-
- execa@5.1.1:
- resolution:
- {
- integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==,
- }
- engines: { node: ">=10" }
-
- exit@0.1.2:
- resolution:
- {
- integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==,
- }
- engines: { node: ">= 0.8.0" }
-
- expect@29.7.0:
- resolution:
- {
- integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
+ resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
+ engines: {node: '>=0.8.x'}
+
+ expect-type@1.2.2:
+ resolution: {integrity: sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA==}
+ engines: {node: '>=12.0.0'}
fast-deep-equal@3.1.3:
- resolution:
- {
- integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==,
- }
-
- fast-glob@3.3.3:
- resolution:
- {
- integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==,
- }
- engines: { node: ">=8.6.0" }
-
- fast-json-stable-stringify@2.1.0:
- resolution:
- {
- integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==,
- }
-
- fast-levenshtein@2.0.6:
- resolution:
- {
- integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==,
- }
-
- fast-uri@3.0.6:
- resolution:
- {
- integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==,
- }
-
- fastest-levenshtein@1.0.16:
- resolution:
- {
- integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==,
- }
- engines: { node: ">= 4.9.1" }
-
- fastq@1.19.1:
- resolution:
- {
- integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==,
- }
-
- fb-watchman@2.0.2:
- resolution:
- {
- integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==,
- }
-
- file-entry-cache@6.0.1:
- resolution:
- {
- integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==,
- }
- engines: { node: ^10.12.0 || >=12.0.0 }
-
- filelist@1.0.4:
- resolution:
- {
- integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==,
- }
+ resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+
+ fast-uri@3.1.0:
+ resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==}
+
+ fdir@6.5.0:
+ resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
+ engines: {node: '>=12.0.0'}
+ peerDependencies:
+ picomatch: ^3 || ^4
+ peerDependenciesMeta:
+ picomatch:
+ optional: true
fill-range@7.1.1:
- resolution:
- {
- integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==,
- }
- engines: { node: ">=8" }
-
- find-up@4.1.0:
- resolution:
- {
- integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==,
- }
- engines: { node: ">=8" }
-
- find-up@5.0.0:
- resolution:
- {
- integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==,
- }
- engines: { node: ">=10" }
-
- find-versions@4.0.0:
- resolution:
- {
- integrity: sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==,
- }
- engines: { node: ">=10" }
-
- flat-cache@3.2.0:
- resolution:
- {
- integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==,
- }
- engines: { node: ^10.12.0 || >=12.0.0 }
-
- flat@5.0.2:
- resolution:
- {
- integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==,
- }
- hasBin: true
+ resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
+ engines: {node: '>=8'}
- flatted@3.3.3:
- resolution:
- {
- integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==,
- }
-
- for-each@0.3.5:
- resolution:
- {
- integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==,
- }
- engines: { node: ">= 0.4" }
-
- foreground-child@3.3.1:
- resolution:
- {
- integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==,
- }
- engines: { node: ">=14" }
-
- form-data@4.0.3:
- resolution:
- {
- integrity: sha512-qsITQPfmvMOSAdeyZ+12I1c+CKSstAFAwu+97zrnWAbIr5u8wfsExUzCesVLC8NgHuRUqNN4Zy6UPWUTRGslcA==,
- }
- engines: { node: ">= 6" }
-
- fs-extra@11.3.0:
- resolution:
- {
- integrity: sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==,
- }
- engines: { node: ">=14.14" }
-
- fs.realpath@1.0.0:
- resolution:
- {
- integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==,
- }
+ fsevents@2.3.2:
+ resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
fsevents@2.3.3:
- resolution:
- {
- integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==,
- }
- engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 }
+ resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
os: [darwin]
- function-bind@1.1.2:
- resolution:
- {
- integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==,
- }
-
- function.prototype.name@1.1.8:
- resolution:
- {
- integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==,
- }
- engines: { node: ">= 0.4" }
-
- functions-have-names@1.2.3:
- resolution:
- {
- integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==,
- }
-
- gensync@1.0.0-beta.2:
- resolution:
- {
- integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==,
- }
- engines: { node: ">=6.9.0" }
-
get-caller-file@2.0.5:
- resolution:
- {
- integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==,
- }
- engines: { node: 6.* || 8.* || >= 10.* }
-
- get-intrinsic@1.3.0:
- resolution:
- {
- integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==,
- }
- engines: { node: ">= 0.4" }
-
- get-package-type@0.1.0:
- resolution:
- {
- integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==,
- }
- engines: { node: ">=8.0.0" }
-
- get-proto@1.0.1:
- resolution:
- {
- integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==,
- }
- engines: { node: ">= 0.4" }
-
- get-stdin@9.0.0:
- resolution:
- {
- integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==,
- }
- engines: { node: ">=12" }
-
- get-stream@5.2.0:
- resolution:
- {
- integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==,
- }
- engines: { node: ">=8" }
-
- get-stream@6.0.1:
- resolution:
- {
- integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==,
- }
- engines: { node: ">=10" }
-
- get-symbol-description@1.1.0:
- resolution:
- {
- integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==,
- }
- engines: { node: ">= 0.4" }
-
- git-raw-commits@2.0.11:
- resolution:
- {
- integrity: sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==,
- }
- engines: { node: ">=10" }
- hasBin: true
-
- glob-parent@5.1.2:
- resolution:
- {
- integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==,
- }
- engines: { node: ">= 6" }
-
- glob-parent@6.0.2:
- resolution:
- {
- integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==,
- }
- engines: { node: ">=10.13.0" }
+ resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
+ engines: {node: 6.* || 8.* || >= 10.*}
glob-to-regexp@0.4.1:
- resolution:
- {
- integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==,
- }
-
- glob@11.0.3:
- resolution:
- {
- integrity: sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==,
- }
- engines: { node: 20 || >=22 }
- hasBin: true
-
- glob@7.2.3:
- resolution:
- {
- integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==,
- }
- deprecated: Glob versions prior to v9 are no longer supported
-
- glob@8.1.0:
- resolution:
- {
- integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==,
- }
- engines: { node: ">=12" }
- deprecated: Glob versions prior to v9 are no longer supported
-
- global-dirs@0.1.1:
- resolution:
- {
- integrity: sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==,
- }
- engines: { node: ">=4" }
-
- globals@11.12.0:
- resolution:
- {
- integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==,
- }
- engines: { node: ">=4" }
-
- globals@13.24.0:
- resolution:
- {
- integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==,
- }
- engines: { node: ">=8" }
-
- globalthis@1.0.4:
- resolution:
- {
- integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==,
- }
- engines: { node: ">= 0.4" }
-
- globby@11.1.0:
- resolution:
- {
- integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==,
- }
- engines: { node: ">=10" }
-
- gopd@1.2.0:
- resolution:
- {
- integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==,
- }
- engines: { node: ">= 0.4" }
+ resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
graceful-fs@4.2.11:
- resolution:
- {
- integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==,
- }
-
- graphemer@1.4.0:
- resolution:
- {
- integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==,
- }
-
- hard-rejection@2.1.0:
- resolution:
- {
- integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==,
- }
- engines: { node: ">=6" }
-
- has-bigints@1.1.0:
- resolution:
- {
- integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==,
- }
- engines: { node: ">= 0.4" }
-
- has-flag@3.0.0:
- resolution:
- {
- integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==,
- }
- engines: { node: ">=4" }
+ resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
- has-flag@4.0.0:
- resolution:
- {
- integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==,
- }
- engines: { node: ">=8" }
-
- has-property-descriptors@1.0.2:
- resolution:
- {
- integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==,
- }
-
- has-proto@1.2.0:
- resolution:
- {
- integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==,
- }
- engines: { node: ">= 0.4" }
-
- has-symbols@1.1.0:
- resolution:
- {
- integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==,
- }
- engines: { node: ">= 0.4" }
-
- has-tostringtag@1.0.2:
- resolution:
- {
- integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==,
- }
- engines: { node: ">= 0.4" }
-
- hasown@2.0.2:
- resolution:
- {
- integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==,
- }
- engines: { node: ">= 0.4" }
-
- hosted-git-info@2.8.9:
- resolution:
- {
- integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==,
- }
-
- hosted-git-info@4.1.0:
- resolution:
- {
- integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==,
- }
- engines: { node: ">=10" }
-
- html-encoding-sniffer@3.0.0:
- resolution:
- {
- integrity: sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==,
- }
- engines: { node: ">=12" }
-
- html-escaper@2.0.2:
- resolution:
- {
- integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==,
- }
-
- http-proxy-agent@5.0.0:
- resolution:
- {
- integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==,
- }
- engines: { node: ">= 6" }
-
- https-proxy-agent@5.0.1:
- resolution:
- {
- integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==,
- }
- engines: { node: ">= 6" }
-
- human-signals@1.1.1:
- resolution:
- {
- integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==,
- }
- engines: { node: ">=8.12.0" }
-
- human-signals@2.1.0:
- resolution:
- {
- integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==,
- }
- engines: { node: ">=10.17.0" }
-
- husky@4.3.8:
- resolution:
- {
- integrity: sha512-LCqqsB0PzJQ/AlCgfrfzRe3e3+NvmefAdKQhRYpxS4u6clblBoDdzzvHi8fmxKRzvMxPY/1WZWzomPZww0Anow==,
- }
- engines: { node: ">=10" }
- hasBin: true
+ graphql@16.12.0:
+ resolution: {integrity: sha512-DKKrynuQRne0PNpEbzuEdHlYOMksHSUI8Zc9Unei5gTsMNA2/vMpoMz/yKba50pejK56qj98qM0SjYxAKi13gQ==}
+ engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0}
- iconv-lite@0.6.3:
- resolution:
- {
- integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==,
- }
- engines: { node: ">=0.10.0" }
-
- ieee754@1.2.1:
- resolution:
- {
- integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==,
- }
-
- ignore-by-default@1.0.1:
- resolution:
- {
- integrity: sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==,
- }
-
- ignore@5.3.2:
- resolution:
- {
- integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==,
- }
- engines: { node: ">= 4" }
-
- ignore@6.0.2:
- resolution:
- {
- integrity: sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A==,
- }
- engines: { node: ">= 4" }
-
- ignore@7.0.5:
- resolution:
- {
- integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==,
- }
- engines: { node: ">= 4" }
-
- import-fresh@3.3.1:
- resolution:
- {
- integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==,
- }
- engines: { node: ">=6" }
-
- import-local@3.2.0:
- resolution:
- {
- integrity: sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==,
- }
- engines: { node: ">=8" }
- hasBin: true
+ has-flag@4.0.0:
+ resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
+ engines: {node: '>=8'}
- imurmurhash@0.1.4:
- resolution:
- {
- integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==,
- }
- engines: { node: ">=0.8.19" }
-
- indent-string@4.0.0:
- resolution:
- {
- integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==,
- }
- engines: { node: ">=8" }
-
- inflight@1.0.6:
- resolution:
- {
- integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==,
- }
- deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
-
- inherits@2.0.4:
- resolution:
- {
- integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==,
- }
-
- ini@1.3.8:
- resolution:
- {
- integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==,
- }
-
- ini@2.0.0:
- resolution:
- {
- integrity: sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==,
- }
- engines: { node: ">=10" }
-
- ini@4.1.3:
- resolution:
- {
- integrity: sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==,
- }
- engines: { node: ^14.17.0 || ^16.13.0 || >=18.0.0 }
-
- internal-slot@1.1.0:
- resolution:
- {
- integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==,
- }
- engines: { node: ">= 0.4" }
-
- interpret@2.2.0:
- resolution:
- {
- integrity: sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==,
- }
- engines: { node: ">= 0.10" }
-
- is-arguments@1.2.0:
- resolution:
- {
- integrity: sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==,
- }
- engines: { node: ">= 0.4" }
-
- is-array-buffer@3.0.5:
- resolution:
- {
- integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==,
- }
- engines: { node: ">= 0.4" }
-
- is-arrayish@0.2.1:
- resolution:
- {
- integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==,
- }
-
- is-async-function@2.1.1:
- resolution:
- {
- integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==,
- }
- engines: { node: ">= 0.4" }
-
- is-bigint@1.1.0:
- resolution:
- {
- integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==,
- }
- engines: { node: ">= 0.4" }
-
- is-binary-path@2.1.0:
- resolution:
- {
- integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==,
- }
- engines: { node: ">=8" }
-
- is-boolean-object@1.2.2:
- resolution:
- {
- integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==,
- }
- engines: { node: ">= 0.4" }
-
- is-callable@1.2.7:
- resolution:
- {
- integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==,
- }
- engines: { node: ">= 0.4" }
-
- is-core-module@2.16.1:
- resolution:
- {
- integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==,
- }
- engines: { node: ">= 0.4" }
-
- is-data-view@1.0.2:
- resolution:
- {
- integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==,
- }
- engines: { node: ">= 0.4" }
-
- is-date-object@1.1.0:
- resolution:
- {
- integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==,
- }
- engines: { node: ">= 0.4" }
-
- is-extglob@2.1.1:
- resolution:
- {
- integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==,
- }
- engines: { node: ">=0.10.0" }
-
- is-finalizationregistry@1.1.1:
- resolution:
- {
- integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==,
- }
- engines: { node: ">= 0.4" }
+ headers-polyfill@4.0.3:
+ resolution: {integrity: sha512-IScLbePpkvO846sIwOtOTDjutRMWdXdJmXdMvk6gCBHxFO8d+QKOQedyZSxFTTFYRSmlgSTDtXqqq4pcenBXLQ==}
is-fullwidth-code-point@3.0.0:
- resolution:
- {
- integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==,
- }
- engines: { node: ">=8" }
-
- is-generator-fn@2.1.0:
- resolution:
- {
- integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==,
- }
- engines: { node: ">=6" }
-
- is-generator-function@1.1.0:
- resolution:
- {
- integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==,
- }
- engines: { node: ">= 0.4" }
-
- is-glob@4.0.3:
- resolution:
- {
- integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==,
- }
- engines: { node: ">=0.10.0" }
-
- is-map@2.0.3:
- resolution:
- {
- integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==,
- }
- engines: { node: ">= 0.4" }
-
- is-negative-zero@2.0.3:
- resolution:
- {
- integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==,
- }
- engines: { node: ">= 0.4" }
-
- is-number-object@1.1.1:
- resolution:
- {
- integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==,
- }
- engines: { node: ">= 0.4" }
-
- is-number@7.0.0:
- resolution:
- {
- integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==,
- }
- engines: { node: ">=0.12.0" }
-
- is-obj@2.0.0:
- resolution:
- {
- integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==,
- }
- engines: { node: ">=8" }
-
- is-path-inside@3.0.3:
- resolution:
- {
- integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==,
- }
- engines: { node: ">=8" }
-
- is-plain-obj@1.1.0:
- resolution:
- {
- integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==,
- }
- engines: { node: ">=0.10.0" }
-
- is-plain-object@2.0.4:
- resolution:
- {
- integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==,
- }
- engines: { node: ">=0.10.0" }
-
- is-potential-custom-element-name@1.0.1:
- resolution:
- {
- integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==,
- }
-
- is-regex@1.2.1:
- resolution:
- {
- integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==,
- }
- engines: { node: ">= 0.4" }
-
- is-set@2.0.3:
- resolution:
- {
- integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==,
- }
- engines: { node: ">= 0.4" }
-
- is-shared-array-buffer@1.0.4:
- resolution:
- {
- integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==,
- }
- engines: { node: ">= 0.4" }
-
- is-stream@2.0.1:
- resolution:
- {
- integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==,
- }
- engines: { node: ">=8" }
-
- is-string@1.1.1:
- resolution:
- {
- integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==,
- }
- engines: { node: ">= 0.4" }
-
- is-symbol@1.1.1:
- resolution:
- {
- integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==,
- }
- engines: { node: ">= 0.4" }
-
- is-text-path@1.0.1:
- resolution:
- {
- integrity: sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==,
- }
- engines: { node: ">=0.10.0" }
-
- is-typed-array@1.1.15:
- resolution:
- {
- integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==,
- }
- engines: { node: ">= 0.4" }
-
- is-weakmap@2.0.2:
- resolution:
- {
- integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==,
- }
- engines: { node: ">= 0.4" }
-
- is-weakref@1.1.1:
- resolution:
- {
- integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==,
- }
- engines: { node: ">= 0.4" }
-
- is-weakset@2.0.4:
- resolution:
- {
- integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==,
- }
- engines: { node: ">= 0.4" }
-
- isarray@1.0.0:
- resolution:
- {
- integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==,
- }
-
- isarray@2.0.5:
- resolution:
- {
- integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==,
- }
-
- isexe@2.0.0:
- resolution:
- {
- integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==,
- }
-
- isobject@3.0.1:
- resolution:
- {
- integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==,
- }
- engines: { node: ">=0.10.0" }
-
- istanbul-lib-coverage@3.2.2:
- resolution:
- {
- integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==,
- }
- engines: { node: ">=8" }
-
- istanbul-lib-instrument@5.2.1:
- resolution:
- {
- integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==,
- }
- engines: { node: ">=8" }
-
- istanbul-lib-instrument@6.0.3:
- resolution:
- {
- integrity: sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==,
- }
- engines: { node: ">=10" }
-
- istanbul-lib-report@3.0.1:
- resolution:
- {
- integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==,
- }
- engines: { node: ">=10" }
-
- istanbul-lib-source-maps@4.0.1:
- resolution:
- {
- integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==,
- }
- engines: { node: ">=10" }
-
- istanbul-reports@3.1.7:
- resolution:
- {
- integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==,
- }
- engines: { node: ">=8" }
-
- jackspeak@4.1.1:
- resolution:
- {
- integrity: sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==,
- }
- engines: { node: 20 || >=22 }
-
- jake@10.9.2:
- resolution:
- {
- integrity: sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==,
- }
- engines: { node: ">=10" }
- hasBin: true
-
- jest-changed-files@29.7.0:
- resolution:
- {
- integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-circus@29.7.0:
- resolution:
- {
- integrity: sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-cli@29.7.0:
- resolution:
- {
- integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
- hasBin: true
- peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
- peerDependenciesMeta:
- node-notifier:
- optional: true
-
- jest-config@29.7.0:
- resolution:
- {
- integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
- peerDependencies:
- "@types/node": "*"
- ts-node: ">=9.0.0"
- peerDependenciesMeta:
- "@types/node":
- optional: true
- ts-node:
- optional: true
+ resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
+ engines: {node: '>=8'}
- jest-diff@29.7.0:
- resolution:
- {
- integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-docblock@29.7.0:
- resolution:
- {
- integrity: sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-each@29.7.0:
- resolution:
- {
- integrity: sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-environment-jsdom@29.7.0:
- resolution:
- {
- integrity: sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
- peerDependencies:
- canvas: ^2.5.0
- peerDependenciesMeta:
- canvas:
- optional: true
-
- jest-environment-node@29.7.0:
- resolution:
- {
- integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-get-type@29.6.3:
- resolution:
- {
- integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-haste-map@29.7.0:
- resolution:
- {
- integrity: sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-leak-detector@29.7.0:
- resolution:
- {
- integrity: sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-matcher-utils@29.7.0:
- resolution:
- {
- integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-message-util@29.7.0:
- resolution:
- {
- integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-mock@29.7.0:
- resolution:
- {
- integrity: sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-pnp-resolver@1.2.3:
- resolution:
- {
- integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==,
- }
- engines: { node: ">=6" }
- peerDependencies:
- jest-resolve: "*"
- peerDependenciesMeta:
- jest-resolve:
- optional: true
+ is-node-process@1.2.0:
+ resolution: {integrity: sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==}
- jest-regex-util@29.6.3:
- resolution:
- {
- integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-resolve-dependencies@29.7.0:
- resolution:
- {
- integrity: sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-resolve@29.7.0:
- resolution:
- {
- integrity: sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-runner@29.7.0:
- resolution:
- {
- integrity: sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-runtime@29.7.0:
- resolution:
- {
- integrity: sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-snapshot@29.7.0:
- resolution:
- {
- integrity: sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-util@29.7.0:
- resolution:
- {
- integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-validate@29.7.0:
- resolution:
- {
- integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest-watcher@29.7.0:
- resolution:
- {
- integrity: sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
+ is-number@7.0.0:
+ resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
+ engines: {node: '>=0.12.0'}
jest-worker@27.5.1:
- resolution:
- {
- integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==,
- }
- engines: { node: ">= 10.13.0" }
-
- jest-worker@29.7.0:
- resolution:
- {
- integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- jest@29.7.0:
- resolution:
- {
- integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
- hasBin: true
- peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
- peerDependenciesMeta:
- node-notifier:
- optional: true
-
- js-tokens@4.0.0:
- resolution:
- {
- integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==,
- }
-
- js-yaml@3.14.1:
- resolution:
- {
- integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==,
- }
- hasBin: true
-
- js-yaml@4.1.0:
- resolution:
- {
- integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==,
- }
- hasBin: true
+ resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
+ engines: {node: '>= 10.13.0'}
- jsdom@20.0.3:
- resolution:
- {
- integrity: sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==,
- }
- engines: { node: ">=14" }
- peerDependencies:
- canvas: ^2.5.0
- peerDependenciesMeta:
- canvas:
- optional: true
-
- jsesc@3.1.0:
- resolution:
- {
- integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==,
- }
- engines: { node: ">=6" }
- hasBin: true
-
- json-buffer@3.0.1:
- resolution:
- {
- integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==,
- }
-
- json-parse-better-errors@1.0.2:
- resolution:
- {
- integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==,
- }
+ js-tokens@9.0.1:
+ resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==}
json-parse-even-better-errors@2.3.1:
- resolution:
- {
- integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==,
- }
-
- json-schema-traverse@0.4.1:
- resolution:
- {
- integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==,
- }
+ resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
json-schema-traverse@1.0.0:
- resolution:
- {
- integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==,
- }
-
- json-stable-stringify-without-jsonify@1.0.1:
- resolution:
- {
- integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==,
- }
-
- json5@2.2.3:
- resolution:
- {
- integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==,
- }
- engines: { node: ">=6" }
- hasBin: true
-
- jsonc-parser@3.3.1:
- resolution:
- {
- integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==,
- }
-
- jsonfile@6.1.0:
- resolution:
- {
- integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==,
- }
-
- jsonparse@1.3.1:
- resolution:
- {
- integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==,
- }
- engines: { "0": node >= 0.2.0 }
-
- jsonpointer@5.0.1:
- resolution:
- {
- integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==,
- }
- engines: { node: ">=0.10.0" }
-
- keyv@4.5.4:
- resolution:
- {
- integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==,
- }
-
- kind-of@6.0.3:
- resolution:
- {
- integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==,
- }
- engines: { node: ">=0.10.0" }
-
- kleur@3.0.3:
- resolution:
- {
- integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==,
- }
- engines: { node: ">=6" }
-
- leven@3.1.0:
- resolution:
- {
- integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==,
- }
- engines: { node: ">=6" }
-
- levn@0.4.1:
- resolution:
- {
- integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==,
- }
- engines: { node: ">= 0.8.0" }
-
- lines-and-columns@1.2.4:
- resolution:
- {
- integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==,
- }
-
- linkify-it@5.0.0:
- resolution:
- {
- integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==,
- }
-
- load-json-file@4.0.0:
- resolution:
- {
- integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==,
- }
- engines: { node: ">=4" }
-
- loader-runner@4.3.0:
- resolution:
- {
- integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==,
- }
- engines: { node: ">=6.11.5" }
-
- loader-utils@2.0.4:
- resolution:
- {
- integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==,
- }
- engines: { node: ">=8.9.0" }
-
- locate-path@5.0.0:
- resolution:
- {
- integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==,
- }
- engines: { node: ">=8" }
-
- locate-path@6.0.0:
- resolution:
- {
- integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==,
- }
- engines: { node: ">=10" }
-
- lodash.camelcase@4.3.0:
- resolution:
- {
- integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==,
- }
-
- lodash.isfunction@3.0.9:
- resolution:
- {
- integrity: sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==,
- }
-
- lodash.isplainobject@4.0.6:
- resolution:
- {
- integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==,
- }
-
- lodash.kebabcase@4.1.1:
- resolution:
- {
- integrity: sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==,
- }
-
- lodash.memoize@4.1.2:
- resolution:
- {
- integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==,
- }
-
- lodash.merge@4.6.2:
- resolution:
- {
- integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==,
- }
-
- lodash.mergewith@4.6.2:
- resolution:
- {
- integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==,
- }
-
- lodash.snakecase@4.1.1:
- resolution:
- {
- integrity: sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==,
- }
-
- lodash.startcase@4.4.0:
- resolution:
- {
- integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==,
- }
-
- lodash.uniq@4.5.0:
- resolution:
- {
- integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==,
- }
-
- lodash.upperfirst@4.3.1:
- resolution:
- {
- integrity: sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==,
- }
-
- lodash@4.17.21:
- resolution:
- {
- integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==,
- }
-
- lru-cache@11.1.0:
- resolution:
- {
- integrity: sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==,
- }
- engines: { node: 20 || >=22 }
-
- lru-cache@5.1.1:
- resolution:
- {
- integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==,
- }
-
- lru-cache@6.0.0:
- resolution:
- {
- integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==,
- }
- engines: { node: ">=10" }
-
- lunr@2.3.9:
- resolution:
- {
- integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==,
- }
-
- make-dir@4.0.0:
- resolution:
- {
- integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==,
- }
- engines: { node: ">=10" }
-
- make-error@1.3.6:
- resolution:
- {
- integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==,
- }
-
- makeerror@1.0.12:
- resolution:
- {
- integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==,
- }
-
- map-obj@1.0.1:
- resolution:
- {
- integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==,
- }
- engines: { node: ">=0.10.0" }
-
- map-obj@4.3.0:
- resolution:
- {
- integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==,
- }
- engines: { node: ">=8" }
-
- markdown-it@14.1.0:
- resolution:
- {
- integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==,
- }
- hasBin: true
+ resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
- markdownlint-cli@0.42.0:
- resolution:
- {
- integrity: sha512-AjkzhhZa3TmEGi/CE2Wpmny69x1IrzqK2gPB0k8SmNMRgnSAJfyEO5FgZdWTHtJ6Nrdv5FWt5c4C5pkG6Dk30A==,
- }
- engines: { node: ">=18" }
- hasBin: true
+ loader-runner@4.3.1:
+ resolution: {integrity: sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q==}
+ engines: {node: '>=6.11.5'}
- markdownlint-micromark@0.1.10:
- resolution:
- {
- integrity: sha512-no5ZfdqAdWGxftCLlySHSgddEjyW4kui4z7amQcGsSKfYC5v/ou+8mIQVyg9KQMeEZLNtz9OPDTj7nnTnoR4FQ==,
- }
- engines: { node: ">=18" }
-
- markdownlint@0.35.0:
- resolution:
- {
- integrity: sha512-wgp8yesWjFBL7bycA3hxwHRdsZGJhjhyP1dSxKVKrza0EPFYtn+mHtkVy6dvP1kGSjovyG5B8yNP6Frj0UFUJg==,
- }
- engines: { node: ">=18" }
-
- marked@4.3.0:
- resolution:
- {
- integrity: sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==,
- }
- engines: { node: ">= 12" }
- hasBin: true
+ loupe@3.2.1:
+ resolution: {integrity: sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ==}
- math-intrinsics@1.1.0:
- resolution:
- {
- integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==,
- }
- engines: { node: ">= 0.4" }
-
- mdurl@2.0.0:
- resolution:
- {
- integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==,
- }
-
- memory-fs@0.5.0:
- resolution:
- {
- integrity: sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==,
- }
- engines: { node: ">=4.3.0 <5.0.0 || >=5.10" }
-
- memorystream@0.3.1:
- resolution:
- {
- integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==,
- }
- engines: { node: ">= 0.10.0" }
-
- meow@8.1.2:
- resolution:
- {
- integrity: sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==,
- }
- engines: { node: ">=10" }
+ magic-string@0.30.21:
+ resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==}
merge-stream@2.0.0:
- resolution:
- {
- integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==,
- }
-
- merge2@1.4.1:
- resolution:
- {
- integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==,
- }
- engines: { node: ">= 8" }
+ resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
micromatch@4.0.8:
- resolution:
- {
- integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==,
- }
- engines: { node: ">=8.6" }
+ resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
+ engines: {node: '>=8.6'}
mime-db@1.52.0:
- resolution:
- {
- integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==,
- }
- engines: { node: ">= 0.6" }
+ resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
+ engines: {node: '>= 0.6'}
mime-types@2.1.35:
- resolution:
- {
- integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==,
- }
- engines: { node: ">= 0.6" }
-
- mimic-fn@2.1.0:
- resolution:
- {
- integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==,
- }
- engines: { node: ">=6" }
-
- min-indent@1.0.1:
- resolution:
- {
- integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==,
- }
- engines: { node: ">=4" }
-
- minimatch@10.0.3:
- resolution:
- {
- integrity: sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==,
- }
- engines: { node: 20 || >=22 }
-
- minimatch@3.1.2:
- resolution:
- {
- integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==,
- }
-
- minimatch@5.1.6:
- resolution:
- {
- integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==,
- }
- engines: { node: ">=10" }
-
- minimatch@9.0.5:
- resolution:
- {
- integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==,
- }
- engines: { node: ">=16 || 14 >=14.17" }
-
- minimist-options@4.1.0:
- resolution:
- {
- integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==,
- }
- engines: { node: ">= 6" }
-
- minimist@1.2.8:
- resolution:
- {
- integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==,
- }
-
- minipass@7.1.2:
- resolution:
- {
- integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==,
- }
- engines: { node: ">=16 || 14 >=14.17" }
-
- mri@1.2.0:
- resolution:
- {
- integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==,
- }
- engines: { node: ">=4" }
+ resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
+ engines: {node: '>= 0.6'}
ms@2.1.3:
- resolution:
- {
- integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==,
- }
-
- natural-compare@1.4.0:
- resolution:
- {
- integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==,
- }
-
- nconf@0.12.1:
- resolution:
- {
- integrity: sha512-p2cfF+B3XXacQdswUYWZ0w6Vld0832A/tuqjLBu3H1sfUcby4N2oVbGhyuCkZv+t3iY3aiFEj7gZGqax9Q2c1w==,
- }
- engines: { node: ">= 0.4.0" }
+ resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
- neo-async@2.6.2:
- resolution:
- {
- integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==,
- }
-
- nice-try@1.0.5:
- resolution:
- {
- integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==,
- }
-
- node-fetch@2.7.0:
- resolution:
- {
- integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==,
- }
- engines: { node: 4.x || >=6.0.0 }
+ msw@2.11.2:
+ resolution: {integrity: sha512-MI54hLCsrMwiflkcqlgYYNJJddY5/+S0SnONvhv1owOplvqohKSQyGejpNdUGyCwgs4IH7PqaNbPw/sKOEze9Q==}
+ engines: {node: '>=18'}
+ hasBin: true
peerDependencies:
- encoding: ^0.1.0
+ typescript: '>= 4.8.x'
peerDependenciesMeta:
- encoding:
+ typescript:
optional: true
- node-int64@0.4.0:
- resolution:
- {
- integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==,
- }
-
- node-releases@2.0.19:
- resolution:
- {
- integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==,
- }
-
- nodemon@3.1.10:
- resolution:
- {
- integrity: sha512-WDjw3pJ0/0jMFmyNDp3gvY2YizjLmmOUQo6DEBY+JgdvW/yQ9mEeSw6H5ythl5Ny2ytb7f9C2nIbjSxMNzbJXw==,
- }
- engines: { node: ">=10" }
- hasBin: true
+ mute-stream@2.0.0:
+ resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==}
+ engines: {node: ^18.17.0 || >=20.5.0}
- normalize-package-data@2.5.0:
- resolution:
- {
- integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==,
- }
-
- normalize-package-data@3.0.3:
- resolution:
- {
- integrity: sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==,
- }
- engines: { node: ">=10" }
-
- normalize-path@3.0.0:
- resolution:
- {
- integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==,
- }
- engines: { node: ">=0.10.0" }
-
- npm-run-all@4.1.5:
- resolution:
- {
- integrity: sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==,
- }
- engines: { node: ">= 4" }
+ nanoid@3.3.11:
+ resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==}
+ engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
- npm-run-path@4.0.1:
- resolution:
- {
- integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==,
- }
- engines: { node: ">=8" }
-
- nwsapi@2.2.20:
- resolution:
- {
- integrity: sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==,
- }
-
- object-inspect@1.13.4:
- resolution:
- {
- integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==,
- }
- engines: { node: ">= 0.4" }
-
- object-keys@1.1.1:
- resolution:
- {
- integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==,
- }
- engines: { node: ">= 0.4" }
-
- object.assign@4.1.7:
- resolution:
- {
- integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==,
- }
- engines: { node: ">= 0.4" }
-
- once@1.4.0:
- resolution:
- {
- integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==,
- }
-
- onetime@5.1.2:
- resolution:
- {
- integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==,
- }
- engines: { node: ">=6" }
-
- opencollective-postinstall@2.0.3:
- resolution:
- {
- integrity: sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==,
- }
- hasBin: true
+ neo-async@2.6.2:
+ resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
+
+ node-releases@2.0.27:
+ resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==}
- optionator@0.9.4:
- resolution:
- {
- integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==,
- }
- engines: { node: ">= 0.8.0" }
-
- own-keys@1.0.1:
- resolution:
- {
- integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==,
- }
- engines: { node: ">= 0.4" }
-
- p-limit@2.3.0:
- resolution:
- {
- integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==,
- }
- engines: { node: ">=6" }
-
- p-limit@3.1.0:
- resolution:
- {
- integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==,
- }
- engines: { node: ">=10" }
-
- p-locate@4.1.0:
- resolution:
- {
- integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==,
- }
- engines: { node: ">=8" }
-
- p-locate@5.0.0:
- resolution:
- {
- integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==,
- }
- engines: { node: ">=10" }
-
- p-try@2.2.0:
- resolution:
- {
- integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==,
- }
- engines: { node: ">=6" }
-
- package-json-from-dist@1.0.1:
- resolution:
- {
- integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==,
- }
-
- parent-module@1.0.1:
- resolution:
- {
- integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==,
- }
- engines: { node: ">=6" }
-
- parse-json@4.0.0:
- resolution:
- {
- integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==,
- }
- engines: { node: ">=4" }
-
- parse-json@5.2.0:
- resolution:
- {
- integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==,
- }
- engines: { node: ">=8" }
-
- parse5@7.3.0:
- resolution:
- {
- integrity: sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==,
- }
-
- path-exists@4.0.0:
- resolution:
- {
- integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==,
- }
- engines: { node: ">=8" }
-
- path-is-absolute@1.0.1:
- resolution:
- {
- integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==,
- }
- engines: { node: ">=0.10.0" }
-
- path-key@2.0.1:
- resolution:
- {
- integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==,
- }
- engines: { node: ">=4" }
-
- path-key@3.1.1:
- resolution:
- {
- integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==,
- }
- engines: { node: ">=8" }
-
- path-parse@1.0.7:
- resolution:
- {
- integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==,
- }
-
- path-scurry@2.0.0:
- resolution:
- {
- integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==,
- }
- engines: { node: 20 || >=22 }
-
- path-type@3.0.0:
- resolution:
- {
- integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==,
- }
- engines: { node: ">=4" }
-
- path-type@4.0.0:
- resolution:
- {
- integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==,
- }
- engines: { node: ">=8" }
+ outvariant@1.4.3:
+ resolution: {integrity: sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==}
+
+ path-to-regexp@6.3.0:
+ resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==}
+
+ pathe@2.0.3:
+ resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==}
+
+ pathval@2.0.1:
+ resolution: {integrity: sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==}
+ engines: {node: '>= 14.16'}
picocolors@1.1.1:
- resolution:
- {
- integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==,
- }
+ resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
picomatch@2.3.1:
- resolution:
- {
- integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==,
- }
- engines: { node: ">=8.6" }
-
- picomatch@3.0.1:
- resolution:
- {
- integrity: sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==,
- }
- engines: { node: ">=10" }
-
- pidtree@0.3.1:
- resolution:
- {
- integrity: sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==,
- }
- engines: { node: ">=0.10" }
- hasBin: true
+ resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
+ engines: {node: '>=8.6'}
- pify@3.0.0:
- resolution:
- {
- integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==,
- }
- engines: { node: ">=4" }
-
- pirates@4.0.7:
- resolution:
- {
- integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==,
- }
- engines: { node: ">= 6" }
-
- pkg-dir@4.2.0:
- resolution:
- {
- integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==,
- }
- engines: { node: ">=8" }
-
- pkg-dir@5.0.0:
- resolution:
- {
- integrity: sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==,
- }
- engines: { node: ">=10" }
-
- please-upgrade-node@3.2.0:
- resolution:
- {
- integrity: sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==,
- }
-
- possible-typed-array-names@1.1.0:
- resolution:
- {
- integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==,
- }
- engines: { node: ">= 0.4" }
-
- prelude-ls@1.2.1:
- resolution:
- {
- integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==,
- }
- engines: { node: ">= 0.8.0" }
-
- prettier@2.8.8:
- resolution:
- {
- integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==,
- }
- engines: { node: ">=10.13.0" }
+ picomatch@4.0.3:
+ resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==}
+ engines: {node: '>=12'}
+
+ playwright-core@1.56.1:
+ resolution: {integrity: sha512-hutraynyn31F+Bifme+Ps9Vq59hKuUCz7H1kDOcBs+2oGguKkWTU50bBWrtz34OUWmIwpBTWDxaRPXrIXkgvmQ==}
+ engines: {node: '>=18'}
hasBin: true
- pretty-format@29.7.0:
- resolution:
- {
- integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 }
-
- pretty-quick@3.3.1:
- resolution:
- {
- integrity: sha512-3b36UXfYQ+IXXqex6mCca89jC8u0mYLqFAN5eTQKoXO6oCQYcIVYZEB/5AlBHI7JPYygReM2Vv6Vom/Gln7fBg==,
- }
- engines: { node: ">=10.13" }
+ playwright@1.56.1:
+ resolution: {integrity: sha512-aFi5B0WovBHTEvpM3DzXTUaeN6eN0qWnTkKx4NQaH4Wvcmc153PdaY2UBdSYKaGYw+UyWXSVyxDUg5DoPEttjw==}
+ engines: {node: '>=18'}
hasBin: true
- peerDependencies:
- prettier: ^2.0.0
-
- process-nextick-args@2.0.1:
- resolution:
- {
- integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==,
- }
-
- prompts@2.4.2:
- resolution:
- {
- integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==,
- }
- engines: { node: ">= 6" }
-
- prr@1.0.1:
- resolution:
- {
- integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==,
- }
-
- psl@1.15.0:
- resolution:
- {
- integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==,
- }
-
- pstree.remy@1.1.8:
- resolution:
- {
- integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==,
- }
-
- pump@3.0.3:
- resolution:
- {
- integrity: sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==,
- }
-
- punycode.js@2.3.1:
- resolution:
- {
- integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==,
- }
- engines: { node: ">=6" }
-
- punycode@1.4.1:
- resolution:
- {
- integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==,
- }
-
- punycode@2.3.1:
- resolution:
- {
- integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==,
- }
- engines: { node: ">=6" }
-
- pure-rand@6.1.0:
- resolution:
- {
- integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==,
- }
-
- qs@6.14.0:
- resolution:
- {
- integrity: sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==,
- }
- engines: { node: ">=0.6" }
-
- querystringify@2.2.0:
- resolution:
- {
- integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==,
- }
-
- queue-microtask@1.2.3:
- resolution:
- {
- integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==,
- }
-
- quick-lru@4.0.1:
- resolution:
- {
- integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==,
- }
- engines: { node: ">=8" }
+
+ postcss@8.5.6:
+ resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==}
+ engines: {node: ^10 || ^12 || >=14}
randombytes@2.1.0:
- resolution:
- {
- integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==,
- }
-
- react-is@18.3.1:
- resolution:
- {
- integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==,
- }
-
- read-pkg-up@7.0.1:
- resolution:
- {
- integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==,
- }
- engines: { node: ">=8" }
-
- read-pkg@3.0.0:
- resolution:
- {
- integrity: sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==,
- }
- engines: { node: ">=4" }
-
- read-pkg@5.2.0:
- resolution:
- {
- integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==,
- }
- engines: { node: ">=8" }
-
- readable-stream@2.3.8:
- resolution:
- {
- integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==,
- }
-
- readable-stream@3.6.2:
- resolution:
- {
- integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==,
- }
- engines: { node: ">= 6" }
-
- readdirp@3.6.0:
- resolution:
- {
- integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==,
- }
- engines: { node: ">=8.10.0" }
-
- rechoir@0.7.1:
- resolution:
- {
- integrity: sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==,
- }
- engines: { node: ">= 0.10" }
-
- redent@3.0.0:
- resolution:
- {
- integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==,
- }
- engines: { node: ">=8" }
-
- reflect.getprototypeof@1.0.10:
- resolution:
- {
- integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==,
- }
- engines: { node: ">= 0.4" }
-
- regexp.prototype.flags@1.5.4:
- resolution:
- {
- integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==,
- }
- engines: { node: ">= 0.4" }
+ resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
require-directory@2.1.1:
- resolution:
- {
- integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==,
- }
- engines: { node: ">=0.10.0" }
+ resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
+ engines: {node: '>=0.10.0'}
require-from-string@2.0.2:
- resolution:
- {
- integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==,
- }
- engines: { node: ">=0.10.0" }
-
- requires-port@1.0.0:
- resolution:
- {
- integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==,
- }
-
- resolve-cwd@3.0.0:
- resolution:
- {
- integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==,
- }
- engines: { node: ">=8" }
-
- resolve-from@4.0.0:
- resolution:
- {
- integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==,
- }
- engines: { node: ">=4" }
-
- resolve-from@5.0.0:
- resolution:
- {
- integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==,
- }
- engines: { node: ">=8" }
-
- resolve-global@1.0.0:
- resolution:
- {
- integrity: sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==,
- }
- engines: { node: ">=8" }
-
- resolve.exports@2.0.3:
- resolution:
- {
- integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==,
- }
- engines: { node: ">=10" }
-
- resolve@1.22.10:
- resolution:
- {
- integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==,
- }
- engines: { node: ">= 0.4" }
- hasBin: true
+ resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
+ engines: {node: '>=0.10.0'}
- reusify@1.1.0:
- resolution:
- {
- integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==,
- }
- engines: { iojs: ">=1.0.0", node: ">=0.10.0" }
-
- rimraf@3.0.2:
- resolution:
- {
- integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==,
- }
- deprecated: Rimraf versions prior to v4 are no longer supported
- hasBin: true
+ rettime@0.7.0:
+ resolution: {integrity: sha512-LPRKoHnLKd/r3dVxcwO7vhCW+orkOGj9ViueosEBK6ie89CijnfRlhaDhHq/3Hxu4CkWQtxwlBG0mzTQY6uQjw==}
- run-con@1.3.2:
- resolution:
- {
- integrity: sha512-CcfE+mYiTcKEzg0IqS08+efdnH0oJ3zV0wSUFBNrMHMuxCtXvBCLzCJHatwuXDcu/RlhjTziTo/a1ruQik6/Yg==,
- }
+ rollup@4.53.3:
+ resolution: {integrity: sha512-w8GmOxZfBmKknvdXU1sdM9NHcoQejwF/4mNgj2JuEEdRaHwwF12K7e9eXn1nLZ07ad+du76mkVsyeb2rKGllsA==}
+ engines: {node: '>=18.0.0', npm: '>=8.0.0'}
hasBin: true
- run-parallel@1.2.0:
- resolution:
- {
- integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==,
- }
-
- safe-array-concat@1.1.3:
- resolution:
- {
- integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==,
- }
- engines: { node: ">=0.4" }
-
- safe-buffer@5.1.2:
- resolution:
- {
- integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==,
- }
-
safe-buffer@5.2.1:
- resolution:
- {
- integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==,
- }
-
- safe-push-apply@1.0.0:
- resolution:
- {
- integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==,
- }
- engines: { node: ">= 0.4" }
-
- safe-regex-test@1.1.0:
- resolution:
- {
- integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==,
- }
- engines: { node: ">= 0.4" }
-
- safer-buffer@2.1.2:
- resolution:
- {
- integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==,
- }
-
- saxes@6.0.0:
- resolution:
- {
- integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==,
- }
- engines: { node: ">=v12.22.7" }
-
- schema-utils@4.3.2:
- resolution:
- {
- integrity: sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==,
- }
- engines: { node: ">= 10.13.0" }
-
- secure-keys@1.0.0:
- resolution:
- {
- integrity: sha512-nZi59hW3Sl5P3+wOO89eHBAAGwmCPd2aE1+dLZV5MO+ItQctIvAqihzaAXIQhvtH4KJPxM080HsnqltR2y8cWg==,
- }
-
- semantic-release-plugin-update-version-in-files@1.1.0:
- resolution:
- {
- integrity: sha512-OWBrved3Rr0w3YP4iID81MhG9qhGrG+XtxdO9VMhKJ9qte3yBdMz5cSxDiPE/uhnGJQF00fqQetY3yhHFGabWw==,
- }
-
- semver-compare@1.0.0:
- resolution:
- {
- integrity: sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==,
- }
-
- semver-regex@3.1.4:
- resolution:
- {
- integrity: sha512-6IiqeZNgq01qGf0TId0t3NvKzSvUsjcpdEO3AQNeIjR6A2+ckTnQlDpl4qu1bjRv0RzN3FP9hzFmws3lKqRWkA==,
- }
- engines: { node: ">=8" }
-
- semver@5.7.2:
- resolution:
- {
- integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==,
- }
- hasBin: true
-
- semver@6.3.1:
- resolution:
- {
- integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==,
- }
- hasBin: true
+ resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
- semver@7.5.4:
- resolution:
- {
- integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==,
- }
- engines: { node: ">=10" }
- hasBin: true
+ schema-utils@4.3.3:
+ resolution: {integrity: sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA==}
+ engines: {node: '>= 10.13.0'}
- semver@7.7.2:
- resolution:
- {
- integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==,
- }
- engines: { node: ">=10" }
+ semver@7.7.3:
+ resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==}
+ engines: {node: '>=10'}
hasBin: true
serialize-javascript@6.0.2:
- resolution:
- {
- integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==,
- }
-
- set-function-length@1.2.2:
- resolution:
- {
- integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==,
- }
- engines: { node: ">= 0.4" }
-
- set-function-name@2.0.2:
- resolution:
- {
- integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==,
- }
- engines: { node: ">= 0.4" }
-
- set-proto@1.0.0:
- resolution:
- {
- integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==,
- }
- engines: { node: ">= 0.4" }
-
- shallow-clone@3.0.1:
- resolution:
- {
- integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==,
- }
- engines: { node: ">=8" }
-
- shebang-command@1.2.0:
- resolution:
- {
- integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==,
- }
- engines: { node: ">=0.10.0" }
-
- shebang-command@2.0.0:
- resolution:
- {
- integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==,
- }
- engines: { node: ">=8" }
-
- shebang-regex@1.0.0:
- resolution:
- {
- integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==,
- }
- engines: { node: ">=0.10.0" }
-
- shebang-regex@3.0.0:
- resolution:
- {
- integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==,
- }
- engines: { node: ">=8" }
-
- shell-quote@1.8.3:
- resolution:
- {
- integrity: sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==,
- }
- engines: { node: ">= 0.4" }
-
- shiki@0.10.1:
- resolution:
- {
- integrity: sha512-VsY7QJVzU51j5o1+DguUd+6vmCmZ5v/6gYu4vyYAhzjuNQU6P/vmSy4uQaOhvje031qQMiW0d2BwgMH52vqMng==,
- }
-
- side-channel-list@1.0.0:
- resolution:
- {
- integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==,
- }
- engines: { node: ">= 0.4" }
-
- side-channel-map@1.0.1:
- resolution:
- {
- integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==,
- }
- engines: { node: ">= 0.4" }
-
- side-channel-weakmap@1.0.2:
- resolution:
- {
- integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==,
- }
- engines: { node: ">= 0.4" }
-
- side-channel@1.1.0:
- resolution:
- {
- integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==,
- }
- engines: { node: ">= 0.4" }
-
- signal-exit@3.0.7:
- resolution:
- {
- integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==,
- }
+ resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
+
+ siginfo@2.0.0:
+ resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
signal-exit@4.1.0:
- resolution:
- {
- integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==,
- }
- engines: { node: ">=14" }
-
- simple-update-notifier@2.0.0:
- resolution:
- {
- integrity: sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==,
- }
- engines: { node: ">=10" }
-
- sisteransi@1.0.5:
- resolution:
- {
- integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==,
- }
-
- slash@3.0.0:
- resolution:
- {
- integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==,
- }
- engines: { node: ">=8" }
-
- smol-toml@1.3.4:
- resolution:
- {
- integrity: sha512-UOPtVuYkzYGee0Bd2Szz8d2G3RfMfJ2t3qVdZUAozZyAk+a0Sxa+QKix0YCwjL/A1RR0ar44nCxaoN9FxdJGwA==,
- }
- engines: { node: ">= 18" }
-
- source-map-support@0.5.13:
- resolution:
- {
- integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==,
- }
+ resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
+ engines: {node: '>=14'}
+
+ source-map-js@1.2.1:
+ resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
+ engines: {node: '>=0.10.0'}
source-map-support@0.5.21:
- resolution:
- {
- integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==,
- }
+ resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
source-map@0.6.1:
- resolution:
- {
- integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==,
- }
- engines: { node: ">=0.10.0" }
-
- spdx-correct@3.2.0:
- resolution:
- {
- integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==,
- }
-
- spdx-exceptions@2.5.0:
- resolution:
- {
- integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==,
- }
-
- spdx-expression-parse@3.0.1:
- resolution:
- {
- integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==,
- }
-
- spdx-license-ids@3.0.21:
- resolution:
- {
- integrity: sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==,
- }
-
- split2@3.2.2:
- resolution:
- {
- integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==,
- }
-
- sprintf-js@1.0.3:
- resolution:
- {
- integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==,
- }
-
- stack-utils@2.0.6:
- resolution:
- {
- integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==,
- }
- engines: { node: ">=10" }
-
- stop-iteration-iterator@1.1.0:
- resolution:
- {
- integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==,
- }
- engines: { node: ">= 0.4" }
-
- stream-browserify@3.0.0:
- resolution:
- {
- integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==,
- }
-
- string-length@4.0.2:
- resolution:
- {
- integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==,
- }
- engines: { node: ">=10" }
+ resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
+ engines: {node: '>=0.10.0'}
+
+ source-map@0.7.6:
+ resolution: {integrity: sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==}
+ engines: {node: '>= 12'}
+
+ stackback@0.0.2:
+ resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
+
+ statuses@2.0.2:
+ resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==}
+ engines: {node: '>= 0.8'}
+
+ std-env@3.10.0:
+ resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==}
+
+ strict-event-emitter@0.5.1:
+ resolution: {integrity: sha512-vMgjE/GGEPEFnhFub6pa4FmJBRBVOLpIII2hvCZ8Kzb7K0hlHo7mQv6xYrBvCL2LtAIBwFUK8wvuJgTVSQ5MFQ==}
string-width@4.2.3:
- resolution:
- {
- integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==,
- }
- engines: { node: ">=8" }
-
- string-width@5.1.2:
- resolution:
- {
- integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==,
- }
- engines: { node: ">=12" }
-
- string.prototype.padend@3.1.6:
- resolution:
- {
- integrity: sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==,
- }
- engines: { node: ">= 0.4" }
-
- string.prototype.trim@1.2.10:
- resolution:
- {
- integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==,
- }
- engines: { node: ">= 0.4" }
-
- string.prototype.trimend@1.0.9:
- resolution:
- {
- integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==,
- }
- engines: { node: ">= 0.4" }
-
- string.prototype.trimstart@1.0.8:
- resolution:
- {
- integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==,
- }
- engines: { node: ">= 0.4" }
-
- string_decoder@1.1.1:
- resolution:
- {
- integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==,
- }
-
- string_decoder@1.3.0:
- resolution:
- {
- integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==,
- }
+ resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
+ engines: {node: '>=8'}
strip-ansi@6.0.1:
- resolution:
- {
- integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==,
- }
- engines: { node: ">=8" }
-
- strip-ansi@7.1.0:
- resolution:
- {
- integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==,
- }
- engines: { node: ">=12" }
-
- strip-bom@3.0.0:
- resolution:
- {
- integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==,
- }
- engines: { node: ">=4" }
-
- strip-bom@4.0.0:
- resolution:
- {
- integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==,
- }
- engines: { node: ">=8" }
-
- strip-final-newline@2.0.0:
- resolution:
- {
- integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==,
- }
- engines: { node: ">=6" }
-
- strip-indent@3.0.0:
- resolution:
- {
- integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==,
- }
- engines: { node: ">=8" }
-
- strip-json-comments@3.1.1:
- resolution:
- {
- integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==,
- }
- engines: { node: ">=8" }
-
- supports-color@5.5.0:
- resolution:
- {
- integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==,
- }
- engines: { node: ">=4" }
+ resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
+ engines: {node: '>=8'}
+
+ strip-literal@3.1.0:
+ resolution: {integrity: sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==}
supports-color@7.2.0:
- resolution:
- {
- integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==,
- }
- engines: { node: ">=8" }
+ resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
+ engines: {node: '>=8'}
supports-color@8.1.1:
- resolution:
- {
- integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==,
- }
- engines: { node: ">=10" }
-
- supports-preserve-symlinks-flag@1.0.0:
- resolution:
- {
- integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==,
- }
- engines: { node: ">= 0.4" }
-
- symbol-tree@3.2.4:
- resolution:
- {
- integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==,
- }
-
- tapable@1.1.3:
- resolution:
- {
- integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==,
- }
- engines: { node: ">=6" }
-
- tapable@2.2.2:
- resolution:
- {
- integrity: sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==,
- }
- engines: { node: ">=6" }
+ resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
+ engines: {node: '>=10'}
+
+ tapable@2.3.0:
+ resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==}
+ engines: {node: '>=6'}
terser-webpack-plugin@5.3.14:
- resolution:
- {
- integrity: sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==,
- }
- engines: { node: ">= 10.13.0" }
+ resolution: {integrity: sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==}
+ engines: {node: '>= 10.13.0'}
peerDependencies:
- "@swc/core": "*"
- esbuild: "*"
- uglify-js: "*"
+ '@swc/core': '*'
+ esbuild: '*'
+ uglify-js: '*'
webpack: ^5.1.0
peerDependenciesMeta:
- "@swc/core":
+ '@swc/core':
optional: true
esbuild:
optional: true
uglify-js:
optional: true
- terser@5.42.0:
- resolution:
- {
- integrity: sha512-UYCvU9YQW2f/Vwl+P0GfhxJxbUGLwd+5QrrGgLajzWAtC/23AX0vcise32kkP7Eu0Wu9VlzzHAXkLObgjQfFlQ==,
- }
- engines: { node: ">=10" }
+ terser@5.44.1:
+ resolution: {integrity: sha512-t/R3R/n0MSwnnazuPpPNVO60LX0SKL45pyl9YlvxIdkH0Of7D5qM2EVe+yASRIlY5pZ73nclYJfNANGWPwFDZw==}
+ engines: {node: '>=10'}
hasBin: true
- test-exclude@6.0.0:
- resolution:
- {
- integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==,
- }
- engines: { node: ">=8" }
-
- text-extensions@1.9.0:
- resolution:
- {
- integrity: sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==,
- }
- engines: { node: ">=0.10" }
-
- text-table@0.2.0:
- resolution:
- {
- integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==,
- }
-
- through2@4.0.2:
- resolution:
- {
- integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==,
- }
-
- through@2.3.8:
- resolution:
- {
- integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==,
- }
-
- tmpl@1.0.5:
- resolution:
- {
- integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==,
- }
+ tinybench@2.9.0:
+ resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==}
+
+ tinyexec@0.3.2:
+ resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==}
+
+ tinyglobby@0.2.15:
+ resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==}
+ engines: {node: '>=12.0.0'}
+
+ tinypool@1.1.1:
+ resolution: {integrity: sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+
+ tinyrainbow@2.0.0:
+ resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==}
+ engines: {node: '>=14.0.0'}
+
+ tinyspy@4.0.4:
+ resolution: {integrity: sha512-azl+t0z7pw/z958Gy9svOTuzqIk6xq+NSheJzn5MMWtWTFywIacg2wUlzKFGtt3cthx0r2SxMK0yzJOR0IES7Q==}
+ engines: {node: '>=14.0.0'}
+
+ tldts-core@7.0.18:
+ resolution: {integrity: sha512-jqJC13oP4FFAahv4JT/0WTDrCF9Okv7lpKtOZUGPLiAnNbACcSg8Y8T+Z9xthOmRBqi/Sob4yi0TE0miRCvF7Q==}
+
+ tldts@7.0.18:
+ resolution: {integrity: sha512-lCcgTAgMxQ1JKOWrVGo6E69Ukbnx4Gc1wiYLRf6J5NN4HRYJtCby1rPF8rkQ4a6qqoFBK5dvjJ1zJ0F7VfDSvw==}
+ hasBin: true
to-regex-range@5.0.1:
- resolution:
- {
- integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==,
- }
- engines: { node: ">=8.0" }
-
- touch@3.1.1:
- resolution:
- {
- integrity: sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA==,
- }
+ resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
+ engines: {node: '>=8.0'}
+
+ tough-cookie@6.0.0:
+ resolution: {integrity: sha512-kXuRi1mtaKMrsLUxz3sQYvVl37B0Ns6MzfrtV5DvJceE9bPyspOqk9xxv7XbZWcfLWbFmm997vl83qUWVJA64w==}
+ engines: {node: '>=16'}
+
+ ts-loader@9.5.4:
+ resolution: {integrity: sha512-nCz0rEwunlTZiy6rXFByQU1kVVpCIgUpc/psFiKVrUwrizdnIbRFu8w7bxhUF0X613DYwT4XzrZHpVyMe758hQ==}
+ engines: {node: '>=12.0.0'}
+ peerDependencies:
+ typescript: '*'
+ webpack: ^5.0.0
+
+ type-fest@4.41.0:
+ resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==}
+ engines: {node: '>=16'}
+
+ typescript@5.7.3:
+ resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==}
+ engines: {node: '>=14.17'}
hasBin: true
- tough-cookie@4.1.4:
- resolution:
- {
- integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==,
- }
- engines: { node: ">=6" }
-
- tr46@0.0.3:
- resolution:
- {
- integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==,
- }
-
- tr46@3.0.0:
- resolution:
- {
- integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==,
- }
- engines: { node: ">=12" }
-
- trim-newlines@3.0.1:
- resolution:
- {
- integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==,
- }
- engines: { node: ">=8" }
-
- ts-api-utils@2.1.0:
- resolution:
- {
- integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==,
- }
- engines: { node: ">=18.12" }
+ undici-types@5.26.5:
+ resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
+
+ update-browserslist-db@1.1.4:
+ resolution: {integrity: sha512-q0SPT4xyU84saUX+tomz1WLkxUbuaJnR1xWt17M7fJtEJigJeWUNGUqrauFXsHnqev9y9JTRGwk13tFBuKby4A==}
+ hasBin: true
peerDependencies:
- typescript: ">=4.8.4"
-
- ts-jest@29.4.0:
- resolution:
- {
- integrity: sha512-d423TJMnJGu80/eSgfQ5w/R+0zFJvdtTxwtF9KzFFunOpSeD+79lHJQIiAhluJoyGRbvj9NZJsl9WjCUo0ND7Q==,
- }
- engines: { node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0 }
+ browserslist: '>= 4.21.0'
+
+ vite-node@3.2.4:
+ resolution: {integrity: sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==}
+ engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
+ hasBin: true
+
+ vite@7.2.2:
+ resolution: {integrity: sha512-BxAKBWmIbrDgrokdGZH1IgkIk/5mMHDreLDmCJ0qpyJaAteP8NvMhkwr/ZCQNqNH97bw/dANTE9PDzqwJghfMQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
- "@babel/core": ">=7.0.0-beta.0 <8"
- "@jest/transform": ^29.0.0 || ^30.0.0
- "@jest/types": ^29.0.0 || ^30.0.0
- babel-jest: ^29.0.0 || ^30.0.0
- esbuild: "*"
- jest: ^29.0.0 || ^30.0.0
- jest-util: ^29.0.0 || ^30.0.0
- typescript: ">=4.3 <6"
+ '@types/node': ^20.19.0 || >=22.12.0
+ jiti: '>=1.21.0'
+ less: ^4.0.0
+ lightningcss: ^1.21.0
+ sass: ^1.70.0
+ sass-embedded: ^1.70.0
+ stylus: '>=0.54.8'
+ sugarss: ^5.0.0
+ terser: ^5.16.0
+ tsx: ^4.8.1
+ yaml: ^2.4.2
peerDependenciesMeta:
- "@babel/core":
+ '@types/node':
optional: true
- "@jest/transform":
+ jiti:
optional: true
- "@jest/types":
+ less:
optional: true
- babel-jest:
+ lightningcss:
optional: true
- esbuild:
+ sass:
optional: true
- jest-util:
+ sass-embedded:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ terser:
+ optional: true
+ tsx:
+ optional: true
+ yaml:
optional: true
- ts-loader@8.4.0:
- resolution:
- {
- integrity: sha512-6nFY3IZ2//mrPc+ImY3hNWx1vCHyEhl6V+wLmL4CZcm6g1CqX7UKrkc6y0i4FwcfOhxyMPCfaEvh20f4r9GNpw==,
- }
- engines: { node: ">=10.0.0" }
- peerDependencies:
- typescript: "*"
- webpack: "*"
-
- ts-node@10.9.2:
- resolution:
- {
- integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==,
- }
+ vitest@3.2.4:
+ resolution: {integrity: sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==}
+ engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
hasBin: true
peerDependencies:
- "@swc/core": ">=1.2.50"
- "@swc/wasm": ">=1.2.50"
- "@types/node": "*"
- typescript: ">=2.7"
+ '@edge-runtime/vm': '*'
+ '@types/debug': ^4.1.12
+ '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0
+ '@vitest/browser': 3.2.4
+ '@vitest/ui': 3.2.4
+ happy-dom: '*'
+ jsdom: '*'
peerDependenciesMeta:
- "@swc/core":
+ '@edge-runtime/vm':
+ optional: true
+ '@types/debug':
+ optional: true
+ '@types/node':
optional: true
- "@swc/wasm":
+ '@vitest/browser':
optional: true
+ '@vitest/ui':
+ optional: true
+ happy-dom:
+ optional: true
+ jsdom:
+ optional: true
+
+ watchpack@2.4.4:
+ resolution: {integrity: sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==}
+ engines: {node: '>=10.13.0'}
- tslib@2.8.1:
- resolution:
- {
- integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==,
- }
-
- type-check@0.4.0:
- resolution:
- {
- integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==,
- }
- engines: { node: ">= 0.8.0" }
-
- type-detect@4.0.8:
- resolution:
- {
- integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==,
- }
- engines: { node: ">=4" }
-
- type-fest@0.18.1:
- resolution:
- {
- integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==,
- }
- engines: { node: ">=10" }
-
- type-fest@0.20.2:
- resolution:
- {
- integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==,
- }
- engines: { node: ">=10" }
-
- type-fest@0.21.3:
- resolution:
- {
- integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==,
- }
- engines: { node: ">=10" }
-
- type-fest@0.6.0:
- resolution:
- {
- integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==,
- }
- engines: { node: ">=8" }
-
- type-fest@0.8.1:
- resolution:
- {
- integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==,
- }
- engines: { node: ">=8" }
+ webpack-sources@3.3.3:
+ resolution: {integrity: sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg==}
+ engines: {node: '>=10.13.0'}
- type-fest@4.41.0:
- resolution:
- {
- integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==,
- }
- engines: { node: ">=16" }
-
- typed-array-buffer@1.0.3:
- resolution:
- {
- integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==,
- }
- engines: { node: ">= 0.4" }
-
- typed-array-byte-length@1.0.3:
- resolution:
- {
- integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==,
- }
- engines: { node: ">= 0.4" }
-
- typed-array-byte-offset@1.0.4:
- resolution:
- {
- integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==,
- }
- engines: { node: ">= 0.4" }
-
- typed-array-length@1.0.7:
- resolution:
- {
- integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==,
- }
- engines: { node: ">= 0.4" }
-
- typedoc@0.22.18:
- resolution:
- {
- integrity: sha512-NK9RlLhRUGMvc6Rw5USEYgT4DVAUFk7IF7Q6MYfpJ88KnTZP7EneEa4RcP+tX1auAcz7QT1Iy0bUSZBYYHdoyA==,
- }
- engines: { node: ">= 12.10.0" }
+ webpack@5.103.0:
+ resolution: {integrity: sha512-HU1JOuV1OavsZ+mfigY0j8d1TgQgbZ6M+J75zDkpEAwYeXjWSqrGJtgnPblJjd/mAyTNQ7ygw0MiKOn6etz8yw==}
+ engines: {node: '>=10.13.0'}
hasBin: true
peerDependencies:
- typescript: 4.0.x || 4.1.x || 4.2.x || 4.3.x || 4.4.x || 4.5.x || 4.6.x || 4.7.x
-
- typescript@4.9.5:
- resolution:
- {
- integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==,
- }
- engines: { node: ">=4.2.0" }
+ webpack-cli: '*'
+ peerDependenciesMeta:
+ webpack-cli:
+ optional: true
+
+ why-is-node-running@2.3.0:
+ resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==}
+ engines: {node: '>=8'}
hasBin: true
- uc.micro@2.1.0:
- resolution:
- {
- integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==,
- }
-
- unbox-primitive@1.1.0:
- resolution:
- {
- integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==,
- }
- engines: { node: ">= 0.4" }
-
- undefsafe@2.0.5:
- resolution:
- {
- integrity: sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==,
- }
+ wrap-ansi@6.2.0:
+ resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
+ engines: {node: '>=8'}
- undici-types@5.26.5:
- resolution:
- {
- integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==,
- }
-
- universalify@0.2.0:
- resolution:
- {
- integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==,
- }
- engines: { node: ">= 4.0.0" }
-
- universalify@2.0.1:
- resolution:
- {
- integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==,
- }
- engines: { node: ">= 10.0.0" }
-
- update-browserslist-db@1.1.3:
- resolution:
- {
- integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==,
- }
- hasBin: true
- peerDependencies:
- browserslist: ">= 4.21.0"
-
- uri-js@4.4.1:
- resolution:
- {
- integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==,
- }
-
- url-parse@1.5.10:
- resolution:
- {
- integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==,
- }
-
- url@0.11.4:
- resolution:
- {
- integrity: sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==,
- }
- engines: { node: ">= 0.4" }
-
- util-deprecate@1.0.2:
- resolution:
- {
- integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==,
- }
-
- util@0.12.5:
- resolution:
- {
- integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==,
- }
-
- v8-compile-cache-lib@3.0.1:
- resolution:
- {
- integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==,
- }
-
- v8-to-istanbul@9.3.0:
- resolution:
- {
- integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==,
- }
- engines: { node: ">=10.12.0" }
-
- validate-npm-package-license@3.0.4:
- resolution:
- {
- integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==,
- }
-
- vscode-oniguruma@1.7.0:
- resolution:
- {
- integrity: sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==,
- }
-
- vscode-textmate@5.2.0:
- resolution:
- {
- integrity: sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==,
- }
-
- w3c-xmlserializer@4.0.0:
- resolution:
- {
- integrity: sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==,
- }
- engines: { node: ">=14" }
-
- walker@1.0.8:
- resolution:
- {
- integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==,
- }
+ wrap-ansi@7.0.0:
+ resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
+ engines: {node: '>=10'}
- watchpack@2.4.4:
- resolution:
- {
- integrity: sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==,
- }
- engines: { node: ">=10.13.0" }
-
- webidl-conversions@3.0.1:
- resolution:
- {
- integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==,
- }
-
- webidl-conversions@7.0.0:
- resolution:
- {
- integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==,
- }
- engines: { node: ">=12" }
-
- webpack-cli@4.10.0:
- resolution:
- {
- integrity: sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==,
- }
- engines: { node: ">=10.13.0" }
- hasBin: true
- peerDependencies:
- "@webpack-cli/generators": "*"
- "@webpack-cli/migrate": "*"
- webpack: 4.x.x || 5.x.x
- webpack-bundle-analyzer: "*"
- webpack-dev-server: "*"
- peerDependenciesMeta:
- "@webpack-cli/generators":
- optional: true
- "@webpack-cli/migrate":
- optional: true
- webpack-bundle-analyzer:
- optional: true
- webpack-dev-server:
- optional: true
-
- webpack-merge@5.10.0:
- resolution:
- {
- integrity: sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==,
- }
- engines: { node: ">=10.0.0" }
-
- webpack-sources@3.3.2:
- resolution:
- {
- integrity: sha512-ykKKus8lqlgXX/1WjudpIEjqsafjOTcOJqxnAbMLAu/KCsDCJ6GBtvscewvTkrn24HsnvFwrSCbenFrhtcCsAA==,
- }
- engines: { node: ">=10.13.0" }
-
- webpack@5.99.9:
- resolution:
- {
- integrity: sha512-brOPwM3JnmOa+7kd3NsmOUOwbDAj8FT9xDsG3IW0MgbN9yZV7Oi/s/+MNQ/EcSMqw7qfoRyXPoeEWT8zLVdVGg==,
- }
- engines: { node: ">=10.13.0" }
- hasBin: true
- peerDependencies:
- webpack-cli: "*"
- peerDependenciesMeta:
- webpack-cli:
- optional: true
-
- whatwg-encoding@2.0.0:
- resolution:
- {
- integrity: sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==,
- }
- engines: { node: ">=12" }
-
- whatwg-mimetype@3.0.0:
- resolution:
- {
- integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==,
- }
- engines: { node: ">=12" }
-
- whatwg-url@11.0.0:
- resolution:
- {
- integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==,
- }
- engines: { node: ">=12" }
-
- whatwg-url@5.0.0:
- resolution:
- {
- integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==,
- }
-
- which-boxed-primitive@1.1.1:
- resolution:
- {
- integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==,
- }
- engines: { node: ">= 0.4" }
-
- which-builtin-type@1.2.1:
- resolution:
- {
- integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==,
- }
- engines: { node: ">= 0.4" }
-
- which-collection@1.0.2:
- resolution:
- {
- integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==,
- }
- engines: { node: ">= 0.4" }
-
- which-pm-runs@1.1.0:
- resolution:
- {
- integrity: sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==,
- }
- engines: { node: ">=4" }
-
- which-typed-array@1.1.19:
- resolution:
- {
- integrity: sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==,
- }
- engines: { node: ">= 0.4" }
-
- which@1.3.1:
- resolution:
- {
- integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==,
- }
- hasBin: true
-
- which@2.0.2:
- resolution:
- {
- integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==,
- }
- engines: { node: ">= 8" }
- hasBin: true
-
- wildcard@2.0.1:
- resolution:
- {
- integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==,
- }
-
- word-wrap@1.2.5:
- resolution:
- {
- integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==,
- }
- engines: { node: ">=0.10.0" }
-
- wrap-ansi@7.0.0:
- resolution:
- {
- integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==,
- }
- engines: { node: ">=10" }
-
- wrap-ansi@8.1.0:
- resolution:
- {
- integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==,
- }
- engines: { node: ">=12" }
-
- wrappy@1.0.2:
- resolution:
- {
- integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==,
- }
-
- write-file-atomic@4.0.2:
- resolution:
- {
- integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==,
- }
- engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 }
-
- ws@8.18.2:
- resolution:
- {
- integrity: sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==,
- }
- engines: { node: ">=10.0.0" }
+ ws@8.18.3:
+ resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==}
+ engines: {node: '>=10.0.0'}
peerDependencies:
bufferutil: ^4.0.1
- utf-8-validate: ">=5.0.2"
+ utf-8-validate: '>=5.0.2'
peerDependenciesMeta:
bufferutil:
optional: true
utf-8-validate:
optional: true
- xml-name-validator@4.0.0:
- resolution:
- {
- integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==,
- }
- engines: { node: ">=12" }
-
- xmlchars@2.2.0:
- resolution:
- {
- integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==,
- }
-
y18n@5.0.8:
- resolution:
- {
- integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==,
- }
- engines: { node: ">=10" }
-
- yallist@3.1.1:
- resolution:
- {
- integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==,
- }
-
- yallist@4.0.0:
- resolution:
- {
- integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==,
- }
-
- yaml-lint@1.7.0:
- resolution:
- {
- integrity: sha512-zeBC/kskKQo4zuoGQ+IYjw6C9a/YILr2SXoEZA9jM0COrSwvwVbfTiFegT8qYBSBgOwLMWGL8sY137tOmFXGnQ==,
- }
- hasBin: true
-
- yaml@1.10.2:
- resolution:
- {
- integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==,
- }
- engines: { node: ">= 6" }
-
- yargs-parser@20.2.9:
- resolution:
- {
- integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==,
- }
- engines: { node: ">=10" }
+ resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
+ engines: {node: '>=10'}
yargs-parser@21.1.1:
- resolution:
- {
- integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==,
- }
- engines: { node: ">=12" }
-
- yargs@16.2.0:
- resolution:
- {
- integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==,
- }
- engines: { node: ">=10" }
+ resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
+ engines: {node: '>=12'}
yargs@17.7.2:
- resolution:
- {
- integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==,
- }
- engines: { node: ">=12" }
-
- yn@3.1.1:
- resolution:
- {
- integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==,
- }
- engines: { node: ">=6" }
-
- yocto-queue@0.1.0:
- resolution:
- {
- integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==,
- }
- engines: { node: ">=10" }
-
-snapshots:
- "@ampproject/remapping@2.3.0":
- dependencies:
- "@jridgewell/gen-mapping": 0.3.8
- "@jridgewell/trace-mapping": 0.3.25
+ resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
+ engines: {node: '>=12'}
- "@babel/code-frame@7.27.1":
- dependencies:
- "@babel/helper-validator-identifier": 7.27.1
- js-tokens: 4.0.0
- picocolors: 1.1.1
+ yoctocolors-cjs@2.1.3:
+ resolution: {integrity: sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==}
+ engines: {node: '>=18'}
- "@babel/compat-data@7.27.5": {}
-
- "@babel/core@7.27.4":
- dependencies:
- "@ampproject/remapping": 2.3.0
- "@babel/code-frame": 7.27.1
- "@babel/generator": 7.27.5
- "@babel/helper-compilation-targets": 7.27.2
- "@babel/helper-module-transforms": 7.27.3(@babel/core@7.27.4)
- "@babel/helpers": 7.27.6
- "@babel/parser": 7.27.5
- "@babel/template": 7.27.2
- "@babel/traverse": 7.27.4
- "@babel/types": 7.27.6
- convert-source-map: 2.0.0
- debug: 4.4.1(supports-color@5.5.0)
- gensync: 1.0.0-beta.2
- json5: 2.2.3
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
+snapshots:
- "@babel/generator@7.27.5":
- dependencies:
- "@babel/parser": 7.27.5
- "@babel/types": 7.27.6
- "@jridgewell/gen-mapping": 0.3.8
- "@jridgewell/trace-mapping": 0.3.25
- jsesc: 3.1.0
+ '@biomejs/biome@2.3.1':
+ optionalDependencies:
+ '@biomejs/cli-darwin-arm64': 2.3.1
+ '@biomejs/cli-darwin-x64': 2.3.1
+ '@biomejs/cli-linux-arm64': 2.3.1
+ '@biomejs/cli-linux-arm64-musl': 2.3.1
+ '@biomejs/cli-linux-x64': 2.3.1
+ '@biomejs/cli-linux-x64-musl': 2.3.1
+ '@biomejs/cli-win32-arm64': 2.3.1
+ '@biomejs/cli-win32-x64': 2.3.1
+
+ '@biomejs/cli-darwin-arm64@2.3.1':
+ optional: true
- "@babel/helper-compilation-targets@7.27.2":
- dependencies:
- "@babel/compat-data": 7.27.5
- "@babel/helper-validator-option": 7.27.1
- browserslist: 4.25.0
- lru-cache: 5.1.1
- semver: 6.3.1
+ '@biomejs/cli-darwin-x64@2.3.1':
+ optional: true
- "@babel/helper-module-imports@7.27.1":
- dependencies:
- "@babel/traverse": 7.27.4
- "@babel/types": 7.27.6
- transitivePeerDependencies:
- - supports-color
+ '@biomejs/cli-linux-arm64-musl@2.3.1':
+ optional: true
- "@babel/helper-module-transforms@7.27.3(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-module-imports": 7.27.1
- "@babel/helper-validator-identifier": 7.27.1
- "@babel/traverse": 7.27.4
- transitivePeerDependencies:
- - supports-color
+ '@biomejs/cli-linux-arm64@2.3.1':
+ optional: true
- "@babel/helper-plugin-utils@7.27.1": {}
+ '@biomejs/cli-linux-x64-musl@2.3.1':
+ optional: true
- "@babel/helper-string-parser@7.27.1": {}
+ '@biomejs/cli-linux-x64@2.3.1':
+ optional: true
- "@babel/helper-validator-identifier@7.27.1": {}
+ '@biomejs/cli-win32-arm64@2.3.1':
+ optional: true
- "@babel/helper-validator-option@7.27.1": {}
+ '@biomejs/cli-win32-x64@2.3.1':
+ optional: true
- "@babel/helpers@7.27.6":
+ '@bundled-es-modules/cookie@2.0.1':
dependencies:
- "@babel/template": 7.27.2
- "@babel/types": 7.27.6
+ cookie: 0.7.2
- "@babel/parser@7.27.5":
+ '@bundled-es-modules/statuses@1.0.1':
dependencies:
- "@babel/types": 7.27.6
+ statuses: 2.0.2
- "@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/aix-ppc64@0.25.12':
+ optional: true
- "@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/android-arm64@0.25.12':
+ optional: true
- "@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/android-arm@0.25.12':
+ optional: true
- "@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/android-x64@0.25.12':
+ optional: true
- "@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/darwin-arm64@0.25.12':
+ optional: true
- "@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/darwin-x64@0.25.12':
+ optional: true
- "@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/freebsd-arm64@0.25.12':
+ optional: true
- "@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/freebsd-x64@0.25.12':
+ optional: true
- "@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/linux-arm64@0.25.12':
+ optional: true
- "@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/linux-arm@0.25.12':
+ optional: true
- "@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/linux-ia32@0.25.12':
+ optional: true
- "@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/linux-loong64@0.25.12':
+ optional: true
- "@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/linux-mips64el@0.25.12':
+ optional: true
- "@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/linux-ppc64@0.25.12':
+ optional: true
- "@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/linux-riscv64@0.25.12':
+ optional: true
- "@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/linux-s390x@0.25.12':
+ optional: true
- "@babel/plugin-syntax-typescript@7.27.1(@babel/core@7.27.4)":
- dependencies:
- "@babel/core": 7.27.4
- "@babel/helper-plugin-utils": 7.27.1
+ '@esbuild/linux-x64@0.25.12':
+ optional: true
- "@babel/template@7.27.2":
- dependencies:
- "@babel/code-frame": 7.27.1
- "@babel/parser": 7.27.5
- "@babel/types": 7.27.6
+ '@esbuild/netbsd-arm64@0.25.12':
+ optional: true
- "@babel/traverse@7.27.4":
- dependencies:
- "@babel/code-frame": 7.27.1
- "@babel/generator": 7.27.5
- "@babel/parser": 7.27.5
- "@babel/template": 7.27.2
- "@babel/types": 7.27.6
- debug: 4.4.1(supports-color@5.5.0)
- globals: 11.12.0
- transitivePeerDependencies:
- - supports-color
+ '@esbuild/netbsd-x64@0.25.12':
+ optional: true
- "@babel/types@7.27.6":
- dependencies:
- "@babel/helper-string-parser": 7.27.1
- "@babel/helper-validator-identifier": 7.27.1
+ '@esbuild/openbsd-arm64@0.25.12':
+ optional: true
- "@bcoe/v8-coverage@0.2.3": {}
+ '@esbuild/openbsd-x64@0.25.12':
+ optional: true
- "@commitlint/cli@17.8.1":
- dependencies:
- "@commitlint/format": 17.8.1
- "@commitlint/lint": 17.8.1
- "@commitlint/load": 17.8.1
- "@commitlint/read": 17.8.1
- "@commitlint/types": 17.8.1
- execa: 5.1.1
- lodash.isfunction: 3.0.9
- resolve-from: 5.0.0
- resolve-global: 1.0.0
- yargs: 17.7.2
- transitivePeerDependencies:
- - "@swc/core"
- - "@swc/wasm"
+ '@esbuild/openharmony-arm64@0.25.12':
+ optional: true
- "@commitlint/config-conventional@17.8.1":
- dependencies:
- conventional-changelog-conventionalcommits: 6.1.0
+ '@esbuild/sunos-x64@0.25.12':
+ optional: true
- "@commitlint/config-validator@17.8.1":
- dependencies:
- "@commitlint/types": 17.8.1
- ajv: 8.17.1
+ '@esbuild/win32-arm64@0.25.12':
+ optional: true
- "@commitlint/ensure@17.8.1":
- dependencies:
- "@commitlint/types": 17.8.1
- lodash.camelcase: 4.3.0
- lodash.kebabcase: 4.1.1
- lodash.snakecase: 4.1.1
- lodash.startcase: 4.4.0
- lodash.upperfirst: 4.3.1
+ '@esbuild/win32-ia32@0.25.12':
+ optional: true
- "@commitlint/execute-rule@17.8.1": {}
+ '@esbuild/win32-x64@0.25.12':
+ optional: true
- "@commitlint/format@17.8.1":
- dependencies:
- "@commitlint/types": 17.8.1
- chalk: 4.1.2
+ '@inquirer/ansi@1.0.2': {}
- "@commitlint/is-ignored@17.8.1":
+ '@inquirer/confirm@5.1.21(@types/node@18.19.130)':
dependencies:
- "@commitlint/types": 17.8.1
- semver: 7.5.4
+ '@inquirer/core': 10.3.2(@types/node@18.19.130)
+ '@inquirer/type': 3.0.10(@types/node@18.19.130)
+ optionalDependencies:
+ '@types/node': 18.19.130
- "@commitlint/lint@17.8.1":
+ '@inquirer/core@10.3.2(@types/node@18.19.130)':
dependencies:
- "@commitlint/is-ignored": 17.8.1
- "@commitlint/parse": 17.8.1
- "@commitlint/rules": 17.8.1
- "@commitlint/types": 17.8.1
+ '@inquirer/ansi': 1.0.2
+ '@inquirer/figures': 1.0.15
+ '@inquirer/type': 3.0.10(@types/node@18.19.130)
+ cli-width: 4.1.0
+ mute-stream: 2.0.0
+ signal-exit: 4.1.0
+ wrap-ansi: 6.2.0
+ yoctocolors-cjs: 2.1.3
+ optionalDependencies:
+ '@types/node': 18.19.130
- "@commitlint/load@17.8.1":
- dependencies:
- "@commitlint/config-validator": 17.8.1
- "@commitlint/execute-rule": 17.8.1
- "@commitlint/resolve-extends": 17.8.1
- "@commitlint/types": 17.8.1
- "@types/node": 20.5.1
- chalk: 4.1.2
- cosmiconfig: 8.3.6(typescript@4.9.5)
- cosmiconfig-typescript-loader: 4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@4.9.5))(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))(typescript@4.9.5)
- lodash.isplainobject: 4.0.6
- lodash.merge: 4.6.2
- lodash.uniq: 4.5.0
- resolve-from: 5.0.0
- ts-node: 10.9.2(@types/node@20.5.1)(typescript@4.9.5)
- typescript: 4.9.5
- transitivePeerDependencies:
- - "@swc/core"
- - "@swc/wasm"
+ '@inquirer/figures@1.0.15': {}
- "@commitlint/message@17.8.1": {}
+ '@inquirer/type@3.0.10(@types/node@18.19.130)':
+ optionalDependencies:
+ '@types/node': 18.19.130
- "@commitlint/parse@17.8.1":
+ '@jridgewell/gen-mapping@0.3.13':
dependencies:
- "@commitlint/types": 17.8.1
- conventional-changelog-angular: 6.0.0
- conventional-commits-parser: 4.0.0
+ '@jridgewell/sourcemap-codec': 1.5.5
+ '@jridgewell/trace-mapping': 0.3.31
- "@commitlint/read@17.8.1":
- dependencies:
- "@commitlint/top-level": 17.8.1
- "@commitlint/types": 17.8.1
- fs-extra: 11.3.0
- git-raw-commits: 2.0.11
- minimist: 1.2.8
+ '@jridgewell/resolve-uri@3.1.2': {}
- "@commitlint/resolve-extends@17.8.1":
- dependencies:
- "@commitlint/config-validator": 17.8.1
- "@commitlint/types": 17.8.1
- import-fresh: 3.3.1
- lodash.mergewith: 4.6.2
- resolve-from: 5.0.0
- resolve-global: 1.0.0
-
- "@commitlint/rules@17.8.1":
+ '@jridgewell/source-map@0.3.11':
dependencies:
- "@commitlint/ensure": 17.8.1
- "@commitlint/message": 17.8.1
- "@commitlint/to-lines": 17.8.1
- "@commitlint/types": 17.8.1
- execa: 5.1.1
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
- "@commitlint/to-lines@17.8.1": {}
+ '@jridgewell/sourcemap-codec@1.5.5': {}
- "@commitlint/top-level@17.8.1":
+ '@jridgewell/trace-mapping@0.3.31':
dependencies:
- find-up: 5.0.0
+ '@jridgewell/resolve-uri': 3.1.2
+ '@jridgewell/sourcemap-codec': 1.5.5
- "@commitlint/types@17.8.1":
+ '@mswjs/interceptors@0.39.8':
dependencies:
- chalk: 4.1.2
+ '@open-draft/deferred-promise': 2.2.0
+ '@open-draft/logger': 0.3.0
+ '@open-draft/until': 2.1.0
+ is-node-process: 1.2.0
+ outvariant: 1.4.3
+ strict-event-emitter: 0.5.1
- "@cspotcode/source-map-support@0.8.1":
- dependencies:
- "@jridgewell/trace-mapping": 0.3.9
+ '@open-draft/deferred-promise@2.2.0': {}
- "@deepgram/captions@1.2.0":
+ '@open-draft/logger@0.3.0':
dependencies:
- dayjs: 1.11.13
+ is-node-process: 1.2.0
+ outvariant: 1.4.3
- "@discoveryjs/json-ext@0.5.7": {}
+ '@open-draft/until@2.1.0': {}
- "@eslint-community/eslint-utils@4.7.0(eslint@8.57.1)":
+ '@playwright/test@1.56.1':
dependencies:
- eslint: 8.57.1
- eslint-visitor-keys: 3.4.3
+ playwright: 1.56.1
- "@eslint-community/regexpp@4.12.1": {}
+ '@rollup/rollup-android-arm-eabi@4.53.3':
+ optional: true
- "@eslint/eslintrc@2.1.4":
- dependencies:
- ajv: 6.12.6
- debug: 4.4.1(supports-color@5.5.0)
- espree: 9.6.1
- globals: 13.24.0
- ignore: 5.3.2
- import-fresh: 3.3.1
- js-yaml: 4.1.0
- minimatch: 3.1.2
- strip-json-comments: 3.1.1
- transitivePeerDependencies:
- - supports-color
+ '@rollup/rollup-android-arm64@4.53.3':
+ optional: true
- "@eslint/js@8.57.1": {}
+ '@rollup/rollup-darwin-arm64@4.53.3':
+ optional: true
- "@humanwhocodes/config-array@0.13.0":
- dependencies:
- "@humanwhocodes/object-schema": 2.0.3
- debug: 4.4.1(supports-color@5.5.0)
- minimatch: 3.1.2
- transitivePeerDependencies:
- - supports-color
+ '@rollup/rollup-darwin-x64@4.53.3':
+ optional: true
- "@humanwhocodes/module-importer@1.0.1": {}
+ '@rollup/rollup-freebsd-arm64@4.53.3':
+ optional: true
- "@humanwhocodes/object-schema@2.0.3": {}
+ '@rollup/rollup-freebsd-x64@4.53.3':
+ optional: true
- "@isaacs/balanced-match@4.0.1": {}
+ '@rollup/rollup-linux-arm-gnueabihf@4.53.3':
+ optional: true
- "@isaacs/brace-expansion@5.0.0":
- dependencies:
- "@isaacs/balanced-match": 4.0.1
+ '@rollup/rollup-linux-arm-musleabihf@4.53.3':
+ optional: true
- "@isaacs/cliui@8.0.2":
- dependencies:
- string-width: 5.1.2
- string-width-cjs: string-width@4.2.3
- strip-ansi: 7.1.0
- strip-ansi-cjs: strip-ansi@6.0.1
- wrap-ansi: 8.1.0
- wrap-ansi-cjs: wrap-ansi@7.0.0
-
- "@istanbuljs/load-nyc-config@1.1.0":
- dependencies:
- camelcase: 5.3.1
- find-up: 4.1.0
- get-package-type: 0.1.0
- js-yaml: 3.14.1
- resolve-from: 5.0.0
+ '@rollup/rollup-linux-arm64-gnu@4.53.3':
+ optional: true
- "@istanbuljs/schema@0.1.3": {}
+ '@rollup/rollup-linux-arm64-musl@4.53.3':
+ optional: true
- "@jest/console@29.7.0":
- dependencies:
- "@jest/types": 29.6.3
- "@types/node": 18.19.112
- chalk: 4.1.2
- jest-message-util: 29.7.0
- jest-util: 29.7.0
- slash: 3.0.0
+ '@rollup/rollup-linux-loong64-gnu@4.53.3':
+ optional: true
- "@jest/core@29.7.0(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))":
- dependencies:
- "@jest/console": 29.7.0
- "@jest/reporters": 29.7.0
- "@jest/test-result": 29.7.0
- "@jest/transform": 29.7.0
- "@jest/types": 29.6.3
- "@types/node": 18.19.112
- ansi-escapes: 4.3.2
- chalk: 4.1.2
- ci-info: 3.9.0
- exit: 0.1.2
- graceful-fs: 4.2.11
- jest-changed-files: 29.7.0
- jest-config: 29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))
- jest-haste-map: 29.7.0
- jest-message-util: 29.7.0
- jest-regex-util: 29.6.3
- jest-resolve: 29.7.0
- jest-resolve-dependencies: 29.7.0
- jest-runner: 29.7.0
- jest-runtime: 29.7.0
- jest-snapshot: 29.7.0
- jest-util: 29.7.0
- jest-validate: 29.7.0
- jest-watcher: 29.7.0
- micromatch: 4.0.8
- pretty-format: 29.7.0
- slash: 3.0.0
- strip-ansi: 6.0.1
- transitivePeerDependencies:
- - babel-plugin-macros
- - supports-color
- - ts-node
+ '@rollup/rollup-linux-ppc64-gnu@4.53.3':
+ optional: true
- "@jest/environment@29.7.0":
- dependencies:
- "@jest/fake-timers": 29.7.0
- "@jest/types": 29.6.3
- "@types/node": 18.19.112
- jest-mock: 29.7.0
+ '@rollup/rollup-linux-riscv64-gnu@4.53.3':
+ optional: true
- "@jest/expect-utils@29.7.0":
- dependencies:
- jest-get-type: 29.6.3
+ '@rollup/rollup-linux-riscv64-musl@4.53.3':
+ optional: true
- "@jest/expect@29.7.0":
- dependencies:
- expect: 29.7.0
- jest-snapshot: 29.7.0
- transitivePeerDependencies:
- - supports-color
+ '@rollup/rollup-linux-s390x-gnu@4.53.3':
+ optional: true
- "@jest/fake-timers@29.7.0":
- dependencies:
- "@jest/types": 29.6.3
- "@sinonjs/fake-timers": 10.3.0
- "@types/node": 18.19.112
- jest-message-util: 29.7.0
- jest-mock: 29.7.0
- jest-util: 29.7.0
-
- "@jest/globals@29.7.0":
- dependencies:
- "@jest/environment": 29.7.0
- "@jest/expect": 29.7.0
- "@jest/types": 29.6.3
- jest-mock: 29.7.0
- transitivePeerDependencies:
- - supports-color
+ '@rollup/rollup-linux-x64-gnu@4.53.3':
+ optional: true
- "@jest/reporters@29.7.0":
- dependencies:
- "@bcoe/v8-coverage": 0.2.3
- "@jest/console": 29.7.0
- "@jest/test-result": 29.7.0
- "@jest/transform": 29.7.0
- "@jest/types": 29.6.3
- "@jridgewell/trace-mapping": 0.3.25
- "@types/node": 18.19.112
- chalk: 4.1.2
- collect-v8-coverage: 1.0.2
- exit: 0.1.2
- glob: 7.2.3
- graceful-fs: 4.2.11
- istanbul-lib-coverage: 3.2.2
- istanbul-lib-instrument: 6.0.3
- istanbul-lib-report: 3.0.1
- istanbul-lib-source-maps: 4.0.1
- istanbul-reports: 3.1.7
- jest-message-util: 29.7.0
- jest-util: 29.7.0
- jest-worker: 29.7.0
- slash: 3.0.0
- string-length: 4.0.2
- strip-ansi: 6.0.1
- v8-to-istanbul: 9.3.0
- transitivePeerDependencies:
- - supports-color
+ '@rollup/rollup-linux-x64-musl@4.53.3':
+ optional: true
- "@jest/schemas@29.6.3":
- dependencies:
- "@sinclair/typebox": 0.27.8
+ '@rollup/rollup-openharmony-arm64@4.53.3':
+ optional: true
- "@jest/source-map@29.6.3":
- dependencies:
- "@jridgewell/trace-mapping": 0.3.25
- callsites: 3.1.0
- graceful-fs: 4.2.11
+ '@rollup/rollup-win32-arm64-msvc@4.53.3':
+ optional: true
- "@jest/test-result@29.7.0":
- dependencies:
- "@jest/console": 29.7.0
- "@jest/types": 29.6.3
- "@types/istanbul-lib-coverage": 2.0.6
- collect-v8-coverage: 1.0.2
+ '@rollup/rollup-win32-ia32-msvc@4.53.3':
+ optional: true
- "@jest/test-sequencer@29.7.0":
- dependencies:
- "@jest/test-result": 29.7.0
- graceful-fs: 4.2.11
- jest-haste-map: 29.7.0
- slash: 3.0.0
+ '@rollup/rollup-win32-x64-gnu@4.53.3':
+ optional: true
- "@jest/transform@29.7.0":
+ '@rollup/rollup-win32-x64-msvc@4.53.3':
+ optional: true
+
+ '@types/chai@5.2.3':
dependencies:
- "@babel/core": 7.27.4
- "@jest/types": 29.6.3
- "@jridgewell/trace-mapping": 0.3.25
- babel-plugin-istanbul: 6.1.1
- chalk: 4.1.2
- convert-source-map: 2.0.0
- fast-json-stable-stringify: 2.1.0
- graceful-fs: 4.2.11
- jest-haste-map: 29.7.0
- jest-regex-util: 29.6.3
- jest-util: 29.7.0
- micromatch: 4.0.8
- pirates: 4.0.7
- slash: 3.0.0
- write-file-atomic: 4.0.2
- transitivePeerDependencies:
- - supports-color
+ '@types/deep-eql': 4.0.2
+ assertion-error: 2.0.1
+
+ '@types/cookie@0.6.0': {}
- "@jest/types@29.6.3":
+ '@types/deep-eql@4.0.2': {}
+
+ '@types/eslint-scope@3.7.7':
dependencies:
- "@jest/schemas": 29.6.3
- "@types/istanbul-lib-coverage": 2.0.6
- "@types/istanbul-reports": 3.0.4
- "@types/node": 18.19.112
- "@types/yargs": 17.0.33
- chalk: 4.1.2
+ '@types/eslint': 9.6.1
+ '@types/estree': 1.0.8
- "@jridgewell/gen-mapping@0.3.8":
+ '@types/eslint@9.6.1':
dependencies:
- "@jridgewell/set-array": 1.2.1
- "@jridgewell/sourcemap-codec": 1.5.0
- "@jridgewell/trace-mapping": 0.3.25
+ '@types/estree': 1.0.8
+ '@types/json-schema': 7.0.15
- "@jridgewell/resolve-uri@3.1.2": {}
+ '@types/estree@1.0.8': {}
- "@jridgewell/set-array@1.2.1": {}
+ '@types/json-schema@7.0.15': {}
- "@jridgewell/source-map@0.3.6":
+ '@types/node@18.19.130':
dependencies:
- "@jridgewell/gen-mapping": 0.3.8
- "@jridgewell/trace-mapping": 0.3.25
+ undici-types: 5.26.5
- "@jridgewell/sourcemap-codec@1.5.0": {}
+ '@types/statuses@2.0.6': {}
- "@jridgewell/trace-mapping@0.3.25":
+ '@types/ws@8.18.1':
dependencies:
- "@jridgewell/resolve-uri": 3.1.2
- "@jridgewell/sourcemap-codec": 1.5.0
+ '@types/node': 18.19.130
- "@jridgewell/trace-mapping@0.3.9":
+ '@vitest/expect@3.2.4':
dependencies:
- "@jridgewell/resolve-uri": 3.1.2
- "@jridgewell/sourcemap-codec": 1.5.0
+ '@types/chai': 5.2.3
+ '@vitest/spy': 3.2.4
+ '@vitest/utils': 3.2.4
+ chai: 5.3.3
+ tinyrainbow: 2.0.0
- "@nodelib/fs.scandir@2.1.5":
+ '@vitest/mocker@3.2.4(msw@2.11.2(@types/node@18.19.130)(typescript@5.7.3))(vite@7.2.2(@types/node@18.19.130)(terser@5.44.1))':
dependencies:
- "@nodelib/fs.stat": 2.0.5
- run-parallel: 1.2.0
-
- "@nodelib/fs.stat@2.0.5": {}
+ '@vitest/spy': 3.2.4
+ estree-walker: 3.0.3
+ magic-string: 0.30.21
+ optionalDependencies:
+ msw: 2.11.2(@types/node@18.19.130)(typescript@5.7.3)
+ vite: 7.2.2(@types/node@18.19.130)(terser@5.44.1)
- "@nodelib/fs.walk@1.2.8":
+ '@vitest/pretty-format@3.2.4':
dependencies:
- "@nodelib/fs.scandir": 2.1.5
- fastq: 1.19.1
-
- "@sinclair/typebox@0.27.8": {}
+ tinyrainbow: 2.0.0
- "@sinonjs/commons@3.0.1":
+ '@vitest/runner@3.2.4':
dependencies:
- type-detect: 4.0.8
+ '@vitest/utils': 3.2.4
+ pathe: 2.0.3
+ strip-literal: 3.1.0
- "@sinonjs/fake-timers@10.3.0":
+ '@vitest/snapshot@3.2.4':
dependencies:
- "@sinonjs/commons": 3.0.1
+ '@vitest/pretty-format': 3.2.4
+ magic-string: 0.30.21
+ pathe: 2.0.3
- "@tootallnate/once@2.0.0": {}
+ '@vitest/spy@3.2.4':
+ dependencies:
+ tinyspy: 4.0.4
- "@tsconfig/node10@1.0.11": {}
+ '@vitest/utils@3.2.4':
+ dependencies:
+ '@vitest/pretty-format': 3.2.4
+ loupe: 3.2.1
+ tinyrainbow: 2.0.0
- "@tsconfig/node12@1.0.11": {}
+ '@webassemblyjs/ast@1.14.1':
+ dependencies:
+ '@webassemblyjs/helper-numbers': 1.13.2
+ '@webassemblyjs/helper-wasm-bytecode': 1.13.2
- "@tsconfig/node14@1.0.3": {}
+ '@webassemblyjs/floating-point-hex-parser@1.13.2': {}
- "@tsconfig/node16@1.0.4": {}
+ '@webassemblyjs/helper-api-error@1.13.2': {}
- "@types/babel__core@7.20.5":
- dependencies:
- "@babel/parser": 7.27.5
- "@babel/types": 7.27.6
- "@types/babel__generator": 7.27.0
- "@types/babel__template": 7.4.4
- "@types/babel__traverse": 7.20.7
+ '@webassemblyjs/helper-buffer@1.14.1': {}
- "@types/babel__generator@7.27.0":
+ '@webassemblyjs/helper-numbers@1.13.2':
dependencies:
- "@babel/types": 7.27.6
+ '@webassemblyjs/floating-point-hex-parser': 1.13.2
+ '@webassemblyjs/helper-api-error': 1.13.2
+ '@xtuc/long': 4.2.2
- "@types/babel__template@7.4.4":
- dependencies:
- "@babel/parser": 7.27.5
- "@babel/types": 7.27.6
+ '@webassemblyjs/helper-wasm-bytecode@1.13.2': {}
- "@types/babel__traverse@7.20.7":
+ '@webassemblyjs/helper-wasm-section@1.14.1':
dependencies:
- "@babel/types": 7.27.6
+ '@webassemblyjs/ast': 1.14.1
+ '@webassemblyjs/helper-buffer': 1.14.1
+ '@webassemblyjs/helper-wasm-bytecode': 1.13.2
+ '@webassemblyjs/wasm-gen': 1.14.1
- "@types/eslint-scope@3.7.7":
+ '@webassemblyjs/ieee754@1.13.2':
dependencies:
- "@types/eslint": 9.6.1
- "@types/estree": 1.0.8
+ '@xtuc/ieee754': 1.2.0
- "@types/eslint@9.6.1":
+ '@webassemblyjs/leb128@1.13.2':
dependencies:
- "@types/estree": 1.0.8
- "@types/json-schema": 7.0.15
+ '@xtuc/long': 4.2.2
- "@types/estree@1.0.8": {}
+ '@webassemblyjs/utf8@1.13.2': {}
- "@types/graceful-fs@4.1.9":
+ '@webassemblyjs/wasm-edit@1.14.1':
dependencies:
- "@types/node": 18.19.112
-
- "@types/istanbul-lib-coverage@2.0.6": {}
+ '@webassemblyjs/ast': 1.14.1
+ '@webassemblyjs/helper-buffer': 1.14.1
+ '@webassemblyjs/helper-wasm-bytecode': 1.13.2
+ '@webassemblyjs/helper-wasm-section': 1.14.1
+ '@webassemblyjs/wasm-gen': 1.14.1
+ '@webassemblyjs/wasm-opt': 1.14.1
+ '@webassemblyjs/wasm-parser': 1.14.1
+ '@webassemblyjs/wast-printer': 1.14.1
- "@types/istanbul-lib-report@3.0.3":
+ '@webassemblyjs/wasm-gen@1.14.1':
dependencies:
- "@types/istanbul-lib-coverage": 2.0.6
+ '@webassemblyjs/ast': 1.14.1
+ '@webassemblyjs/helper-wasm-bytecode': 1.13.2
+ '@webassemblyjs/ieee754': 1.13.2
+ '@webassemblyjs/leb128': 1.13.2
+ '@webassemblyjs/utf8': 1.13.2
- "@types/istanbul-reports@3.0.4":
+ '@webassemblyjs/wasm-opt@1.14.1':
dependencies:
- "@types/istanbul-lib-report": 3.0.3
+ '@webassemblyjs/ast': 1.14.1
+ '@webassemblyjs/helper-buffer': 1.14.1
+ '@webassemblyjs/wasm-gen': 1.14.1
+ '@webassemblyjs/wasm-parser': 1.14.1
- "@types/jest@29.5.14":
+ '@webassemblyjs/wasm-parser@1.14.1':
dependencies:
- expect: 29.7.0
- pretty-format: 29.7.0
+ '@webassemblyjs/ast': 1.14.1
+ '@webassemblyjs/helper-api-error': 1.13.2
+ '@webassemblyjs/helper-wasm-bytecode': 1.13.2
+ '@webassemblyjs/ieee754': 1.13.2
+ '@webassemblyjs/leb128': 1.13.2
+ '@webassemblyjs/utf8': 1.13.2
- "@types/jsdom@20.0.1":
+ '@webassemblyjs/wast-printer@1.14.1':
dependencies:
- "@types/node": 18.19.112
- "@types/tough-cookie": 4.0.5
- parse5: 7.3.0
+ '@webassemblyjs/ast': 1.14.1
+ '@xtuc/long': 4.2.2
- "@types/json-schema@7.0.15": {}
+ '@xtuc/ieee754@1.2.0': {}
- "@types/minimist@1.2.5": {}
+ '@xtuc/long@4.2.2': {}
- "@types/node@18.19.112":
+ acorn-import-phases@1.0.4(acorn@8.15.0):
dependencies:
- undici-types: 5.26.5
+ acorn: 8.15.0
- "@types/node@20.5.1": {}
+ acorn@8.15.0: {}
- "@types/normalize-package-data@2.4.4": {}
+ ajv-formats@2.1.1(ajv@8.17.1):
+ optionalDependencies:
+ ajv: 8.17.1
- "@types/parse-json@4.0.2": {}
+ ajv-keywords@5.1.0(ajv@8.17.1):
+ dependencies:
+ ajv: 8.17.1
+ fast-deep-equal: 3.1.3
- "@types/stack-utils@2.0.3": {}
+ ajv@8.17.1:
+ dependencies:
+ fast-deep-equal: 3.1.3
+ fast-uri: 3.1.0
+ json-schema-traverse: 1.0.0
+ require-from-string: 2.0.2
- "@types/tough-cookie@4.0.5": {}
+ ansi-regex@5.0.1: {}
- "@types/ws@8.18.1":
+ ansi-styles@4.3.0:
dependencies:
- "@types/node": 18.19.112
+ color-convert: 2.0.1
- "@types/yargs-parser@21.0.3": {}
+ assertion-error@2.0.1: {}
- "@types/yargs@17.0.33":
- dependencies:
- "@types/yargs-parser": 21.0.3
+ baseline-browser-mapping@2.8.29: {}
- "@typescript-eslint/eslint-plugin@8.34.0(@typescript-eslint/parser@8.34.0(eslint@8.57.1)(typescript@4.9.5))(eslint@8.57.1)(typescript@4.9.5)":
+ braces@3.0.3:
dependencies:
- "@eslint-community/regexpp": 4.12.1
- "@typescript-eslint/parser": 8.34.0(eslint@8.57.1)(typescript@4.9.5)
- "@typescript-eslint/scope-manager": 8.34.0
- "@typescript-eslint/type-utils": 8.34.0(eslint@8.57.1)(typescript@4.9.5)
- "@typescript-eslint/utils": 8.34.0(eslint@8.57.1)(typescript@4.9.5)
- "@typescript-eslint/visitor-keys": 8.34.0
- eslint: 8.57.1
- graphemer: 1.4.0
- ignore: 7.0.5
- natural-compare: 1.4.0
- ts-api-utils: 2.1.0(typescript@4.9.5)
- typescript: 4.9.5
- transitivePeerDependencies:
- - supports-color
+ fill-range: 7.1.1
- "@typescript-eslint/parser@8.34.0(eslint@8.57.1)(typescript@4.9.5)":
+ browserslist@4.28.0:
dependencies:
- "@typescript-eslint/scope-manager": 8.34.0
- "@typescript-eslint/types": 8.34.0
- "@typescript-eslint/typescript-estree": 8.34.0(typescript@4.9.5)
- "@typescript-eslint/visitor-keys": 8.34.0
- debug: 4.4.1(supports-color@5.5.0)
- eslint: 8.57.1
- typescript: 4.9.5
- transitivePeerDependencies:
- - supports-color
+ baseline-browser-mapping: 2.8.29
+ caniuse-lite: 1.0.30001756
+ electron-to-chromium: 1.5.256
+ node-releases: 2.0.27
+ update-browserslist-db: 1.1.4(browserslist@4.28.0)
- "@typescript-eslint/project-service@8.34.0(typescript@4.9.5)":
- dependencies:
- "@typescript-eslint/tsconfig-utils": 8.34.0(typescript@4.9.5)
- "@typescript-eslint/types": 8.34.0
- debug: 4.4.1(supports-color@5.5.0)
- typescript: 4.9.5
- transitivePeerDependencies:
- - supports-color
+ buffer-from@1.1.2: {}
- "@typescript-eslint/scope-manager@8.34.0":
- dependencies:
- "@typescript-eslint/types": 8.34.0
- "@typescript-eslint/visitor-keys": 8.34.0
+ cac@6.7.14: {}
- "@typescript-eslint/tsconfig-utils@8.34.0(typescript@4.9.5)":
+ caniuse-lite@1.0.30001756: {}
+
+ chai@5.3.3:
dependencies:
- typescript: 4.9.5
+ assertion-error: 2.0.1
+ check-error: 2.1.1
+ deep-eql: 5.0.2
+ loupe: 3.2.1
+ pathval: 2.0.1
- "@typescript-eslint/type-utils@8.34.0(eslint@8.57.1)(typescript@4.9.5)":
+ chalk@4.1.2:
dependencies:
- "@typescript-eslint/typescript-estree": 8.34.0(typescript@4.9.5)
- "@typescript-eslint/utils": 8.34.0(eslint@8.57.1)(typescript@4.9.5)
- debug: 4.4.1(supports-color@5.5.0)
- eslint: 8.57.1
- ts-api-utils: 2.1.0(typescript@4.9.5)
- typescript: 4.9.5
- transitivePeerDependencies:
- - supports-color
+ ansi-styles: 4.3.0
+ supports-color: 7.2.0
- "@typescript-eslint/types@8.34.0": {}
+ check-error@2.1.1: {}
- "@typescript-eslint/typescript-estree@8.34.0(typescript@4.9.5)":
- dependencies:
- "@typescript-eslint/project-service": 8.34.0(typescript@4.9.5)
- "@typescript-eslint/tsconfig-utils": 8.34.0(typescript@4.9.5)
- "@typescript-eslint/types": 8.34.0
- "@typescript-eslint/visitor-keys": 8.34.0
- debug: 4.4.1(supports-color@5.5.0)
- fast-glob: 3.3.3
- is-glob: 4.0.3
- minimatch: 9.0.5
- semver: 7.7.2
- ts-api-utils: 2.1.0(typescript@4.9.5)
- typescript: 4.9.5
- transitivePeerDependencies:
- - supports-color
+ chrome-trace-event@1.0.4: {}
- "@typescript-eslint/utils@8.34.0(eslint@8.57.1)(typescript@4.9.5)":
- dependencies:
- "@eslint-community/eslint-utils": 4.7.0(eslint@8.57.1)
- "@typescript-eslint/scope-manager": 8.34.0
- "@typescript-eslint/types": 8.34.0
- "@typescript-eslint/typescript-estree": 8.34.0(typescript@4.9.5)
- eslint: 8.57.1
- typescript: 4.9.5
- transitivePeerDependencies:
- - supports-color
+ cli-width@4.1.0: {}
- "@typescript-eslint/visitor-keys@8.34.0":
+ cliui@8.0.1:
dependencies:
- "@typescript-eslint/types": 8.34.0
- eslint-visitor-keys: 4.2.1
-
- "@ungap/structured-clone@1.3.0": {}
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wrap-ansi: 7.0.0
- "@webassemblyjs/ast@1.14.1":
+ color-convert@2.0.1:
dependencies:
- "@webassemblyjs/helper-numbers": 1.13.2
- "@webassemblyjs/helper-wasm-bytecode": 1.13.2
+ color-name: 1.1.4
- "@webassemblyjs/floating-point-hex-parser@1.13.2": {}
+ color-name@1.1.4: {}
- "@webassemblyjs/helper-api-error@1.13.2": {}
+ commander@2.20.3: {}
- "@webassemblyjs/helper-buffer@1.14.1": {}
+ cookie@0.7.2: {}
- "@webassemblyjs/helper-numbers@1.13.2":
+ debug@4.4.3:
dependencies:
- "@webassemblyjs/floating-point-hex-parser": 1.13.2
- "@webassemblyjs/helper-api-error": 1.13.2
- "@xtuc/long": 4.2.2
+ ms: 2.1.3
- "@webassemblyjs/helper-wasm-bytecode@1.13.2": {}
+ deep-eql@5.0.2: {}
- "@webassemblyjs/helper-wasm-section@1.14.1":
- dependencies:
- "@webassemblyjs/ast": 1.14.1
- "@webassemblyjs/helper-buffer": 1.14.1
- "@webassemblyjs/helper-wasm-bytecode": 1.13.2
- "@webassemblyjs/wasm-gen": 1.14.1
+ electron-to-chromium@1.5.256: {}
- "@webassemblyjs/ieee754@1.13.2":
- dependencies:
- "@xtuc/ieee754": 1.2.0
+ emoji-regex@8.0.0: {}
- "@webassemblyjs/leb128@1.13.2":
- dependencies:
- "@xtuc/long": 4.2.2
-
- "@webassemblyjs/utf8@1.13.2": {}
-
- "@webassemblyjs/wasm-edit@1.14.1":
- dependencies:
- "@webassemblyjs/ast": 1.14.1
- "@webassemblyjs/helper-buffer": 1.14.1
- "@webassemblyjs/helper-wasm-bytecode": 1.13.2
- "@webassemblyjs/helper-wasm-section": 1.14.1
- "@webassemblyjs/wasm-gen": 1.14.1
- "@webassemblyjs/wasm-opt": 1.14.1
- "@webassemblyjs/wasm-parser": 1.14.1
- "@webassemblyjs/wast-printer": 1.14.1
-
- "@webassemblyjs/wasm-gen@1.14.1":
- dependencies:
- "@webassemblyjs/ast": 1.14.1
- "@webassemblyjs/helper-wasm-bytecode": 1.13.2
- "@webassemblyjs/ieee754": 1.13.2
- "@webassemblyjs/leb128": 1.13.2
- "@webassemblyjs/utf8": 1.13.2
-
- "@webassemblyjs/wasm-opt@1.14.1":
- dependencies:
- "@webassemblyjs/ast": 1.14.1
- "@webassemblyjs/helper-buffer": 1.14.1
- "@webassemblyjs/wasm-gen": 1.14.1
- "@webassemblyjs/wasm-parser": 1.14.1
-
- "@webassemblyjs/wasm-parser@1.14.1":
- dependencies:
- "@webassemblyjs/ast": 1.14.1
- "@webassemblyjs/helper-api-error": 1.13.2
- "@webassemblyjs/helper-wasm-bytecode": 1.13.2
- "@webassemblyjs/ieee754": 1.13.2
- "@webassemblyjs/leb128": 1.13.2
- "@webassemblyjs/utf8": 1.13.2
-
- "@webassemblyjs/wast-printer@1.14.1":
- dependencies:
- "@webassemblyjs/ast": 1.14.1
- "@xtuc/long": 4.2.2
-
- "@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0)(webpack@5.99.9)":
- dependencies:
- webpack: 5.99.9(webpack-cli@4.10.0)
- webpack-cli: 4.10.0(webpack@5.99.9)
-
- "@webpack-cli/info@1.5.0(webpack-cli@4.10.0)":
- dependencies:
- envinfo: 7.14.0
- webpack-cli: 4.10.0(webpack@5.99.9)
-
- "@webpack-cli/serve@1.7.0(webpack-cli@4.10.0)":
- dependencies:
- webpack-cli: 4.10.0(webpack@5.99.9)
-
- "@xtuc/ieee754@1.2.0": {}
-
- "@xtuc/long@4.2.2": {}
-
- JSONStream@1.3.5:
- dependencies:
- jsonparse: 1.3.1
- through: 2.3.8
-
- abab@2.0.6: {}
-
- acorn-globals@7.0.1:
- dependencies:
- acorn: 8.15.0
- acorn-walk: 8.3.4
-
- acorn-jsx@5.3.2(acorn@8.15.0):
- dependencies:
- acorn: 8.15.0
-
- acorn-walk@8.3.4:
- dependencies:
- acorn: 8.15.0
-
- acorn@8.15.0: {}
-
- agent-base@6.0.2:
- dependencies:
- debug: 4.4.1(supports-color@5.5.0)
- transitivePeerDependencies:
- - supports-color
-
- ajv-formats@2.1.1(ajv@8.17.1):
- optionalDependencies:
- ajv: 8.17.1
-
- ajv-keywords@5.1.0(ajv@8.17.1):
- dependencies:
- ajv: 8.17.1
- fast-deep-equal: 3.1.3
-
- ajv@6.12.6:
- dependencies:
- fast-deep-equal: 3.1.3
- fast-json-stable-stringify: 2.1.0
- json-schema-traverse: 0.4.1
- uri-js: 4.4.1
-
- ajv@8.17.1:
- dependencies:
- fast-deep-equal: 3.1.3
- fast-uri: 3.0.6
- json-schema-traverse: 1.0.0
- require-from-string: 2.0.2
-
- ansi-escapes@4.3.2:
- dependencies:
- type-fest: 0.21.3
-
- ansi-regex@5.0.1: {}
-
- ansi-regex@6.1.0: {}
-
- ansi-styles@3.2.1:
- dependencies:
- color-convert: 1.9.3
-
- ansi-styles@4.3.0:
- dependencies:
- color-convert: 2.0.1
-
- ansi-styles@5.2.0: {}
-
- ansi-styles@6.2.1: {}
-
- anymatch@3.1.3:
- dependencies:
- normalize-path: 3.0.0
- picomatch: 2.3.1
-
- arg@4.1.3: {}
-
- argparse@1.0.10:
- dependencies:
- sprintf-js: 1.0.3
-
- argparse@2.0.1: {}
-
- array-buffer-byte-length@1.0.2:
- dependencies:
- call-bound: 1.0.4
- is-array-buffer: 3.0.5
-
- array-ify@1.0.0: {}
-
- array-union@2.1.0: {}
-
- arraybuffer.prototype.slice@1.0.4:
- dependencies:
- array-buffer-byte-length: 1.0.2
- call-bind: 1.0.8
- define-properties: 1.2.1
- es-abstract: 1.24.0
- es-errors: 1.3.0
- get-intrinsic: 1.3.0
- is-array-buffer: 3.0.5
-
- arrify@1.0.1: {}
-
- async-function@1.0.0: {}
-
- async@3.2.6: {}
-
- asynckit@0.4.0: {}
-
- available-typed-arrays@1.0.7:
- dependencies:
- possible-typed-array-names: 1.1.0
-
- babel-jest@29.7.0(@babel/core@7.27.4):
- dependencies:
- "@babel/core": 7.27.4
- "@jest/transform": 29.7.0
- "@types/babel__core": 7.20.5
- babel-plugin-istanbul: 6.1.1
- babel-preset-jest: 29.6.3(@babel/core@7.27.4)
- chalk: 4.1.2
- graceful-fs: 4.2.11
- slash: 3.0.0
- transitivePeerDependencies:
- - supports-color
-
- babel-plugin-istanbul@6.1.1:
- dependencies:
- "@babel/helper-plugin-utils": 7.27.1
- "@istanbuljs/load-nyc-config": 1.1.0
- "@istanbuljs/schema": 0.1.3
- istanbul-lib-instrument: 5.2.1
- test-exclude: 6.0.0
- transitivePeerDependencies:
- - supports-color
-
- babel-plugin-jest-hoist@29.6.3:
- dependencies:
- "@babel/template": 7.27.2
- "@babel/types": 7.27.6
- "@types/babel__core": 7.20.5
- "@types/babel__traverse": 7.20.7
-
- babel-preset-current-node-syntax@1.1.0(@babel/core@7.27.4):
- dependencies:
- "@babel/core": 7.27.4
- "@babel/plugin-syntax-async-generators": 7.8.4(@babel/core@7.27.4)
- "@babel/plugin-syntax-bigint": 7.8.3(@babel/core@7.27.4)
- "@babel/plugin-syntax-class-properties": 7.12.13(@babel/core@7.27.4)
- "@babel/plugin-syntax-class-static-block": 7.14.5(@babel/core@7.27.4)
- "@babel/plugin-syntax-import-attributes": 7.27.1(@babel/core@7.27.4)
- "@babel/plugin-syntax-import-meta": 7.10.4(@babel/core@7.27.4)
- "@babel/plugin-syntax-json-strings": 7.8.3(@babel/core@7.27.4)
- "@babel/plugin-syntax-logical-assignment-operators": 7.10.4(@babel/core@7.27.4)
- "@babel/plugin-syntax-nullish-coalescing-operator": 7.8.3(@babel/core@7.27.4)
- "@babel/plugin-syntax-numeric-separator": 7.10.4(@babel/core@7.27.4)
- "@babel/plugin-syntax-object-rest-spread": 7.8.3(@babel/core@7.27.4)
- "@babel/plugin-syntax-optional-catch-binding": 7.8.3(@babel/core@7.27.4)
- "@babel/plugin-syntax-optional-chaining": 7.8.3(@babel/core@7.27.4)
- "@babel/plugin-syntax-private-property-in-object": 7.14.5(@babel/core@7.27.4)
- "@babel/plugin-syntax-top-level-await": 7.14.5(@babel/core@7.27.4)
-
- babel-preset-jest@29.6.3(@babel/core@7.27.4):
- dependencies:
- "@babel/core": 7.27.4
- babel-plugin-jest-hoist: 29.6.3
- babel-preset-current-node-syntax: 1.1.0(@babel/core@7.27.4)
-
- balanced-match@1.0.2: {}
-
- base64-js@1.5.1: {}
-
- big.js@5.2.2: {}
-
- binary-extensions@2.3.0: {}
-
- brace-expansion@1.1.12:
- dependencies:
- balanced-match: 1.0.2
- concat-map: 0.0.1
-
- brace-expansion@2.0.2:
- dependencies:
- balanced-match: 1.0.2
-
- braces@3.0.3:
- dependencies:
- fill-range: 7.1.1
-
- browserslist@4.25.0:
- dependencies:
- caniuse-lite: 1.0.30001723
- electron-to-chromium: 1.5.167
- node-releases: 2.0.19
- update-browserslist-db: 1.1.3(browserslist@4.25.0)
-
- bs-logger@0.2.6:
- dependencies:
- fast-json-stable-stringify: 2.1.0
-
- bser@2.1.1:
- dependencies:
- node-int64: 0.4.0
-
- buffer-from@1.1.2: {}
-
- buffer@6.0.3:
- dependencies:
- base64-js: 1.5.1
- ieee754: 1.2.1
-
- call-bind-apply-helpers@1.0.2:
- dependencies:
- es-errors: 1.3.0
- function-bind: 1.1.2
-
- call-bind@1.0.8:
- dependencies:
- call-bind-apply-helpers: 1.0.2
- es-define-property: 1.0.1
- get-intrinsic: 1.3.0
- set-function-length: 1.2.2
-
- call-bound@1.0.4:
- dependencies:
- call-bind-apply-helpers: 1.0.2
- get-intrinsic: 1.3.0
-
- callsites@3.1.0: {}
-
- camelcase-keys@6.2.2:
- dependencies:
- camelcase: 5.3.1
- map-obj: 4.3.0
- quick-lru: 4.0.1
-
- camelcase@5.3.1: {}
-
- camelcase@6.3.0: {}
-
- caniuse-lite@1.0.30001723: {}
-
- chalk@2.4.2:
- dependencies:
- ansi-styles: 3.2.1
- escape-string-regexp: 1.0.5
- supports-color: 5.5.0
-
- chalk@4.1.2:
- dependencies:
- ansi-styles: 4.3.0
- supports-color: 7.2.0
-
- char-regex@1.0.2: {}
-
- chokidar@3.6.0:
- dependencies:
- anymatch: 3.1.3
- braces: 3.0.3
- glob-parent: 5.1.2
- is-binary-path: 2.1.0
- is-glob: 4.0.3
- normalize-path: 3.0.0
- readdirp: 3.6.0
- optionalDependencies:
- fsevents: 2.3.3
-
- chrome-trace-event@1.0.4: {}
-
- ci-info@2.0.0: {}
-
- ci-info@3.9.0: {}
-
- cjs-module-lexer@1.4.3: {}
-
- cliui@7.0.4:
- dependencies:
- string-width: 4.2.3
- strip-ansi: 6.0.1
- wrap-ansi: 7.0.0
-
- cliui@8.0.1:
- dependencies:
- string-width: 4.2.3
- strip-ansi: 6.0.1
- wrap-ansi: 7.0.0
-
- clone-deep@4.0.1:
- dependencies:
- is-plain-object: 2.0.4
- kind-of: 6.0.3
- shallow-clone: 3.0.1
-
- co@4.6.0: {}
-
- collect-v8-coverage@1.0.2: {}
-
- color-convert@1.9.3:
- dependencies:
- color-name: 1.1.3
-
- color-convert@2.0.1:
- dependencies:
- color-name: 1.1.4
-
- color-name@1.1.3: {}
-
- color-name@1.1.4: {}
-
- colorette@2.0.20: {}
-
- combined-stream@1.0.8:
- dependencies:
- delayed-stream: 1.0.0
-
- commander@12.1.0: {}
-
- commander@2.20.3: {}
-
- commander@7.2.0: {}
-
- compare-func@2.0.0:
- dependencies:
- array-ify: 1.0.0
- dot-prop: 5.3.0
-
- compare-versions@3.6.0: {}
-
- concat-map@0.0.1: {}
-
- consola@2.15.3: {}
-
- conventional-changelog-angular@6.0.0:
- dependencies:
- compare-func: 2.0.0
-
- conventional-changelog-conventionalcommits@6.1.0:
- dependencies:
- compare-func: 2.0.0
-
- conventional-commits-parser@4.0.0:
- dependencies:
- JSONStream: 1.3.5
- is-text-path: 1.0.1
- meow: 8.1.2
- split2: 3.2.2
-
- convert-source-map@2.0.0: {}
-
- core-util-is@1.0.3: {}
-
- cosmiconfig-typescript-loader@4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@4.9.5))(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))(typescript@4.9.5):
- dependencies:
- "@types/node": 20.5.1
- cosmiconfig: 8.3.6(typescript@4.9.5)
- ts-node: 10.9.2(@types/node@18.19.112)(typescript@4.9.5)
- typescript: 4.9.5
-
- cosmiconfig@7.1.0:
- dependencies:
- "@types/parse-json": 4.0.2
- import-fresh: 3.3.1
- parse-json: 5.2.0
- path-type: 4.0.0
- yaml: 1.10.2
-
- cosmiconfig@8.3.6(typescript@4.9.5):
- dependencies:
- import-fresh: 3.3.1
- js-yaml: 4.1.0
- parse-json: 5.2.0
- path-type: 4.0.0
- optionalDependencies:
- typescript: 4.9.5
-
- create-jest@29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5)):
- dependencies:
- "@jest/types": 29.6.3
- chalk: 4.1.2
- exit: 0.1.2
- graceful-fs: 4.2.11
- jest-config: 29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))
- jest-util: 29.7.0
- prompts: 2.4.2
- transitivePeerDependencies:
- - "@types/node"
- - babel-plugin-macros
- - supports-color
- - ts-node
-
- create-require@1.1.1: {}
-
- cross-env@7.0.3:
- dependencies:
- cross-spawn: 7.0.6
-
- cross-fetch@3.2.0:
- dependencies:
- node-fetch: 2.7.0
- transitivePeerDependencies:
- - encoding
-
- cross-spawn@6.0.6:
- dependencies:
- nice-try: 1.0.5
- path-key: 2.0.1
- semver: 5.7.2
- shebang-command: 1.2.0
- which: 1.3.1
-
- cross-spawn@7.0.6:
- dependencies:
- path-key: 3.1.1
- shebang-command: 2.0.0
- which: 2.0.2
-
- cssom@0.3.8: {}
-
- cssom@0.5.0: {}
-
- cssstyle@2.3.0:
- dependencies:
- cssom: 0.3.8
-
- dargs@7.0.0: {}
-
- data-urls@3.0.2:
- dependencies:
- abab: 2.0.6
- whatwg-mimetype: 3.0.0
- whatwg-url: 11.0.0
-
- data-view-buffer@1.0.2:
- dependencies:
- call-bound: 1.0.4
- es-errors: 1.3.0
- is-data-view: 1.0.2
-
- data-view-byte-length@1.0.2:
- dependencies:
- call-bound: 1.0.4
- es-errors: 1.3.0
- is-data-view: 1.0.2
-
- data-view-byte-offset@1.0.1:
- dependencies:
- call-bound: 1.0.4
- es-errors: 1.3.0
- is-data-view: 1.0.2
-
- dayjs@1.11.13: {}
-
- debug@4.4.1(supports-color@5.5.0):
- dependencies:
- ms: 2.1.3
- optionalDependencies:
- supports-color: 5.5.0
-
- decamelize-keys@1.1.1:
- dependencies:
- decamelize: 1.2.0
- map-obj: 1.0.1
-
- decamelize@1.2.0: {}
-
- decimal.js@10.5.0: {}
-
- dedent@1.6.0: {}
-
- deep-extend@0.6.0: {}
-
- deep-is@0.1.4: {}
-
- deepmerge@4.3.1: {}
-
- define-data-property@1.1.4:
- dependencies:
- es-define-property: 1.0.1
- es-errors: 1.3.0
- gopd: 1.2.0
-
- define-properties@1.2.1:
- dependencies:
- define-data-property: 1.1.4
- has-property-descriptors: 1.0.2
- object-keys: 1.1.1
-
- delayed-stream@1.0.0: {}
-
- detect-newline@3.1.0: {}
-
- diff-sequences@29.6.3: {}
-
- diff@4.0.2: {}
-
- dir-glob@3.0.1:
- dependencies:
- path-type: 4.0.0
-
- doctrine@3.0.0:
- dependencies:
- esutils: 2.0.3
-
- domexception@4.0.0:
- dependencies:
- webidl-conversions: 7.0.0
-
- dot-prop@5.3.0:
- dependencies:
- is-obj: 2.0.0
-
- dotenv@16.5.0: {}
-
- dunder-proto@1.0.1:
- dependencies:
- call-bind-apply-helpers: 1.0.2
- es-errors: 1.3.0
- gopd: 1.2.0
-
- eastasianwidth@0.2.0: {}
-
- ejs@3.1.10:
- dependencies:
- jake: 10.9.2
-
- electron-to-chromium@1.5.167: {}
-
- emittery@0.13.1: {}
-
- emoji-regex@8.0.0: {}
-
- emoji-regex@9.2.2: {}
-
- emojis-list@3.0.0: {}
-
- end-of-stream@1.4.4:
- dependencies:
- once: 1.4.0
-
- enhanced-resolve@4.5.0:
- dependencies:
- graceful-fs: 4.2.11
- memory-fs: 0.5.0
- tapable: 1.1.3
-
- enhanced-resolve@5.18.1:
- dependencies:
- graceful-fs: 4.2.11
- tapable: 2.2.2
-
- entities@4.5.0: {}
-
- entities@6.0.1: {}
-
- envinfo@7.14.0: {}
-
- errno@0.1.8:
- dependencies:
- prr: 1.0.1
-
- error-ex@1.3.2:
- dependencies:
- is-arrayish: 0.2.1
-
- es-abstract@1.24.0:
- dependencies:
- array-buffer-byte-length: 1.0.2
- arraybuffer.prototype.slice: 1.0.4
- available-typed-arrays: 1.0.7
- call-bind: 1.0.8
- call-bound: 1.0.4
- data-view-buffer: 1.0.2
- data-view-byte-length: 1.0.2
- data-view-byte-offset: 1.0.1
- es-define-property: 1.0.1
- es-errors: 1.3.0
- es-object-atoms: 1.1.1
- es-set-tostringtag: 2.1.0
- es-to-primitive: 1.3.0
- function.prototype.name: 1.1.8
- get-intrinsic: 1.3.0
- get-proto: 1.0.1
- get-symbol-description: 1.1.0
- globalthis: 1.0.4
- gopd: 1.2.0
- has-property-descriptors: 1.0.2
- has-proto: 1.2.0
- has-symbols: 1.1.0
- hasown: 2.0.2
- internal-slot: 1.1.0
- is-array-buffer: 3.0.5
- is-callable: 1.2.7
- is-data-view: 1.0.2
- is-negative-zero: 2.0.3
- is-regex: 1.2.1
- is-set: 2.0.3
- is-shared-array-buffer: 1.0.4
- is-string: 1.1.1
- is-typed-array: 1.1.15
- is-weakref: 1.1.1
- math-intrinsics: 1.1.0
- object-inspect: 1.13.4
- object-keys: 1.1.1
- object.assign: 4.1.7
- own-keys: 1.0.1
- regexp.prototype.flags: 1.5.4
- safe-array-concat: 1.1.3
- safe-push-apply: 1.0.0
- safe-regex-test: 1.1.0
- set-proto: 1.0.0
- stop-iteration-iterator: 1.1.0
- string.prototype.trim: 1.2.10
- string.prototype.trimend: 1.0.9
- string.prototype.trimstart: 1.0.8
- typed-array-buffer: 1.0.3
- typed-array-byte-length: 1.0.3
- typed-array-byte-offset: 1.0.4
- typed-array-length: 1.0.7
- unbox-primitive: 1.1.0
- which-typed-array: 1.1.19
-
- es-define-property@1.0.1: {}
-
- es-errors@1.3.0: {}
-
- es-module-lexer@1.7.0: {}
-
- es-object-atoms@1.1.1:
- dependencies:
- es-errors: 1.3.0
-
- es-set-tostringtag@2.1.0:
- dependencies:
- es-errors: 1.3.0
- get-intrinsic: 1.3.0
- has-tostringtag: 1.0.2
- hasown: 2.0.2
-
- es-to-primitive@1.3.0:
- dependencies:
- is-callable: 1.2.7
- is-date-object: 1.1.0
- is-symbol: 1.1.1
-
- escalade@3.2.0: {}
-
- escape-string-regexp@1.0.5: {}
-
- escape-string-regexp@2.0.0: {}
-
- escape-string-regexp@4.0.0: {}
-
- escodegen@2.1.0:
- dependencies:
- esprima: 4.0.1
- estraverse: 5.3.0
- esutils: 2.0.3
- optionalDependencies:
- source-map: 0.6.1
-
- eslint-scope@5.1.1:
- dependencies:
- esrecurse: 4.3.0
- estraverse: 4.3.0
-
- eslint-scope@7.2.2:
- dependencies:
- esrecurse: 4.3.0
- estraverse: 5.3.0
-
- eslint-visitor-keys@3.4.3: {}
-
- eslint-visitor-keys@4.2.1: {}
-
- eslint@8.57.1:
- dependencies:
- "@eslint-community/eslint-utils": 4.7.0(eslint@8.57.1)
- "@eslint-community/regexpp": 4.12.1
- "@eslint/eslintrc": 2.1.4
- "@eslint/js": 8.57.1
- "@humanwhocodes/config-array": 0.13.0
- "@humanwhocodes/module-importer": 1.0.1
- "@nodelib/fs.walk": 1.2.8
- "@ungap/structured-clone": 1.3.0
- ajv: 6.12.6
- chalk: 4.1.2
- cross-spawn: 7.0.6
- debug: 4.4.1(supports-color@5.5.0)
- doctrine: 3.0.0
- escape-string-regexp: 4.0.0
- eslint-scope: 7.2.2
- eslint-visitor-keys: 3.4.3
- espree: 9.6.1
- esquery: 1.6.0
- esutils: 2.0.3
- fast-deep-equal: 3.1.3
- file-entry-cache: 6.0.1
- find-up: 5.0.0
- glob-parent: 6.0.2
- globals: 13.24.0
- graphemer: 1.4.0
- ignore: 5.3.2
- imurmurhash: 0.1.4
- is-glob: 4.0.3
- is-path-inside: 3.0.3
- js-yaml: 4.1.0
- json-stable-stringify-without-jsonify: 1.0.1
- levn: 0.4.1
- lodash.merge: 4.6.2
- minimatch: 3.1.2
- natural-compare: 1.4.0
- optionator: 0.9.4
- strip-ansi: 6.0.1
- text-table: 0.2.0
- transitivePeerDependencies:
- - supports-color
-
- espree@9.6.1:
- dependencies:
- acorn: 8.15.0
- acorn-jsx: 5.3.2(acorn@8.15.0)
- eslint-visitor-keys: 3.4.3
-
- esprima@4.0.1: {}
-
- esquery@1.6.0:
- dependencies:
- estraverse: 5.3.0
-
- esrecurse@4.3.0:
- dependencies:
- estraverse: 5.3.0
-
- estraverse@4.3.0: {}
-
- estraverse@5.3.0: {}
-
- esutils@2.0.3: {}
-
- events@3.3.0: {}
-
- execa@4.1.0:
- dependencies:
- cross-spawn: 7.0.6
- get-stream: 5.2.0
- human-signals: 1.1.1
- is-stream: 2.0.1
- merge-stream: 2.0.0
- npm-run-path: 4.0.1
- onetime: 5.1.2
- signal-exit: 3.0.7
- strip-final-newline: 2.0.0
-
- execa@5.1.1:
- dependencies:
- cross-spawn: 7.0.6
- get-stream: 6.0.1
- human-signals: 2.1.0
- is-stream: 2.0.1
- merge-stream: 2.0.0
- npm-run-path: 4.0.1
- onetime: 5.1.2
- signal-exit: 3.0.7
- strip-final-newline: 2.0.0
-
- exit@0.1.2: {}
-
- expect@29.7.0:
- dependencies:
- "@jest/expect-utils": 29.7.0
- jest-get-type: 29.6.3
- jest-matcher-utils: 29.7.0
- jest-message-util: 29.7.0
- jest-util: 29.7.0
-
- fast-deep-equal@3.1.3: {}
-
- fast-glob@3.3.3:
- dependencies:
- "@nodelib/fs.stat": 2.0.5
- "@nodelib/fs.walk": 1.2.8
- glob-parent: 5.1.2
- merge2: 1.4.1
- micromatch: 4.0.8
-
- fast-json-stable-stringify@2.1.0: {}
-
- fast-levenshtein@2.0.6: {}
-
- fast-uri@3.0.6: {}
-
- fastest-levenshtein@1.0.16: {}
-
- fastq@1.19.1:
- dependencies:
- reusify: 1.1.0
-
- fb-watchman@2.0.2:
- dependencies:
- bser: 2.1.1
-
- file-entry-cache@6.0.1:
- dependencies:
- flat-cache: 3.2.0
-
- filelist@1.0.4:
- dependencies:
- minimatch: 5.1.6
-
- fill-range@7.1.1:
- dependencies:
- to-regex-range: 5.0.1
-
- find-up@4.1.0:
- dependencies:
- locate-path: 5.0.0
- path-exists: 4.0.0
-
- find-up@5.0.0:
- dependencies:
- locate-path: 6.0.0
- path-exists: 4.0.0
-
- find-versions@4.0.0:
- dependencies:
- semver-regex: 3.1.4
-
- flat-cache@3.2.0:
- dependencies:
- flatted: 3.3.3
- keyv: 4.5.4
- rimraf: 3.0.2
-
- flat@5.0.2: {}
-
- flatted@3.3.3: {}
-
- for-each@0.3.5:
- dependencies:
- is-callable: 1.2.7
-
- foreground-child@3.3.1:
- dependencies:
- cross-spawn: 7.0.6
- signal-exit: 4.1.0
-
- form-data@4.0.3:
- dependencies:
- asynckit: 0.4.0
- combined-stream: 1.0.8
- es-set-tostringtag: 2.1.0
- hasown: 2.0.2
- mime-types: 2.1.35
-
- fs-extra@11.3.0:
- dependencies:
- graceful-fs: 4.2.11
- jsonfile: 6.1.0
- universalify: 2.0.1
-
- fs.realpath@1.0.0: {}
-
- fsevents@2.3.3:
- optional: true
-
- function-bind@1.1.2: {}
-
- function.prototype.name@1.1.8:
- dependencies:
- call-bind: 1.0.8
- call-bound: 1.0.4
- define-properties: 1.2.1
- functions-have-names: 1.2.3
- hasown: 2.0.2
- is-callable: 1.2.7
-
- functions-have-names@1.2.3: {}
-
- gensync@1.0.0-beta.2: {}
-
- get-caller-file@2.0.5: {}
-
- get-intrinsic@1.3.0:
- dependencies:
- call-bind-apply-helpers: 1.0.2
- es-define-property: 1.0.1
- es-errors: 1.3.0
- es-object-atoms: 1.1.1
- function-bind: 1.1.2
- get-proto: 1.0.1
- gopd: 1.2.0
- has-symbols: 1.1.0
- hasown: 2.0.2
- math-intrinsics: 1.1.0
-
- get-package-type@0.1.0: {}
-
- get-proto@1.0.1:
- dependencies:
- dunder-proto: 1.0.1
- es-object-atoms: 1.1.1
-
- get-stdin@9.0.0: {}
-
- get-stream@5.2.0:
- dependencies:
- pump: 3.0.3
-
- get-stream@6.0.1: {}
-
- get-symbol-description@1.1.0:
- dependencies:
- call-bound: 1.0.4
- es-errors: 1.3.0
- get-intrinsic: 1.3.0
-
- git-raw-commits@2.0.11:
- dependencies:
- dargs: 7.0.0
- lodash: 4.17.21
- meow: 8.1.2
- split2: 3.2.2
- through2: 4.0.2
-
- glob-parent@5.1.2:
- dependencies:
- is-glob: 4.0.3
-
- glob-parent@6.0.2:
- dependencies:
- is-glob: 4.0.3
-
- glob-to-regexp@0.4.1: {}
-
- glob@11.0.3:
- dependencies:
- foreground-child: 3.3.1
- jackspeak: 4.1.1
- minimatch: 10.0.3
- minipass: 7.1.2
- package-json-from-dist: 1.0.1
- path-scurry: 2.0.0
-
- glob@7.2.3:
- dependencies:
- fs.realpath: 1.0.0
- inflight: 1.0.6
- inherits: 2.0.4
- minimatch: 3.1.2
- once: 1.4.0
- path-is-absolute: 1.0.1
-
- glob@8.1.0:
- dependencies:
- fs.realpath: 1.0.0
- inflight: 1.0.6
- inherits: 2.0.4
- minimatch: 5.1.6
- once: 1.4.0
-
- global-dirs@0.1.1:
- dependencies:
- ini: 1.3.8
-
- globals@11.12.0: {}
-
- globals@13.24.0:
- dependencies:
- type-fest: 0.20.2
-
- globalthis@1.0.4:
- dependencies:
- define-properties: 1.2.1
- gopd: 1.2.0
-
- globby@11.1.0:
- dependencies:
- array-union: 2.1.0
- dir-glob: 3.0.1
- fast-glob: 3.3.3
- ignore: 5.3.2
- merge2: 1.4.1
- slash: 3.0.0
-
- gopd@1.2.0: {}
-
- graceful-fs@4.2.11: {}
-
- graphemer@1.4.0: {}
-
- hard-rejection@2.1.0: {}
-
- has-bigints@1.1.0: {}
-
- has-flag@3.0.0: {}
-
- has-flag@4.0.0: {}
-
- has-property-descriptors@1.0.2:
- dependencies:
- es-define-property: 1.0.1
-
- has-proto@1.2.0:
- dependencies:
- dunder-proto: 1.0.1
-
- has-symbols@1.1.0: {}
-
- has-tostringtag@1.0.2:
- dependencies:
- has-symbols: 1.1.0
-
- hasown@2.0.2:
- dependencies:
- function-bind: 1.1.2
-
- hosted-git-info@2.8.9: {}
-
- hosted-git-info@4.1.0:
- dependencies:
- lru-cache: 6.0.0
-
- html-encoding-sniffer@3.0.0:
- dependencies:
- whatwg-encoding: 2.0.0
-
- html-escaper@2.0.2: {}
-
- http-proxy-agent@5.0.0:
- dependencies:
- "@tootallnate/once": 2.0.0
- agent-base: 6.0.2
- debug: 4.4.1(supports-color@5.5.0)
- transitivePeerDependencies:
- - supports-color
-
- https-proxy-agent@5.0.1:
- dependencies:
- agent-base: 6.0.2
- debug: 4.4.1(supports-color@5.5.0)
- transitivePeerDependencies:
- - supports-color
-
- human-signals@1.1.1: {}
-
- human-signals@2.1.0: {}
-
- husky@4.3.8:
- dependencies:
- chalk: 4.1.2
- ci-info: 2.0.0
- compare-versions: 3.6.0
- cosmiconfig: 7.1.0
- find-versions: 4.0.0
- opencollective-postinstall: 2.0.3
- pkg-dir: 5.0.0
- please-upgrade-node: 3.2.0
- slash: 3.0.0
- which-pm-runs: 1.1.0
-
- iconv-lite@0.6.3:
- dependencies:
- safer-buffer: 2.1.2
-
- ieee754@1.2.1: {}
-
- ignore-by-default@1.0.1: {}
-
- ignore@5.3.2: {}
-
- ignore@6.0.2: {}
-
- ignore@7.0.5: {}
-
- import-fresh@3.3.1:
- dependencies:
- parent-module: 1.0.1
- resolve-from: 4.0.0
-
- import-local@3.2.0:
- dependencies:
- pkg-dir: 4.2.0
- resolve-cwd: 3.0.0
-
- imurmurhash@0.1.4: {}
-
- indent-string@4.0.0: {}
-
- inflight@1.0.6:
- dependencies:
- once: 1.4.0
- wrappy: 1.0.2
-
- inherits@2.0.4: {}
-
- ini@1.3.8: {}
-
- ini@2.0.0: {}
-
- ini@4.1.3: {}
-
- internal-slot@1.1.0:
- dependencies:
- es-errors: 1.3.0
- hasown: 2.0.2
- side-channel: 1.1.0
-
- interpret@2.2.0: {}
-
- is-arguments@1.2.0:
- dependencies:
- call-bound: 1.0.4
- has-tostringtag: 1.0.2
-
- is-array-buffer@3.0.5:
- dependencies:
- call-bind: 1.0.8
- call-bound: 1.0.4
- get-intrinsic: 1.3.0
-
- is-arrayish@0.2.1: {}
-
- is-async-function@2.1.1:
- dependencies:
- async-function: 1.0.0
- call-bound: 1.0.4
- get-proto: 1.0.1
- has-tostringtag: 1.0.2
- safe-regex-test: 1.1.0
-
- is-bigint@1.1.0:
- dependencies:
- has-bigints: 1.1.0
-
- is-binary-path@2.1.0:
- dependencies:
- binary-extensions: 2.3.0
-
- is-boolean-object@1.2.2:
- dependencies:
- call-bound: 1.0.4
- has-tostringtag: 1.0.2
-
- is-callable@1.2.7: {}
-
- is-core-module@2.16.1:
- dependencies:
- hasown: 2.0.2
-
- is-data-view@1.0.2:
- dependencies:
- call-bound: 1.0.4
- get-intrinsic: 1.3.0
- is-typed-array: 1.1.15
-
- is-date-object@1.1.0:
- dependencies:
- call-bound: 1.0.4
- has-tostringtag: 1.0.2
-
- is-extglob@2.1.1: {}
-
- is-finalizationregistry@1.1.1:
- dependencies:
- call-bound: 1.0.4
-
- is-fullwidth-code-point@3.0.0: {}
-
- is-generator-fn@2.1.0: {}
-
- is-generator-function@1.1.0:
- dependencies:
- call-bound: 1.0.4
- get-proto: 1.0.1
- has-tostringtag: 1.0.2
- safe-regex-test: 1.1.0
-
- is-glob@4.0.3:
- dependencies:
- is-extglob: 2.1.1
-
- is-map@2.0.3: {}
-
- is-negative-zero@2.0.3: {}
-
- is-number-object@1.1.1:
- dependencies:
- call-bound: 1.0.4
- has-tostringtag: 1.0.2
-
- is-number@7.0.0: {}
-
- is-obj@2.0.0: {}
-
- is-path-inside@3.0.3: {}
-
- is-plain-obj@1.1.0: {}
-
- is-plain-object@2.0.4:
- dependencies:
- isobject: 3.0.1
-
- is-potential-custom-element-name@1.0.1: {}
-
- is-regex@1.2.1:
- dependencies:
- call-bound: 1.0.4
- gopd: 1.2.0
- has-tostringtag: 1.0.2
- hasown: 2.0.2
-
- is-set@2.0.3: {}
-
- is-shared-array-buffer@1.0.4:
- dependencies:
- call-bound: 1.0.4
-
- is-stream@2.0.1: {}
-
- is-string@1.1.1:
- dependencies:
- call-bound: 1.0.4
- has-tostringtag: 1.0.2
-
- is-symbol@1.1.1:
- dependencies:
- call-bound: 1.0.4
- has-symbols: 1.1.0
- safe-regex-test: 1.1.0
-
- is-text-path@1.0.1:
- dependencies:
- text-extensions: 1.9.0
-
- is-typed-array@1.1.15:
- dependencies:
- which-typed-array: 1.1.19
-
- is-weakmap@2.0.2: {}
-
- is-weakref@1.1.1:
- dependencies:
- call-bound: 1.0.4
-
- is-weakset@2.0.4:
- dependencies:
- call-bound: 1.0.4
- get-intrinsic: 1.3.0
-
- isarray@1.0.0: {}
-
- isarray@2.0.5: {}
-
- isexe@2.0.0: {}
-
- isobject@3.0.1: {}
-
- istanbul-lib-coverage@3.2.2: {}
-
- istanbul-lib-instrument@5.2.1:
- dependencies:
- "@babel/core": 7.27.4
- "@babel/parser": 7.27.5
- "@istanbuljs/schema": 0.1.3
- istanbul-lib-coverage: 3.2.2
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
-
- istanbul-lib-instrument@6.0.3:
- dependencies:
- "@babel/core": 7.27.4
- "@babel/parser": 7.27.5
- "@istanbuljs/schema": 0.1.3
- istanbul-lib-coverage: 3.2.2
- semver: 7.7.2
- transitivePeerDependencies:
- - supports-color
-
- istanbul-lib-report@3.0.1:
- dependencies:
- istanbul-lib-coverage: 3.2.2
- make-dir: 4.0.0
- supports-color: 7.2.0
-
- istanbul-lib-source-maps@4.0.1:
- dependencies:
- debug: 4.4.1(supports-color@5.5.0)
- istanbul-lib-coverage: 3.2.2
- source-map: 0.6.1
- transitivePeerDependencies:
- - supports-color
-
- istanbul-reports@3.1.7:
- dependencies:
- html-escaper: 2.0.2
- istanbul-lib-report: 3.0.1
-
- jackspeak@4.1.1:
- dependencies:
- "@isaacs/cliui": 8.0.2
-
- jake@10.9.2:
- dependencies:
- async: 3.2.6
- chalk: 4.1.2
- filelist: 1.0.4
- minimatch: 3.1.2
-
- jest-changed-files@29.7.0:
- dependencies:
- execa: 5.1.1
- jest-util: 29.7.0
- p-limit: 3.1.0
-
- jest-circus@29.7.0:
- dependencies:
- "@jest/environment": 29.7.0
- "@jest/expect": 29.7.0
- "@jest/test-result": 29.7.0
- "@jest/types": 29.6.3
- "@types/node": 18.19.112
- chalk: 4.1.2
- co: 4.6.0
- dedent: 1.6.0
- is-generator-fn: 2.1.0
- jest-each: 29.7.0
- jest-matcher-utils: 29.7.0
- jest-message-util: 29.7.0
- jest-runtime: 29.7.0
- jest-snapshot: 29.7.0
- jest-util: 29.7.0
- p-limit: 3.1.0
- pretty-format: 29.7.0
- pure-rand: 6.1.0
- slash: 3.0.0
- stack-utils: 2.0.6
- transitivePeerDependencies:
- - babel-plugin-macros
- - supports-color
-
- jest-cli@29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5)):
- dependencies:
- "@jest/core": 29.7.0(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))
- "@jest/test-result": 29.7.0
- "@jest/types": 29.6.3
- chalk: 4.1.2
- create-jest: 29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))
- exit: 0.1.2
- import-local: 3.2.0
- jest-config: 29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))
- jest-util: 29.7.0
- jest-validate: 29.7.0
- yargs: 17.7.2
- transitivePeerDependencies:
- - "@types/node"
- - babel-plugin-macros
- - supports-color
- - ts-node
-
- jest-config@29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5)):
- dependencies:
- "@babel/core": 7.27.4
- "@jest/test-sequencer": 29.7.0
- "@jest/types": 29.6.3
- babel-jest: 29.7.0(@babel/core@7.27.4)
- chalk: 4.1.2
- ci-info: 3.9.0
- deepmerge: 4.3.1
- glob: 7.2.3
- graceful-fs: 4.2.11
- jest-circus: 29.7.0
- jest-environment-node: 29.7.0
- jest-get-type: 29.6.3
- jest-regex-util: 29.6.3
- jest-resolve: 29.7.0
- jest-runner: 29.7.0
- jest-util: 29.7.0
- jest-validate: 29.7.0
- micromatch: 4.0.8
- parse-json: 5.2.0
- pretty-format: 29.7.0
- slash: 3.0.0
- strip-json-comments: 3.1.1
- optionalDependencies:
- "@types/node": 18.19.112
- ts-node: 10.9.2(@types/node@18.19.112)(typescript@4.9.5)
- transitivePeerDependencies:
- - babel-plugin-macros
- - supports-color
-
- jest-diff@29.7.0:
- dependencies:
- chalk: 4.1.2
- diff-sequences: 29.6.3
- jest-get-type: 29.6.3
- pretty-format: 29.7.0
-
- jest-docblock@29.7.0:
- dependencies:
- detect-newline: 3.1.0
-
- jest-each@29.7.0:
- dependencies:
- "@jest/types": 29.6.3
- chalk: 4.1.2
- jest-get-type: 29.6.3
- jest-util: 29.7.0
- pretty-format: 29.7.0
-
- jest-environment-jsdom@29.7.0:
- dependencies:
- "@jest/environment": 29.7.0
- "@jest/fake-timers": 29.7.0
- "@jest/types": 29.6.3
- "@types/jsdom": 20.0.1
- "@types/node": 18.19.112
- jest-mock: 29.7.0
- jest-util: 29.7.0
- jsdom: 20.0.3
- transitivePeerDependencies:
- - bufferutil
- - supports-color
- - utf-8-validate
-
- jest-environment-node@29.7.0:
- dependencies:
- "@jest/environment": 29.7.0
- "@jest/fake-timers": 29.7.0
- "@jest/types": 29.6.3
- "@types/node": 18.19.112
- jest-mock: 29.7.0
- jest-util: 29.7.0
-
- jest-get-type@29.6.3: {}
-
- jest-haste-map@29.7.0:
- dependencies:
- "@jest/types": 29.6.3
- "@types/graceful-fs": 4.1.9
- "@types/node": 18.19.112
- anymatch: 3.1.3
- fb-watchman: 2.0.2
- graceful-fs: 4.2.11
- jest-regex-util: 29.6.3
- jest-util: 29.7.0
- jest-worker: 29.7.0
- micromatch: 4.0.8
- walker: 1.0.8
- optionalDependencies:
- fsevents: 2.3.3
-
- jest-leak-detector@29.7.0:
- dependencies:
- jest-get-type: 29.6.3
- pretty-format: 29.7.0
-
- jest-matcher-utils@29.7.0:
- dependencies:
- chalk: 4.1.2
- jest-diff: 29.7.0
- jest-get-type: 29.6.3
- pretty-format: 29.7.0
-
- jest-message-util@29.7.0:
- dependencies:
- "@babel/code-frame": 7.27.1
- "@jest/types": 29.6.3
- "@types/stack-utils": 2.0.3
- chalk: 4.1.2
- graceful-fs: 4.2.11
- micromatch: 4.0.8
- pretty-format: 29.7.0
- slash: 3.0.0
- stack-utils: 2.0.6
-
- jest-mock@29.7.0:
- dependencies:
- "@jest/types": 29.6.3
- "@types/node": 18.19.112
- jest-util: 29.7.0
-
- jest-pnp-resolver@1.2.3(jest-resolve@29.7.0):
- optionalDependencies:
- jest-resolve: 29.7.0
-
- jest-regex-util@29.6.3: {}
-
- jest-resolve-dependencies@29.7.0:
- dependencies:
- jest-regex-util: 29.6.3
- jest-snapshot: 29.7.0
- transitivePeerDependencies:
- - supports-color
-
- jest-resolve@29.7.0:
- dependencies:
- chalk: 4.1.2
- graceful-fs: 4.2.11
- jest-haste-map: 29.7.0
- jest-pnp-resolver: 1.2.3(jest-resolve@29.7.0)
- jest-util: 29.7.0
- jest-validate: 29.7.0
- resolve: 1.22.10
- resolve.exports: 2.0.3
- slash: 3.0.0
-
- jest-runner@29.7.0:
- dependencies:
- "@jest/console": 29.7.0
- "@jest/environment": 29.7.0
- "@jest/test-result": 29.7.0
- "@jest/transform": 29.7.0
- "@jest/types": 29.6.3
- "@types/node": 18.19.112
- chalk: 4.1.2
- emittery: 0.13.1
- graceful-fs: 4.2.11
- jest-docblock: 29.7.0
- jest-environment-node: 29.7.0
- jest-haste-map: 29.7.0
- jest-leak-detector: 29.7.0
- jest-message-util: 29.7.0
- jest-resolve: 29.7.0
- jest-runtime: 29.7.0
- jest-util: 29.7.0
- jest-watcher: 29.7.0
- jest-worker: 29.7.0
- p-limit: 3.1.0
- source-map-support: 0.5.13
- transitivePeerDependencies:
- - supports-color
-
- jest-runtime@29.7.0:
- dependencies:
- "@jest/environment": 29.7.0
- "@jest/fake-timers": 29.7.0
- "@jest/globals": 29.7.0
- "@jest/source-map": 29.6.3
- "@jest/test-result": 29.7.0
- "@jest/transform": 29.7.0
- "@jest/types": 29.6.3
- "@types/node": 18.19.112
- chalk: 4.1.2
- cjs-module-lexer: 1.4.3
- collect-v8-coverage: 1.0.2
- glob: 7.2.3
- graceful-fs: 4.2.11
- jest-haste-map: 29.7.0
- jest-message-util: 29.7.0
- jest-mock: 29.7.0
- jest-regex-util: 29.6.3
- jest-resolve: 29.7.0
- jest-snapshot: 29.7.0
- jest-util: 29.7.0
- slash: 3.0.0
- strip-bom: 4.0.0
- transitivePeerDependencies:
- - supports-color
-
- jest-snapshot@29.7.0:
- dependencies:
- "@babel/core": 7.27.4
- "@babel/generator": 7.27.5
- "@babel/plugin-syntax-jsx": 7.27.1(@babel/core@7.27.4)
- "@babel/plugin-syntax-typescript": 7.27.1(@babel/core@7.27.4)
- "@babel/types": 7.27.6
- "@jest/expect-utils": 29.7.0
- "@jest/transform": 29.7.0
- "@jest/types": 29.6.3
- babel-preset-current-node-syntax: 1.1.0(@babel/core@7.27.4)
- chalk: 4.1.2
- expect: 29.7.0
- graceful-fs: 4.2.11
- jest-diff: 29.7.0
- jest-get-type: 29.6.3
- jest-matcher-utils: 29.7.0
- jest-message-util: 29.7.0
- jest-util: 29.7.0
- natural-compare: 1.4.0
- pretty-format: 29.7.0
- semver: 7.7.2
- transitivePeerDependencies:
- - supports-color
-
- jest-util@29.7.0:
- dependencies:
- "@jest/types": 29.6.3
- "@types/node": 18.19.112
- chalk: 4.1.2
- ci-info: 3.9.0
- graceful-fs: 4.2.11
- picomatch: 2.3.1
-
- jest-validate@29.7.0:
- dependencies:
- "@jest/types": 29.6.3
- camelcase: 6.3.0
- chalk: 4.1.2
- jest-get-type: 29.6.3
- leven: 3.1.0
- pretty-format: 29.7.0
-
- jest-watcher@29.7.0:
- dependencies:
- "@jest/test-result": 29.7.0
- "@jest/types": 29.6.3
- "@types/node": 18.19.112
- ansi-escapes: 4.3.2
- chalk: 4.1.2
- emittery: 0.13.1
- jest-util: 29.7.0
- string-length: 4.0.2
-
- jest-worker@27.5.1:
- dependencies:
- "@types/node": 18.19.112
- merge-stream: 2.0.0
- supports-color: 8.1.1
-
- jest-worker@29.7.0:
- dependencies:
- "@types/node": 18.19.112
- jest-util: 29.7.0
- merge-stream: 2.0.0
- supports-color: 8.1.1
-
- jest@29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5)):
- dependencies:
- "@jest/core": 29.7.0(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))
- "@jest/types": 29.6.3
- import-local: 3.2.0
- jest-cli: 29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))
- transitivePeerDependencies:
- - "@types/node"
- - babel-plugin-macros
- - supports-color
- - ts-node
-
- js-tokens@4.0.0: {}
-
- js-yaml@3.14.1:
- dependencies:
- argparse: 1.0.10
- esprima: 4.0.1
-
- js-yaml@4.1.0:
- dependencies:
- argparse: 2.0.1
-
- jsdom@20.0.3:
- dependencies:
- abab: 2.0.6
- acorn: 8.15.0
- acorn-globals: 7.0.1
- cssom: 0.5.0
- cssstyle: 2.3.0
- data-urls: 3.0.2
- decimal.js: 10.5.0
- domexception: 4.0.0
- escodegen: 2.1.0
- form-data: 4.0.3
- html-encoding-sniffer: 3.0.0
- http-proxy-agent: 5.0.0
- https-proxy-agent: 5.0.1
- is-potential-custom-element-name: 1.0.1
- nwsapi: 2.2.20
- parse5: 7.3.0
- saxes: 6.0.0
- symbol-tree: 3.2.4
- tough-cookie: 4.1.4
- w3c-xmlserializer: 4.0.0
- webidl-conversions: 7.0.0
- whatwg-encoding: 2.0.0
- whatwg-mimetype: 3.0.0
- whatwg-url: 11.0.0
- ws: 8.18.2
- xml-name-validator: 4.0.0
- transitivePeerDependencies:
- - bufferutil
- - supports-color
- - utf-8-validate
-
- jsesc@3.1.0: {}
-
- json-buffer@3.0.1: {}
-
- json-parse-better-errors@1.0.2: {}
-
- json-parse-even-better-errors@2.3.1: {}
-
- json-schema-traverse@0.4.1: {}
-
- json-schema-traverse@1.0.0: {}
-
- json-stable-stringify-without-jsonify@1.0.1: {}
-
- json5@2.2.3: {}
-
- jsonc-parser@3.3.1: {}
-
- jsonfile@6.1.0:
- dependencies:
- universalify: 2.0.1
- optionalDependencies:
- graceful-fs: 4.2.11
-
- jsonparse@1.3.1: {}
-
- jsonpointer@5.0.1: {}
-
- keyv@4.5.4:
- dependencies:
- json-buffer: 3.0.1
-
- kind-of@6.0.3: {}
-
- kleur@3.0.3: {}
-
- leven@3.1.0: {}
-
- levn@0.4.1:
- dependencies:
- prelude-ls: 1.2.1
- type-check: 0.4.0
-
- lines-and-columns@1.2.4: {}
-
- linkify-it@5.0.0:
- dependencies:
- uc.micro: 2.1.0
-
- load-json-file@4.0.0:
+ enhanced-resolve@5.18.3:
dependencies:
graceful-fs: 4.2.11
- parse-json: 4.0.0
- pify: 3.0.0
- strip-bom: 3.0.0
-
- loader-runner@4.3.0: {}
-
- loader-utils@2.0.4:
- dependencies:
- big.js: 5.2.2
- emojis-list: 3.0.0
- json5: 2.2.3
-
- locate-path@5.0.0:
- dependencies:
- p-locate: 4.1.0
-
- locate-path@6.0.0:
- dependencies:
- p-locate: 5.0.0
-
- lodash.camelcase@4.3.0: {}
-
- lodash.isfunction@3.0.9: {}
-
- lodash.isplainobject@4.0.6: {}
-
- lodash.kebabcase@4.1.1: {}
-
- lodash.memoize@4.1.2: {}
-
- lodash.merge@4.6.2: {}
-
- lodash.mergewith@4.6.2: {}
-
- lodash.snakecase@4.1.1: {}
-
- lodash.startcase@4.4.0: {}
-
- lodash.uniq@4.5.0: {}
-
- lodash.upperfirst@4.3.1: {}
-
- lodash@4.17.21: {}
-
- lru-cache@11.1.0: {}
-
- lru-cache@5.1.1:
- dependencies:
- yallist: 3.1.1
-
- lru-cache@6.0.0:
- dependencies:
- yallist: 4.0.0
-
- lunr@2.3.9: {}
-
- make-dir@4.0.0:
- dependencies:
- semver: 7.7.2
-
- make-error@1.3.6: {}
-
- makeerror@1.0.12:
- dependencies:
- tmpl: 1.0.5
-
- map-obj@1.0.1: {}
-
- map-obj@4.3.0: {}
-
- markdown-it@14.1.0:
- dependencies:
- argparse: 2.0.1
- entities: 4.5.0
- linkify-it: 5.0.0
- mdurl: 2.0.0
- punycode.js: 2.3.1
- uc.micro: 2.1.0
-
- markdownlint-cli@0.42.0:
- dependencies:
- commander: 12.1.0
- get-stdin: 9.0.0
- glob: 11.0.3
- ignore: 6.0.2
- js-yaml: 4.1.0
- jsonc-parser: 3.3.1
- jsonpointer: 5.0.1
- markdownlint: 0.35.0
- minimatch: 10.0.3
- run-con: 1.3.2
- smol-toml: 1.3.4
-
- markdownlint-micromark@0.1.10: {}
-
- markdownlint@0.35.0:
- dependencies:
- markdown-it: 14.1.0
- markdownlint-micromark: 0.1.10
-
- marked@4.3.0: {}
-
- math-intrinsics@1.1.0: {}
-
- mdurl@2.0.0: {}
-
- memory-fs@0.5.0:
- dependencies:
- errno: 0.1.8
- readable-stream: 2.3.8
-
- memorystream@0.3.1: {}
-
- meow@8.1.2:
- dependencies:
- "@types/minimist": 1.2.5
- camelcase-keys: 6.2.2
- decamelize-keys: 1.1.1
- hard-rejection: 2.1.0
- minimist-options: 4.1.0
- normalize-package-data: 3.0.3
- read-pkg-up: 7.0.1
- redent: 3.0.0
- trim-newlines: 3.0.1
- type-fest: 0.18.1
- yargs-parser: 20.2.9
-
- merge-stream@2.0.0: {}
-
- merge2@1.4.1: {}
-
- micromatch@4.0.8:
- dependencies:
- braces: 3.0.3
- picomatch: 2.3.1
-
- mime-db@1.52.0: {}
-
- mime-types@2.1.35:
- dependencies:
- mime-db: 1.52.0
-
- mimic-fn@2.1.0: {}
-
- min-indent@1.0.1: {}
-
- minimatch@10.0.3:
- dependencies:
- "@isaacs/brace-expansion": 5.0.0
-
- minimatch@3.1.2:
- dependencies:
- brace-expansion: 1.1.12
-
- minimatch@5.1.6:
- dependencies:
- brace-expansion: 2.0.2
-
- minimatch@9.0.5:
- dependencies:
- brace-expansion: 2.0.2
-
- minimist-options@4.1.0:
- dependencies:
- arrify: 1.0.1
- is-plain-obj: 1.1.0
- kind-of: 6.0.3
-
- minimist@1.2.8: {}
-
- minipass@7.1.2: {}
-
- mri@1.2.0: {}
-
- ms@2.1.3: {}
-
- natural-compare@1.4.0: {}
-
- nconf@0.12.1:
- dependencies:
- async: 3.2.6
- ini: 2.0.0
- secure-keys: 1.0.0
- yargs: 16.2.0
-
- neo-async@2.6.2: {}
-
- nice-try@1.0.5: {}
-
- node-fetch@2.7.0:
- dependencies:
- whatwg-url: 5.0.0
-
- node-int64@0.4.0: {}
-
- node-releases@2.0.19: {}
-
- nodemon@3.1.10:
- dependencies:
- chokidar: 3.6.0
- debug: 4.4.1(supports-color@5.5.0)
- ignore-by-default: 1.0.1
- minimatch: 3.1.2
- pstree.remy: 1.1.8
- semver: 7.7.2
- simple-update-notifier: 2.0.0
- supports-color: 5.5.0
- touch: 3.1.1
- undefsafe: 2.0.5
-
- normalize-package-data@2.5.0:
- dependencies:
- hosted-git-info: 2.8.9
- resolve: 1.22.10
- semver: 5.7.2
- validate-npm-package-license: 3.0.4
-
- normalize-package-data@3.0.3:
- dependencies:
- hosted-git-info: 4.1.0
- is-core-module: 2.16.1
- semver: 7.7.2
- validate-npm-package-license: 3.0.4
-
- normalize-path@3.0.0: {}
-
- npm-run-all@4.1.5:
- dependencies:
- ansi-styles: 3.2.1
- chalk: 2.4.2
- cross-spawn: 6.0.6
- memorystream: 0.3.1
- minimatch: 3.1.2
- pidtree: 0.3.1
- read-pkg: 3.0.0
- shell-quote: 1.8.3
- string.prototype.padend: 3.1.6
-
- npm-run-path@4.0.1:
- dependencies:
- path-key: 3.1.1
-
- nwsapi@2.2.20: {}
-
- object-inspect@1.13.4: {}
-
- object-keys@1.1.1: {}
-
- object.assign@4.1.7:
- dependencies:
- call-bind: 1.0.8
- call-bound: 1.0.4
- define-properties: 1.2.1
- es-object-atoms: 1.1.1
- has-symbols: 1.1.0
- object-keys: 1.1.1
-
- once@1.4.0:
- dependencies:
- wrappy: 1.0.2
-
- onetime@5.1.2:
- dependencies:
- mimic-fn: 2.1.0
-
- opencollective-postinstall@2.0.3: {}
-
- optionator@0.9.4:
- dependencies:
- deep-is: 0.1.4
- fast-levenshtein: 2.0.6
- levn: 0.4.1
- prelude-ls: 1.2.1
- type-check: 0.4.0
- word-wrap: 1.2.5
-
- own-keys@1.0.1:
- dependencies:
- get-intrinsic: 1.3.0
- object-keys: 1.1.1
- safe-push-apply: 1.0.0
-
- p-limit@2.3.0:
- dependencies:
- p-try: 2.2.0
-
- p-limit@3.1.0:
- dependencies:
- yocto-queue: 0.1.0
-
- p-locate@4.1.0:
- dependencies:
- p-limit: 2.3.0
-
- p-locate@5.0.0:
- dependencies:
- p-limit: 3.1.0
-
- p-try@2.2.0: {}
-
- package-json-from-dist@1.0.1: {}
-
- parent-module@1.0.1:
- dependencies:
- callsites: 3.1.0
-
- parse-json@4.0.0:
- dependencies:
- error-ex: 1.3.2
- json-parse-better-errors: 1.0.2
-
- parse-json@5.2.0:
- dependencies:
- "@babel/code-frame": 7.27.1
- error-ex: 1.3.2
- json-parse-even-better-errors: 2.3.1
- lines-and-columns: 1.2.4
-
- parse5@7.3.0:
- dependencies:
- entities: 6.0.1
-
- path-exists@4.0.0: {}
-
- path-is-absolute@1.0.1: {}
-
- path-key@2.0.1: {}
-
- path-key@3.1.1: {}
-
- path-parse@1.0.7: {}
-
- path-scurry@2.0.0:
- dependencies:
- lru-cache: 11.1.0
- minipass: 7.1.2
-
- path-type@3.0.0:
- dependencies:
- pify: 3.0.0
-
- path-type@4.0.0: {}
-
- picocolors@1.1.1: {}
-
- picomatch@2.3.1: {}
+ tapable: 2.3.0
- picomatch@3.0.1: {}
-
- pidtree@0.3.1: {}
-
- pify@3.0.0: {}
-
- pirates@4.0.7: {}
-
- pkg-dir@4.2.0:
- dependencies:
- find-up: 4.1.0
-
- pkg-dir@5.0.0:
- dependencies:
- find-up: 5.0.0
-
- please-upgrade-node@3.2.0:
- dependencies:
- semver-compare: 1.0.0
-
- possible-typed-array-names@1.1.0: {}
-
- prelude-ls@1.2.1: {}
-
- prettier@2.8.8: {}
-
- pretty-format@29.7.0:
- dependencies:
- "@jest/schemas": 29.6.3
- ansi-styles: 5.2.0
- react-is: 18.3.1
-
- pretty-quick@3.3.1(prettier@2.8.8):
- dependencies:
- execa: 4.1.0
- find-up: 4.1.0
- ignore: 5.3.2
- mri: 1.2.0
- picocolors: 1.1.1
- picomatch: 3.0.1
- prettier: 2.8.8
- tslib: 2.8.1
-
- process-nextick-args@2.0.1: {}
-
- prompts@2.4.2:
- dependencies:
- kleur: 3.0.3
- sisteransi: 1.0.5
-
- prr@1.0.1: {}
-
- psl@1.15.0:
- dependencies:
- punycode: 2.3.1
-
- pstree.remy@1.1.8: {}
-
- pump@3.0.3:
- dependencies:
- end-of-stream: 1.4.4
- once: 1.4.0
-
- punycode.js@2.3.1: {}
-
- punycode@1.4.1: {}
-
- punycode@2.3.1: {}
-
- pure-rand@6.1.0: {}
-
- qs@6.14.0:
- dependencies:
- side-channel: 1.1.0
+ es-module-lexer@1.7.0: {}
- querystringify@2.2.0: {}
+ esbuild@0.25.12:
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.25.12
+ '@esbuild/android-arm': 0.25.12
+ '@esbuild/android-arm64': 0.25.12
+ '@esbuild/android-x64': 0.25.12
+ '@esbuild/darwin-arm64': 0.25.12
+ '@esbuild/darwin-x64': 0.25.12
+ '@esbuild/freebsd-arm64': 0.25.12
+ '@esbuild/freebsd-x64': 0.25.12
+ '@esbuild/linux-arm': 0.25.12
+ '@esbuild/linux-arm64': 0.25.12
+ '@esbuild/linux-ia32': 0.25.12
+ '@esbuild/linux-loong64': 0.25.12
+ '@esbuild/linux-mips64el': 0.25.12
+ '@esbuild/linux-ppc64': 0.25.12
+ '@esbuild/linux-riscv64': 0.25.12
+ '@esbuild/linux-s390x': 0.25.12
+ '@esbuild/linux-x64': 0.25.12
+ '@esbuild/netbsd-arm64': 0.25.12
+ '@esbuild/netbsd-x64': 0.25.12
+ '@esbuild/openbsd-arm64': 0.25.12
+ '@esbuild/openbsd-x64': 0.25.12
+ '@esbuild/openharmony-arm64': 0.25.12
+ '@esbuild/sunos-x64': 0.25.12
+ '@esbuild/win32-arm64': 0.25.12
+ '@esbuild/win32-ia32': 0.25.12
+ '@esbuild/win32-x64': 0.25.12
- queue-microtask@1.2.3: {}
+ escalade@3.2.0: {}
- quick-lru@4.0.1: {}
+ eslint-scope@5.1.1:
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 4.3.0
- randombytes@2.1.0:
+ esrecurse@4.3.0:
dependencies:
- safe-buffer: 5.2.1
+ estraverse: 5.3.0
- react-is@18.3.1: {}
+ estraverse@4.3.0: {}
- read-pkg-up@7.0.1:
- dependencies:
- find-up: 4.1.0
- read-pkg: 5.2.0
- type-fest: 0.8.1
+ estraverse@5.3.0: {}
- read-pkg@3.0.0:
+ estree-walker@3.0.3:
dependencies:
- load-json-file: 4.0.0
- normalize-package-data: 2.5.0
- path-type: 3.0.0
+ '@types/estree': 1.0.8
- read-pkg@5.2.0:
- dependencies:
- "@types/normalize-package-data": 2.4.4
- normalize-package-data: 2.5.0
- parse-json: 5.2.0
- type-fest: 0.6.0
+ events@3.3.0: {}
- readable-stream@2.3.8:
- dependencies:
- core-util-is: 1.0.3
- inherits: 2.0.4
- isarray: 1.0.0
- process-nextick-args: 2.0.1
- safe-buffer: 5.1.2
- string_decoder: 1.1.1
- util-deprecate: 1.0.2
-
- readable-stream@3.6.2:
- dependencies:
- inherits: 2.0.4
- string_decoder: 1.3.0
- util-deprecate: 1.0.2
+ expect-type@1.2.2: {}
- readdirp@3.6.0:
- dependencies:
- picomatch: 2.3.1
+ fast-deep-equal@3.1.3: {}
- rechoir@0.7.1:
- dependencies:
- resolve: 1.22.10
+ fast-uri@3.1.0: {}
- redent@3.0.0:
- dependencies:
- indent-string: 4.0.0
- strip-indent: 3.0.0
+ fdir@6.5.0(picomatch@4.0.3):
+ optionalDependencies:
+ picomatch: 4.0.3
- reflect.getprototypeof@1.0.10:
- dependencies:
- call-bind: 1.0.8
- define-properties: 1.2.1
- es-abstract: 1.24.0
- es-errors: 1.3.0
- es-object-atoms: 1.1.1
- get-intrinsic: 1.3.0
- get-proto: 1.0.1
- which-builtin-type: 1.2.1
-
- regexp.prototype.flags@1.5.4:
+ fill-range@7.1.1:
dependencies:
- call-bind: 1.0.8
- define-properties: 1.2.1
- es-errors: 1.3.0
- get-proto: 1.0.1
- gopd: 1.2.0
- set-function-name: 2.0.2
+ to-regex-range: 5.0.1
- require-directory@2.1.1: {}
+ fsevents@2.3.2:
+ optional: true
- require-from-string@2.0.2: {}
+ fsevents@2.3.3:
+ optional: true
- requires-port@1.0.0: {}
+ get-caller-file@2.0.5: {}
- resolve-cwd@3.0.0:
- dependencies:
- resolve-from: 5.0.0
+ glob-to-regexp@0.4.1: {}
- resolve-from@4.0.0: {}
+ graceful-fs@4.2.11: {}
- resolve-from@5.0.0: {}
+ graphql@16.12.0: {}
- resolve-global@1.0.0:
- dependencies:
- global-dirs: 0.1.1
+ has-flag@4.0.0: {}
- resolve.exports@2.0.3: {}
+ headers-polyfill@4.0.3: {}
- resolve@1.22.10:
- dependencies:
- is-core-module: 2.16.1
- path-parse: 1.0.7
- supports-preserve-symlinks-flag: 1.0.0
+ is-fullwidth-code-point@3.0.0: {}
- reusify@1.1.0: {}
+ is-node-process@1.2.0: {}
- rimraf@3.0.2:
- dependencies:
- glob: 7.2.3
+ is-number@7.0.0: {}
- run-con@1.3.2:
+ jest-worker@27.5.1:
dependencies:
- deep-extend: 0.6.0
- ini: 4.1.3
- minimist: 1.2.8
- strip-json-comments: 3.1.1
+ '@types/node': 18.19.130
+ merge-stream: 2.0.0
+ supports-color: 8.1.1
- run-parallel@1.2.0:
- dependencies:
- queue-microtask: 1.2.3
+ js-tokens@9.0.1: {}
- safe-array-concat@1.1.3:
- dependencies:
- call-bind: 1.0.8
- call-bound: 1.0.4
- get-intrinsic: 1.3.0
- has-symbols: 1.1.0
- isarray: 2.0.5
+ json-parse-even-better-errors@2.3.1: {}
- safe-buffer@5.1.2: {}
+ json-schema-traverse@1.0.0: {}
- safe-buffer@5.2.1: {}
+ loader-runner@4.3.1: {}
- safe-push-apply@1.0.0:
- dependencies:
- es-errors: 1.3.0
- isarray: 2.0.5
+ loupe@3.2.1: {}
- safe-regex-test@1.1.0:
+ magic-string@0.30.21:
dependencies:
- call-bound: 1.0.4
- es-errors: 1.3.0
- is-regex: 1.2.1
+ '@jridgewell/sourcemap-codec': 1.5.5
- safer-buffer@2.1.2: {}
+ merge-stream@2.0.0: {}
- saxes@6.0.0:
+ micromatch@4.0.8:
dependencies:
- xmlchars: 2.2.0
+ braces: 3.0.3
+ picomatch: 2.3.1
+
+ mime-db@1.52.0: {}
- schema-utils@4.3.2:
+ mime-types@2.1.35:
dependencies:
- "@types/json-schema": 7.0.15
- ajv: 8.17.1
- ajv-formats: 2.1.1(ajv@8.17.1)
- ajv-keywords: 5.1.0(ajv@8.17.1)
+ mime-db: 1.52.0
- secure-keys@1.0.0: {}
+ ms@2.1.3: {}
- semantic-release-plugin-update-version-in-files@1.1.0:
- dependencies:
- debug: 4.4.1(supports-color@5.5.0)
- glob: 7.2.3
+ msw@2.11.2(@types/node@18.19.130)(typescript@5.7.3):
+ dependencies:
+ '@bundled-es-modules/cookie': 2.0.1
+ '@bundled-es-modules/statuses': 1.0.1
+ '@inquirer/confirm': 5.1.21(@types/node@18.19.130)
+ '@mswjs/interceptors': 0.39.8
+ '@open-draft/deferred-promise': 2.2.0
+ '@open-draft/until': 2.1.0
+ '@types/cookie': 0.6.0
+ '@types/statuses': 2.0.6
+ graphql: 16.12.0
+ headers-polyfill: 4.0.3
+ is-node-process: 1.2.0
+ outvariant: 1.4.3
+ path-to-regexp: 6.3.0
+ picocolors: 1.1.1
+ rettime: 0.7.0
+ strict-event-emitter: 0.5.1
+ tough-cookie: 6.0.0
+ type-fest: 4.41.0
+ yargs: 17.7.2
+ optionalDependencies:
+ typescript: 5.7.3
transitivePeerDependencies:
- - supports-color
+ - '@types/node'
- semver-compare@1.0.0: {}
+ mute-stream@2.0.0: {}
- semver-regex@3.1.4: {}
+ nanoid@3.3.11: {}
- semver@5.7.2: {}
+ neo-async@2.6.2: {}
- semver@6.3.1: {}
+ node-releases@2.0.27: {}
- semver@7.5.4:
- dependencies:
- lru-cache: 6.0.0
+ outvariant@1.4.3: {}
- semver@7.7.2: {}
+ path-to-regexp@6.3.0: {}
- serialize-javascript@6.0.2:
- dependencies:
- randombytes: 2.1.0
+ pathe@2.0.3: {}
- set-function-length@1.2.2:
- dependencies:
- define-data-property: 1.1.4
- es-errors: 1.3.0
- function-bind: 1.1.2
- get-intrinsic: 1.3.0
- gopd: 1.2.0
- has-property-descriptors: 1.0.2
-
- set-function-name@2.0.2:
- dependencies:
- define-data-property: 1.1.4
- es-errors: 1.3.0
- functions-have-names: 1.2.3
- has-property-descriptors: 1.0.2
+ pathval@2.0.1: {}
- set-proto@1.0.0:
- dependencies:
- dunder-proto: 1.0.1
- es-errors: 1.3.0
- es-object-atoms: 1.1.1
+ picocolors@1.1.1: {}
+
+ picomatch@2.3.1: {}
- shallow-clone@3.0.1:
+ picomatch@4.0.3: {}
+
+ playwright-core@1.56.1: {}
+
+ playwright@1.56.1:
dependencies:
- kind-of: 6.0.3
+ playwright-core: 1.56.1
+ optionalDependencies:
+ fsevents: 2.3.2
- shebang-command@1.2.0:
+ postcss@8.5.6:
dependencies:
- shebang-regex: 1.0.0
+ nanoid: 3.3.11
+ picocolors: 1.1.1
+ source-map-js: 1.2.1
- shebang-command@2.0.0:
+ randombytes@2.1.0:
dependencies:
- shebang-regex: 3.0.0
+ safe-buffer: 5.2.1
- shebang-regex@1.0.0: {}
+ require-directory@2.1.1: {}
- shebang-regex@3.0.0: {}
+ require-from-string@2.0.2: {}
- shell-quote@1.8.3: {}
+ rettime@0.7.0: {}
- shiki@0.10.1:
+ rollup@4.53.3:
dependencies:
- jsonc-parser: 3.3.1
- vscode-oniguruma: 1.7.0
- vscode-textmate: 5.2.0
+ '@types/estree': 1.0.8
+ optionalDependencies:
+ '@rollup/rollup-android-arm-eabi': 4.53.3
+ '@rollup/rollup-android-arm64': 4.53.3
+ '@rollup/rollup-darwin-arm64': 4.53.3
+ '@rollup/rollup-darwin-x64': 4.53.3
+ '@rollup/rollup-freebsd-arm64': 4.53.3
+ '@rollup/rollup-freebsd-x64': 4.53.3
+ '@rollup/rollup-linux-arm-gnueabihf': 4.53.3
+ '@rollup/rollup-linux-arm-musleabihf': 4.53.3
+ '@rollup/rollup-linux-arm64-gnu': 4.53.3
+ '@rollup/rollup-linux-arm64-musl': 4.53.3
+ '@rollup/rollup-linux-loong64-gnu': 4.53.3
+ '@rollup/rollup-linux-ppc64-gnu': 4.53.3
+ '@rollup/rollup-linux-riscv64-gnu': 4.53.3
+ '@rollup/rollup-linux-riscv64-musl': 4.53.3
+ '@rollup/rollup-linux-s390x-gnu': 4.53.3
+ '@rollup/rollup-linux-x64-gnu': 4.53.3
+ '@rollup/rollup-linux-x64-musl': 4.53.3
+ '@rollup/rollup-openharmony-arm64': 4.53.3
+ '@rollup/rollup-win32-arm64-msvc': 4.53.3
+ '@rollup/rollup-win32-ia32-msvc': 4.53.3
+ '@rollup/rollup-win32-x64-gnu': 4.53.3
+ '@rollup/rollup-win32-x64-msvc': 4.53.3
+ fsevents: 2.3.3
- side-channel-list@1.0.0:
- dependencies:
- es-errors: 1.3.0
- object-inspect: 1.13.4
+ safe-buffer@5.2.1: {}
- side-channel-map@1.0.1:
+ schema-utils@4.3.3:
dependencies:
- call-bound: 1.0.4
- es-errors: 1.3.0
- get-intrinsic: 1.3.0
- object-inspect: 1.13.4
+ '@types/json-schema': 7.0.15
+ ajv: 8.17.1
+ ajv-formats: 2.1.1(ajv@8.17.1)
+ ajv-keywords: 5.1.0(ajv@8.17.1)
- side-channel-weakmap@1.0.2:
- dependencies:
- call-bound: 1.0.4
- es-errors: 1.3.0
- get-intrinsic: 1.3.0
- object-inspect: 1.13.4
- side-channel-map: 1.0.1
+ semver@7.7.3: {}
- side-channel@1.1.0:
+ serialize-javascript@6.0.2:
dependencies:
- es-errors: 1.3.0
- object-inspect: 1.13.4
- side-channel-list: 1.0.0
- side-channel-map: 1.0.1
- side-channel-weakmap: 1.0.2
+ randombytes: 2.1.0
- signal-exit@3.0.7: {}
+ siginfo@2.0.0: {}
signal-exit@4.1.0: {}
- simple-update-notifier@2.0.0:
- dependencies:
- semver: 7.7.2
-
- sisteransi@1.0.5: {}
-
- slash@3.0.0: {}
-
- smol-toml@1.3.4: {}
-
- source-map-support@0.5.13:
- dependencies:
- buffer-from: 1.1.2
- source-map: 0.6.1
+ source-map-js@1.2.1: {}
source-map-support@0.5.21:
dependencies:
@@ -9173,44 +1950,15 @@ snapshots:
source-map@0.6.1: {}
- spdx-correct@3.2.0:
- dependencies:
- spdx-expression-parse: 3.0.1
- spdx-license-ids: 3.0.21
-
- spdx-exceptions@2.5.0: {}
-
- spdx-expression-parse@3.0.1:
- dependencies:
- spdx-exceptions: 2.5.0
- spdx-license-ids: 3.0.21
-
- spdx-license-ids@3.0.21: {}
-
- split2@3.2.2:
- dependencies:
- readable-stream: 3.6.2
-
- sprintf-js@1.0.3: {}
+ source-map@0.7.6: {}
- stack-utils@2.0.6:
- dependencies:
- escape-string-regexp: 2.0.0
+ stackback@0.0.2: {}
- stop-iteration-iterator@1.1.0:
- dependencies:
- es-errors: 1.3.0
- internal-slot: 1.1.0
+ statuses@2.0.2: {}
- stream-browserify@3.0.0:
- dependencies:
- inherits: 2.0.4
- readable-stream: 3.6.2
+ std-env@3.10.0: {}
- string-length@4.0.2:
- dependencies:
- char-regex: 1.0.2
- strip-ansi: 6.0.1
+ strict-event-emitter@0.5.1: {}
string-width@4.2.3:
dependencies:
@@ -9218,73 +1966,13 @@ snapshots:
is-fullwidth-code-point: 3.0.0
strip-ansi: 6.0.1
- string-width@5.1.2:
- dependencies:
- eastasianwidth: 0.2.0
- emoji-regex: 9.2.2
- strip-ansi: 7.1.0
-
- string.prototype.padend@3.1.6:
- dependencies:
- call-bind: 1.0.8
- define-properties: 1.2.1
- es-abstract: 1.24.0
- es-object-atoms: 1.1.1
-
- string.prototype.trim@1.2.10:
- dependencies:
- call-bind: 1.0.8
- call-bound: 1.0.4
- define-data-property: 1.1.4
- define-properties: 1.2.1
- es-abstract: 1.24.0
- es-object-atoms: 1.1.1
- has-property-descriptors: 1.0.2
-
- string.prototype.trimend@1.0.9:
- dependencies:
- call-bind: 1.0.8
- call-bound: 1.0.4
- define-properties: 1.2.1
- es-object-atoms: 1.1.1
-
- string.prototype.trimstart@1.0.8:
- dependencies:
- call-bind: 1.0.8
- define-properties: 1.2.1
- es-object-atoms: 1.1.1
-
- string_decoder@1.1.1:
- dependencies:
- safe-buffer: 5.1.2
-
- string_decoder@1.3.0:
- dependencies:
- safe-buffer: 5.2.1
-
strip-ansi@6.0.1:
dependencies:
ansi-regex: 5.0.1
- strip-ansi@7.1.0:
- dependencies:
- ansi-regex: 6.1.0
-
- strip-bom@3.0.0: {}
-
- strip-bom@4.0.0: {}
-
- strip-final-newline@2.0.0: {}
-
- strip-indent@3.0.0:
- dependencies:
- min-indent: 1.0.1
-
- strip-json-comments@3.1.1: {}
-
- supports-color@5.5.0:
+ strip-literal@3.1.0:
dependencies:
- has-flag: 3.0.0
+ js-tokens: 9.0.1
supports-color@7.2.0:
dependencies:
@@ -9294,411 +1982,199 @@ snapshots:
dependencies:
has-flag: 4.0.0
- supports-preserve-symlinks-flag@1.0.0: {}
-
- symbol-tree@3.2.4: {}
-
- tapable@1.1.3: {}
-
- tapable@2.2.2: {}
+ tapable@2.3.0: {}
- terser-webpack-plugin@5.3.14(webpack@5.99.9):
+ terser-webpack-plugin@5.3.14(webpack@5.103.0):
dependencies:
- "@jridgewell/trace-mapping": 0.3.25
+ '@jridgewell/trace-mapping': 0.3.31
jest-worker: 27.5.1
- schema-utils: 4.3.2
+ schema-utils: 4.3.3
serialize-javascript: 6.0.2
- terser: 5.42.0
- webpack: 5.99.9(webpack-cli@4.10.0)
+ terser: 5.44.1
+ webpack: 5.103.0
- terser@5.42.0:
+ terser@5.44.1:
dependencies:
- "@jridgewell/source-map": 0.3.6
+ '@jridgewell/source-map': 0.3.11
acorn: 8.15.0
commander: 2.20.3
source-map-support: 0.5.21
- test-exclude@6.0.0:
- dependencies:
- "@istanbuljs/schema": 0.1.3
- glob: 7.2.3
- minimatch: 3.1.2
-
- text-extensions@1.9.0: {}
+ tinybench@2.9.0: {}
- text-table@0.2.0: {}
+ tinyexec@0.3.2: {}
- through2@4.0.2:
+ tinyglobby@0.2.15:
dependencies:
- readable-stream: 3.6.2
-
- through@2.3.8: {}
-
- tmpl@1.0.5: {}
+ fdir: 6.5.0(picomatch@4.0.3)
+ picomatch: 4.0.3
- to-regex-range@5.0.1:
- dependencies:
- is-number: 7.0.0
+ tinypool@1.1.1: {}
- touch@3.1.1: {}
+ tinyrainbow@2.0.0: {}
- tough-cookie@4.1.4:
- dependencies:
- psl: 1.15.0
- punycode: 2.3.1
- universalify: 0.2.0
- url-parse: 1.5.10
+ tinyspy@4.0.4: {}
- tr46@0.0.3: {}
+ tldts-core@7.0.18: {}
- tr46@3.0.0:
+ tldts@7.0.18:
dependencies:
- punycode: 2.3.1
+ tldts-core: 7.0.18
- trim-newlines@3.0.1: {}
-
- ts-api-utils@2.1.0(typescript@4.9.5):
+ to-regex-range@5.0.1:
dependencies:
- typescript: 4.9.5
+ is-number: 7.0.0
- ts-jest@29.4.0(@babel/core@7.27.4)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.27.4))(jest-util@29.7.0)(jest@29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5)))(typescript@4.9.5):
+ tough-cookie@6.0.0:
dependencies:
- bs-logger: 0.2.6
- ejs: 3.1.10
- fast-json-stable-stringify: 2.1.0
- jest: 29.7.0(@types/node@18.19.112)(ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5))
- json5: 2.2.3
- lodash.memoize: 4.1.2
- make-error: 1.3.6
- semver: 7.7.2
- type-fest: 4.41.0
- typescript: 4.9.5
- yargs-parser: 21.1.1
- optionalDependencies:
- "@babel/core": 7.27.4
- "@jest/transform": 29.7.0
- "@jest/types": 29.6.3
- babel-jest: 29.7.0(@babel/core@7.27.4)
- jest-util: 29.7.0
+ tldts: 7.0.18
- ts-loader@8.4.0(typescript@4.9.5)(webpack@5.99.9):
+ ts-loader@9.5.4(typescript@5.7.3)(webpack@5.103.0):
dependencies:
chalk: 4.1.2
- enhanced-resolve: 4.5.0
- loader-utils: 2.0.4
+ enhanced-resolve: 5.18.3
micromatch: 4.0.8
- semver: 7.7.2
- typescript: 4.9.5
- webpack: 5.99.9(webpack-cli@4.10.0)
-
- ts-node@10.9.2(@types/node@18.19.112)(typescript@4.9.5):
- dependencies:
- "@cspotcode/source-map-support": 0.8.1
- "@tsconfig/node10": 1.0.11
- "@tsconfig/node12": 1.0.11
- "@tsconfig/node14": 1.0.3
- "@tsconfig/node16": 1.0.4
- "@types/node": 18.19.112
- acorn: 8.15.0
- acorn-walk: 8.3.4
- arg: 4.1.3
- create-require: 1.1.1
- diff: 4.0.2
- make-error: 1.3.6
- typescript: 4.9.5
- v8-compile-cache-lib: 3.0.1
- yn: 3.1.1
-
- ts-node@10.9.2(@types/node@20.5.1)(typescript@4.9.5):
- dependencies:
- "@cspotcode/source-map-support": 0.8.1
- "@tsconfig/node10": 1.0.11
- "@tsconfig/node12": 1.0.11
- "@tsconfig/node14": 1.0.3
- "@tsconfig/node16": 1.0.4
- "@types/node": 20.5.1
- acorn: 8.15.0
- acorn-walk: 8.3.4
- arg: 4.1.3
- create-require: 1.1.1
- diff: 4.0.2
- make-error: 1.3.6
- typescript: 4.9.5
- v8-compile-cache-lib: 3.0.1
- yn: 3.1.1
-
- tslib@2.8.1: {}
-
- type-check@0.4.0:
- dependencies:
- prelude-ls: 1.2.1
-
- type-detect@4.0.8: {}
-
- type-fest@0.18.1: {}
-
- type-fest@0.20.2: {}
-
- type-fest@0.21.3: {}
-
- type-fest@0.6.0: {}
-
- type-fest@0.8.1: {}
+ semver: 7.7.3
+ source-map: 0.7.6
+ typescript: 5.7.3
+ webpack: 5.103.0
type-fest@4.41.0: {}
- typed-array-buffer@1.0.3:
- dependencies:
- call-bound: 1.0.4
- es-errors: 1.3.0
- is-typed-array: 1.1.15
-
- typed-array-byte-length@1.0.3:
- dependencies:
- call-bind: 1.0.8
- for-each: 0.3.5
- gopd: 1.2.0
- has-proto: 1.2.0
- is-typed-array: 1.1.15
-
- typed-array-byte-offset@1.0.4:
- dependencies:
- available-typed-arrays: 1.0.7
- call-bind: 1.0.8
- for-each: 0.3.5
- gopd: 1.2.0
- has-proto: 1.2.0
- is-typed-array: 1.1.15
- reflect.getprototypeof: 1.0.10
-
- typed-array-length@1.0.7:
- dependencies:
- call-bind: 1.0.8
- for-each: 0.3.5
- gopd: 1.2.0
- is-typed-array: 1.1.15
- possible-typed-array-names: 1.1.0
- reflect.getprototypeof: 1.0.10
-
- typedoc@0.22.18(typescript@4.9.5):
- dependencies:
- glob: 8.1.0
- lunr: 2.3.9
- marked: 4.3.0
- minimatch: 5.1.6
- shiki: 0.10.1
- typescript: 4.9.5
-
- typescript@4.9.5: {}
-
- uc.micro@2.1.0: {}
-
- unbox-primitive@1.1.0:
- dependencies:
- call-bound: 1.0.4
- has-bigints: 1.1.0
- has-symbols: 1.1.0
- which-boxed-primitive: 1.1.1
-
- undefsafe@2.0.5: {}
+ typescript@5.7.3: {}
undici-types@5.26.5: {}
- universalify@0.2.0: {}
-
- universalify@2.0.1: {}
-
- update-browserslist-db@1.1.3(browserslist@4.25.0):
+ update-browserslist-db@1.1.4(browserslist@4.28.0):
dependencies:
- browserslist: 4.25.0
+ browserslist: 4.28.0
escalade: 3.2.0
picocolors: 1.1.1
- uri-js@4.4.1:
- dependencies:
- punycode: 2.3.1
-
- url-parse@1.5.10:
- dependencies:
- querystringify: 2.2.0
- requires-port: 1.0.0
-
- url@0.11.4:
- dependencies:
- punycode: 1.4.1
- qs: 6.14.0
-
- util-deprecate@1.0.2: {}
-
- util@0.12.5:
- dependencies:
- inherits: 2.0.4
- is-arguments: 1.2.0
- is-generator-function: 1.1.0
- is-typed-array: 1.1.15
- which-typed-array: 1.1.19
-
- v8-compile-cache-lib@3.0.1: {}
-
- v8-to-istanbul@9.3.0:
- dependencies:
- "@jridgewell/trace-mapping": 0.3.25
- "@types/istanbul-lib-coverage": 2.0.6
- convert-source-map: 2.0.0
-
- validate-npm-package-license@3.0.4:
- dependencies:
- spdx-correct: 3.2.0
- spdx-expression-parse: 3.0.1
-
- vscode-oniguruma@1.7.0: {}
-
- vscode-textmate@5.2.0: {}
-
- w3c-xmlserializer@4.0.0:
+ vite-node@3.2.4(@types/node@18.19.130)(terser@5.44.1):
dependencies:
- xml-name-validator: 4.0.0
-
- walker@1.0.8:
- dependencies:
- makeerror: 1.0.12
+ cac: 6.7.14
+ debug: 4.4.3
+ es-module-lexer: 1.7.0
+ pathe: 2.0.3
+ vite: 7.2.2(@types/node@18.19.130)(terser@5.44.1)
+ transitivePeerDependencies:
+ - '@types/node'
+ - jiti
+ - less
+ - lightningcss
+ - sass
+ - sass-embedded
+ - stylus
+ - sugarss
+ - supports-color
+ - terser
+ - tsx
+ - yaml
+
+ vite@7.2.2(@types/node@18.19.130)(terser@5.44.1):
+ dependencies:
+ esbuild: 0.25.12
+ fdir: 6.5.0(picomatch@4.0.3)
+ picomatch: 4.0.3
+ postcss: 8.5.6
+ rollup: 4.53.3
+ tinyglobby: 0.2.15
+ optionalDependencies:
+ '@types/node': 18.19.130
+ fsevents: 2.3.3
+ terser: 5.44.1
+
+ vitest@3.2.4(@types/node@18.19.130)(msw@2.11.2(@types/node@18.19.130)(typescript@5.7.3))(terser@5.44.1):
+ dependencies:
+ '@types/chai': 5.2.3
+ '@vitest/expect': 3.2.4
+ '@vitest/mocker': 3.2.4(msw@2.11.2(@types/node@18.19.130)(typescript@5.7.3))(vite@7.2.2(@types/node@18.19.130)(terser@5.44.1))
+ '@vitest/pretty-format': 3.2.4
+ '@vitest/runner': 3.2.4
+ '@vitest/snapshot': 3.2.4
+ '@vitest/spy': 3.2.4
+ '@vitest/utils': 3.2.4
+ chai: 5.3.3
+ debug: 4.4.3
+ expect-type: 1.2.2
+ magic-string: 0.30.21
+ pathe: 2.0.3
+ picomatch: 4.0.3
+ std-env: 3.10.0
+ tinybench: 2.9.0
+ tinyexec: 0.3.2
+ tinyglobby: 0.2.15
+ tinypool: 1.1.1
+ tinyrainbow: 2.0.0
+ vite: 7.2.2(@types/node@18.19.130)(terser@5.44.1)
+ vite-node: 3.2.4(@types/node@18.19.130)(terser@5.44.1)
+ why-is-node-running: 2.3.0
+ optionalDependencies:
+ '@types/node': 18.19.130
+ transitivePeerDependencies:
+ - jiti
+ - less
+ - lightningcss
+ - msw
+ - sass
+ - sass-embedded
+ - stylus
+ - sugarss
+ - supports-color
+ - terser
+ - tsx
+ - yaml
watchpack@2.4.4:
dependencies:
glob-to-regexp: 0.4.1
graceful-fs: 4.2.11
- webidl-conversions@3.0.1: {}
-
- webidl-conversions@7.0.0: {}
-
- webpack-cli@4.10.0(webpack@5.99.9):
- dependencies:
- "@discoveryjs/json-ext": 0.5.7
- "@webpack-cli/configtest": 1.2.0(webpack-cli@4.10.0)(webpack@5.99.9)
- "@webpack-cli/info": 1.5.0(webpack-cli@4.10.0)
- "@webpack-cli/serve": 1.7.0(webpack-cli@4.10.0)
- colorette: 2.0.20
- commander: 7.2.0
- cross-spawn: 7.0.6
- fastest-levenshtein: 1.0.16
- import-local: 3.2.0
- interpret: 2.2.0
- rechoir: 0.7.1
- webpack: 5.99.9(webpack-cli@4.10.0)
- webpack-merge: 5.10.0
-
- webpack-merge@5.10.0:
- dependencies:
- clone-deep: 4.0.1
- flat: 5.0.2
- wildcard: 2.0.1
+ webpack-sources@3.3.3: {}
- webpack-sources@3.3.2: {}
-
- webpack@5.99.9(webpack-cli@4.10.0):
+ webpack@5.103.0:
dependencies:
- "@types/eslint-scope": 3.7.7
- "@types/estree": 1.0.8
- "@types/json-schema": 7.0.15
- "@webassemblyjs/ast": 1.14.1
- "@webassemblyjs/wasm-edit": 1.14.1
- "@webassemblyjs/wasm-parser": 1.14.1
+ '@types/eslint-scope': 3.7.7
+ '@types/estree': 1.0.8
+ '@types/json-schema': 7.0.15
+ '@webassemblyjs/ast': 1.14.1
+ '@webassemblyjs/wasm-edit': 1.14.1
+ '@webassemblyjs/wasm-parser': 1.14.1
acorn: 8.15.0
- browserslist: 4.25.0
+ acorn-import-phases: 1.0.4(acorn@8.15.0)
+ browserslist: 4.28.0
chrome-trace-event: 1.0.4
- enhanced-resolve: 5.18.1
+ enhanced-resolve: 5.18.3
es-module-lexer: 1.7.0
eslint-scope: 5.1.1
events: 3.3.0
glob-to-regexp: 0.4.1
graceful-fs: 4.2.11
json-parse-even-better-errors: 2.3.1
- loader-runner: 4.3.0
+ loader-runner: 4.3.1
mime-types: 2.1.35
neo-async: 2.6.2
- schema-utils: 4.3.2
- tapable: 2.2.2
- terser-webpack-plugin: 5.3.14(webpack@5.99.9)
+ schema-utils: 4.3.3
+ tapable: 2.3.0
+ terser-webpack-plugin: 5.3.14(webpack@5.103.0)
watchpack: 2.4.4
- webpack-sources: 3.3.2
- optionalDependencies:
- webpack-cli: 4.10.0(webpack@5.99.9)
+ webpack-sources: 3.3.3
transitivePeerDependencies:
- - "@swc/core"
+ - '@swc/core'
- esbuild
- uglify-js
- whatwg-encoding@2.0.0:
- dependencies:
- iconv-lite: 0.6.3
-
- whatwg-mimetype@3.0.0: {}
-
- whatwg-url@11.0.0:
- dependencies:
- tr46: 3.0.0
- webidl-conversions: 7.0.0
-
- whatwg-url@5.0.0:
- dependencies:
- tr46: 0.0.3
- webidl-conversions: 3.0.1
-
- which-boxed-primitive@1.1.1:
- dependencies:
- is-bigint: 1.1.0
- is-boolean-object: 1.2.2
- is-number-object: 1.1.1
- is-string: 1.1.1
- is-symbol: 1.1.1
-
- which-builtin-type@1.2.1:
- dependencies:
- call-bound: 1.0.4
- function.prototype.name: 1.1.8
- has-tostringtag: 1.0.2
- is-async-function: 2.1.1
- is-date-object: 1.1.0
- is-finalizationregistry: 1.1.1
- is-generator-function: 1.1.0
- is-regex: 1.2.1
- is-weakref: 1.1.1
- isarray: 2.0.5
- which-boxed-primitive: 1.1.1
- which-collection: 1.0.2
- which-typed-array: 1.1.19
-
- which-collection@1.0.2:
- dependencies:
- is-map: 2.0.3
- is-set: 2.0.3
- is-weakmap: 2.0.2
- is-weakset: 2.0.4
-
- which-pm-runs@1.1.0: {}
-
- which-typed-array@1.1.19:
- dependencies:
- available-typed-arrays: 1.0.7
- call-bind: 1.0.8
- call-bound: 1.0.4
- for-each: 0.3.5
- get-proto: 1.0.1
- gopd: 1.2.0
- has-tostringtag: 1.0.2
-
- which@1.3.1:
+ why-is-node-running@2.3.0:
dependencies:
- isexe: 2.0.0
+ siginfo: 2.0.0
+ stackback: 0.0.2
- which@2.0.2:
+ wrap-ansi@6.2.0:
dependencies:
- isexe: 2.0.0
-
- wildcard@2.0.1: {}
-
- word-wrap@1.2.5: {}
+ ansi-styles: 4.3.0
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
wrap-ansi@7.0.0:
dependencies:
@@ -9706,54 +2182,12 @@ snapshots:
string-width: 4.2.3
strip-ansi: 6.0.1
- wrap-ansi@8.1.0:
- dependencies:
- ansi-styles: 6.2.1
- string-width: 5.1.2
- strip-ansi: 7.1.0
-
- wrappy@1.0.2: {}
-
- write-file-atomic@4.0.2:
- dependencies:
- imurmurhash: 0.1.4
- signal-exit: 3.0.7
-
- ws@8.18.2: {}
-
- xml-name-validator@4.0.0: {}
-
- xmlchars@2.2.0: {}
+ ws@8.18.3: {}
y18n@5.0.8: {}
- yallist@3.1.1: {}
-
- yallist@4.0.0: {}
-
- yaml-lint@1.7.0:
- dependencies:
- consola: 2.15.3
- globby: 11.1.0
- js-yaml: 4.1.0
- nconf: 0.12.1
-
- yaml@1.10.2: {}
-
- yargs-parser@20.2.9: {}
-
yargs-parser@21.1.1: {}
- yargs@16.2.0:
- dependencies:
- cliui: 7.0.4
- escalade: 3.2.0
- get-caller-file: 2.0.5
- require-directory: 2.1.1
- string-width: 4.2.3
- y18n: 5.0.8
- yargs-parser: 20.2.9
-
yargs@17.7.2:
dependencies:
cliui: 8.0.1
@@ -9764,6 +2198,4 @@ snapshots:
y18n: 5.0.8
yargs-parser: 21.1.1
- yn@3.1.1: {}
-
- yocto-queue@0.1.0: {}
+ yoctocolors-cjs@2.1.3: {}
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
new file mode 100644
index 00000000..6e4c3951
--- /dev/null
+++ b/pnpm-workspace.yaml
@@ -0,0 +1 @@
+packages: ['.']
\ No newline at end of file
diff --git a/reference.md b/reference.md
new file mode 100644
index 00000000..78cd2be8
--- /dev/null
+++ b/reference.md
@@ -0,0 +1,2931 @@
+# Reference
+## Agent V1 Settings Think Models
+client.agent.v1.settings.think.models.list () -> Deepgram.AgentThinkModelsV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves the available think models that can be used for AI agent processing
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.agent.v1.settings.think.models.list();
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**requestOptions:** `ModelsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Auth V1 Tokens
+client.auth.v1.tokens.grant ({ ...params }) -> Deepgram.GrantV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Generates a temporary JSON Web Token (JWT) with a 30-second (by default) TTL and usage::write permission for core voice APIs, requiring an API key with Member or higher authorization. Tokens created with this endpoint will not work with the Manage APIs.
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.auth.v1.tokens.grant();
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**request:** `Deepgram.auth.v1.GrantV1Request`
+
+
+
+
+
+
+
+**requestOptions:** `TokensClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Listen V1 Media
+client.listen.v1.media.transcribeUrl ({ ...params }) -> Deepgram.MediaTranscribeResponse
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Transcribe audio and video using Deepgram's speech-to-text REST API
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.listen.v1.media.transcribeUrl({
+ callback: "callback",
+ callback_method: "POST",
+ extra: "extra",
+ sentiment: true,
+ summarize: "v2",
+ tag: "tag",
+ topics: true,
+ custom_topic: "custom_topic",
+ custom_topic_mode: "extended",
+ intents: true,
+ custom_intent: "custom_intent",
+ custom_intent_mode: "extended",
+ detect_entities: true,
+ detect_language: true,
+ diarize: true,
+ dictation: true,
+ encoding: "linear16",
+ filler_words: true,
+ keywords: "keywords",
+ language: "language",
+ measurements: true,
+ model: "nova-3",
+ multichannel: true,
+ numerals: true,
+ paragraphs: true,
+ profanity_filter: true,
+ punctuate: true,
+ redact: "redact",
+ replace: "replace",
+ search: "search",
+ smart_format: true,
+ utterances: true,
+ utt_split: 1.1,
+ version: "latest",
+ mip_opt_out: true,
+ url: "https://dpgr.am/spacewalk.wav"
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**request:** `Deepgram.listen.v1.ListenV1RequestUrl`
+
+
+
+
+
+
+
+**requestOptions:** `MediaClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.listen.v1.media.transcribeFile (uploadable, { ...params }) -> Deepgram.MediaTranscribeResponse
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Transcribe audio and video using Deepgram's speech-to-text REST API
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.listen.v1.media.transcribeFile(createReadStream("path/to/file"), {});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**uploadable:** `core.file.Uploadable`
+
+
+
+
+
+
+
+**request:** `Deepgram.listen.v1.MediaTranscribeRequestOctetStream`
+
+
+
+
+
+
+
+**requestOptions:** `MediaClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Models
+client.manage.v1.models.list ({ ...params }) -> Deepgram.ListModelsV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Returns metadata on all the latest public models. To retrieve custom models, use Get Project Models.
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.models.list({
+ include_outdated: true
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.ModelsListRequest`
+
+
+
+
+
+
+
+**requestOptions:** `ModelsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.models.get (model_id) -> Deepgram.GetModelV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Returns metadata for a specific public model
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.models.get("af6e9977-99f6-4d8f-b6f5-dfdf6fb6e291");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**model_id:** `string` — The specific UUID of the model
+
+
+
+
+
+
+
+**requestOptions:** `ModelsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects
+client.manage.v1.projects.list () -> Deepgram.ListProjectsV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves basic information about the projects associated with the API key
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.list();
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**requestOptions:** `ProjectsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.get (project_id, { ...params }) -> Deepgram.GetProjectV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves information about the specified project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.get("123456-7890-1234-5678-901234", {
+ limit: 1.1,
+ page: 1.1
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.ProjectsGetRequest`
+
+
+
+
+
+
+
+**requestOptions:** `ProjectsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.delete (project_id) -> Deepgram.DeleteProjectV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Deletes the specified project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.delete("123456-7890-1234-5678-901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**requestOptions:** `ProjectsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.update (project_id, { ...params }) -> Deepgram.UpdateProjectV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Updates the name or other properties of an existing project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.update("123456-7890-1234-5678-901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.UpdateProjectV1Request`
+
+
+
+
+
+
+
+**requestOptions:** `ProjectsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.leave (project_id) -> Deepgram.LeaveProjectV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Removes the authenticated account from the specific project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.leave("123456-7890-1234-5678-901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**requestOptions:** `ProjectsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Keys
+client.manage.v1.projects.keys.list (project_id, { ...params }) -> Deepgram.ListProjectKeysV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves all API keys associated with the specified project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.keys.list("123456-7890-1234-5678-901234", {
+ status: "active"
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.projects.KeysListRequest`
+
+
+
+
+
+
+
+**requestOptions:** `KeysClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.keys.create (project_id, { ...params }) -> Deepgram.CreateKeyV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Creates a new API key with specified settings for the project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.keys.create("project_id", {
+ "key": "value"
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.CreateKeyV1RequestOne`
+
+
+
+
+
+
+
+**requestOptions:** `KeysClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.keys.get (project_id, key_id) -> Deepgram.GetProjectKeyV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves information about a specified API key
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.keys.get("123456-7890-1234-5678-901234", "123456789012345678901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**key_id:** `string` — The unique identifier of the API key
+
+
+
+
+
+
+
+**requestOptions:** `KeysClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.keys.delete (project_id, key_id) -> Deepgram.DeleteProjectKeyV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Deletes an API key for a specific project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.keys.delete("123456-7890-1234-5678-901234", "123456789012345678901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**key_id:** `string` — The unique identifier of the API key
+
+
+
+
+
+
+
+**requestOptions:** `KeysClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Members
+client.manage.v1.projects.members.list (project_id) -> Deepgram.ListProjectMembersV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves a list of members for a given project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.members.list("123456-7890-1234-5678-901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**requestOptions:** `MembersClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.members.delete (project_id, member_id) -> Deepgram.DeleteProjectMemberV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Removes a member from the project using their unique member ID
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.members.delete("123456-7890-1234-5678-901234", "123456789012345678901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**member_id:** `string` — The unique identifier of the Member
+
+
+
+
+
+
+
+**requestOptions:** `MembersClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Models
+client.manage.v1.projects.models.list (project_id, { ...params }) -> Deepgram.ListModelsV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Returns metadata on all the latest models that a specific project has access to, including non-public models
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.models.list("123456-7890-1234-5678-901234", {
+ include_outdated: true
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.projects.ModelsListRequest`
+
+
+
+
+
+
+
+**requestOptions:** `ModelsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.models.get (project_id, model_id) -> Deepgram.GetModelV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Returns metadata for a specific model
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.models.get("123456-7890-1234-5678-901234", "af6e9977-99f6-4d8f-b6f5-dfdf6fb6e291");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**model_id:** `string` — The specific UUID of the model
+
+
+
+
+
+
+
+**requestOptions:** `ModelsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Requests
+client.manage.v1.projects.requests.list (project_id, { ...params }) -> Deepgram.ListProjectRequestsV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Generates a list of requests for a specific project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.requests.list("123456-7890-1234-5678-901234", {
+ start: "2024-01-15T09:30:00Z",
+ end: "2024-01-15T09:30:00Z",
+ limit: 1.1,
+ page: 1.1,
+ accessor: "12345678-1234-1234-1234-123456789012",
+ request_id: "12345678-1234-1234-1234-123456789012",
+ deployment: "hosted",
+ endpoint: "listen",
+ method: "sync",
+ status: "succeeded"
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.projects.RequestsListRequest`
+
+
+
+
+
+
+
+**requestOptions:** `RequestsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.requests.get (project_id, request_id) -> Deepgram.GetProjectRequestV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves a specific request for a specific project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.requests.get("123456-7890-1234-5678-901234", "123456-7890-1234-5678-901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request_id:** `string` — The unique identifier of the request
+
+
+
+
+
+
+
+**requestOptions:** `RequestsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Usage
+client.manage.v1.projects.usage.get (project_id, { ...params }) -> Deepgram.UsageV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves the usage for a specific project. Use Get Project Usage Breakdown for a more comprehensive usage summary.
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.usage.get("123456-7890-1234-5678-901234", {
+ start: "start",
+ end: "end",
+ accessor: "12345678-1234-1234-1234-123456789012",
+ alternatives: true,
+ callback_method: true,
+ callback: true,
+ channels: true,
+ custom_intent_mode: true,
+ custom_intent: true,
+ custom_topic_mode: true,
+ custom_topic: true,
+ deployment: "hosted",
+ detect_entities: true,
+ detect_language: true,
+ diarize: true,
+ dictation: true,
+ encoding: true,
+ endpoint: "listen",
+ extra: true,
+ filler_words: true,
+ intents: true,
+ keyterm: true,
+ keywords: true,
+ language: true,
+ measurements: true,
+ method: "sync",
+ model: "6f548761-c9c0-429a-9315-11a1d28499c8",
+ multichannel: true,
+ numerals: true,
+ paragraphs: true,
+ profanity_filter: true,
+ punctuate: true,
+ redact: true,
+ replace: true,
+ sample_rate: true,
+ search: true,
+ sentiment: true,
+ smart_format: true,
+ summarize: true,
+ tag: "tag1",
+ topics: true,
+ utt_split: true,
+ utterances: true,
+ version: true
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.projects.UsageGetRequest`
+
+
+
+
+
+
+
+**requestOptions:** `UsageClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Billing Balances
+client.manage.v1.projects.billing.balances.list (project_id) -> Deepgram.ListProjectBalancesV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Generates a list of outstanding balances for the specified project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.billing.balances.list("123456-7890-1234-5678-901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**requestOptions:** `BalancesClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.billing.balances.get (project_id, balance_id) -> Deepgram.GetProjectBalanceV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves details about the specified balance
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.billing.balances.get("123456-7890-1234-5678-901234", "123456-7890-1234-5678-901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**balance_id:** `string` — The unique identifier of the balance
+
+
+
+
+
+
+
+**requestOptions:** `BalancesClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Billing Breakdown
+client.manage.v1.projects.billing.breakdown.list (project_id, { ...params }) -> Deepgram.BillingBreakdownV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves the billing summary for a specific project, with various filter options or by grouping options.
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.billing.breakdown.list("123456-7890-1234-5678-901234", {
+ start: "start",
+ end: "end",
+ accessor: "12345678-1234-1234-1234-123456789012",
+ deployment: "hosted",
+ tag: "tag1",
+ line_item: "streaming::nova-3"
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.projects.billing.BreakdownListRequest`
+
+
+
+
+
+
+
+**requestOptions:** `BreakdownClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Billing Fields
+client.manage.v1.projects.billing.fields.list (project_id, { ...params }) -> Deepgram.ListBillingFieldsV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Lists the accessors, deployment types, tags, and line items used for billing data in the specified time period. Use this endpoint if you want to filter your results from the Billing Breakdown endpoint and want to know what filters are available.
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.billing.fields.list("123456-7890-1234-5678-901234", {
+ start: "start",
+ end: "end"
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.projects.billing.FieldsListRequest`
+
+
+
+
+
+
+
+**requestOptions:** `FieldsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Billing Purchases
+client.manage.v1.projects.billing.purchases.list (project_id, { ...params }) -> Deepgram.ListProjectPurchasesV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Returns the original purchased amount on an order transaction
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.billing.purchases.list("123456-7890-1234-5678-901234", {
+ limit: 1.1
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.projects.billing.PurchasesListRequest`
+
+
+
+
+
+
+
+**requestOptions:** `PurchasesClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Members Invites
+client.manage.v1.projects.members.invites.list (project_id) -> Deepgram.ListProjectInvitesV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Generates a list of invites for a specific project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.members.invites.list("123456-7890-1234-5678-901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**requestOptions:** `InvitesClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.members.invites.create (project_id, { ...params }) -> Deepgram.CreateProjectInviteV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Generates an invite for a specific project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.members.invites.create("123456-7890-1234-5678-901234", {
+ email: "email",
+ scope: "scope"
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.projects.members.CreateProjectInviteV1Request`
+
+
+
+
+
+
+
+**requestOptions:** `InvitesClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.members.invites.delete (project_id, email) -> Deepgram.DeleteProjectInviteV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Deletes an invite for a specific project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.members.invites.delete("123456-7890-1234-5678-901234", "john.doe@example.com");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**email:** `string` — The email address of the member
+
+
+
+
+
+
+
+**requestOptions:** `InvitesClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Members Scopes
+client.manage.v1.projects.members.scopes.list (project_id, member_id) -> Deepgram.ListProjectMemberScopesV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves a list of scopes for a specific member
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.members.scopes.list("123456-7890-1234-5678-901234", "123456789012345678901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**member_id:** `string` — The unique identifier of the Member
+
+
+
+
+
+
+
+**requestOptions:** `ScopesClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.manage.v1.projects.members.scopes.update (project_id, member_id, { ...params }) -> Deepgram.UpdateProjectMemberScopesV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Updates the scopes for a specific member
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.members.scopes.update("123456-7890-1234-5678-901234", "123456789012345678901234", {
+ scope: "admin"
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**member_id:** `string` — The unique identifier of the Member
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.projects.members.UpdateProjectMemberScopesV1Request`
+
+
+
+
+
+
+
+**requestOptions:** `ScopesClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Usage Breakdown
+client.manage.v1.projects.usage.breakdown.get (project_id, { ...params }) -> Deepgram.UsageBreakdownV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Retrieves the usage breakdown for a specific project, with various filter options by API feature or by groupings. Setting a feature (e.g. diarize) to true includes requests that used that feature, while false excludes requests that used it. Multiple true filters are combined with OR logic, while false filters use AND logic.
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.usage.breakdown.get("123456-7890-1234-5678-901234", {
+ start: "start",
+ end: "end",
+ grouping: "accessor",
+ accessor: "12345678-1234-1234-1234-123456789012",
+ alternatives: true,
+ callback_method: true,
+ callback: true,
+ channels: true,
+ custom_intent_mode: true,
+ custom_intent: true,
+ custom_topic_mode: true,
+ custom_topic: true,
+ deployment: "hosted",
+ detect_entities: true,
+ detect_language: true,
+ diarize: true,
+ dictation: true,
+ encoding: true,
+ endpoint: "listen",
+ extra: true,
+ filler_words: true,
+ intents: true,
+ keyterm: true,
+ keywords: true,
+ language: true,
+ measurements: true,
+ method: "sync",
+ model: "6f548761-c9c0-429a-9315-11a1d28499c8",
+ multichannel: true,
+ numerals: true,
+ paragraphs: true,
+ profanity_filter: true,
+ punctuate: true,
+ redact: true,
+ replace: true,
+ sample_rate: true,
+ search: true,
+ sentiment: true,
+ smart_format: true,
+ summarize: true,
+ tag: "tag1",
+ topics: true,
+ utt_split: true,
+ utterances: true,
+ version: true
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.projects.usage.BreakdownGetRequest`
+
+
+
+
+
+
+
+**requestOptions:** `BreakdownClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Manage V1 Projects Usage Fields
+client.manage.v1.projects.usage.fields.list (project_id, { ...params }) -> Deepgram.UsageFieldsV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Lists the features, models, tags, languages, and processing method used for requests in the specified project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.manage.v1.projects.usage.fields.list("123456-7890-1234-5678-901234", {
+ start: "start",
+ end: "end"
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.manage.v1.projects.usage.FieldsListRequest`
+
+
+
+
+
+
+
+**requestOptions:** `FieldsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Read V1 Text
+client.read.v1.text.analyze ({ ...params }) -> Deepgram.ReadV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Analyze text content using Deepgrams text analysis API
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.read.v1.text.analyze({
+ callback: "callback",
+ callback_method: "POST",
+ sentiment: true,
+ summarize: "v2",
+ tag: "tag",
+ topics: true,
+ custom_topic: "custom_topic",
+ custom_topic_mode: "extended",
+ intents: true,
+ custom_intent: "custom_intent",
+ custom_intent_mode: "extended",
+ language: "language",
+ body: {
+ url: "url"
+ }
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**request:** `Deepgram.read.v1.TextAnalyzeRequest`
+
+
+
+
+
+
+
+**requestOptions:** `TextClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## SelfHosted V1 DistributionCredentials
+client.selfHosted.v1.distributionCredentials.list (project_id) -> Deepgram.ListProjectDistributionCredentialsV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Lists sets of distribution credentials for the specified project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.selfHosted.v1.distributionCredentials.list("123456-7890-1234-5678-901234");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**requestOptions:** `DistributionCredentialsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.selfHosted.v1.distributionCredentials.create (project_id, { ...params }) -> Deepgram.CreateProjectDistributionCredentialsV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Creates a set of distribution credentials for the specified project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.selfHosted.v1.distributionCredentials.create("123456-7890-1234-5678-901234", {
+ provider: "quay"
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**request:** `Deepgram.selfHosted.v1.CreateProjectDistributionCredentialsV1Request`
+
+
+
+
+
+
+
+**requestOptions:** `DistributionCredentialsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.selfHosted.v1.distributionCredentials.get (project_id, distribution_credentials_id) -> Deepgram.GetProjectDistributionCredentialsV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Returns a set of distribution credentials for the specified project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.selfHosted.v1.distributionCredentials.get("123456-7890-1234-5678-901234", "8b36cfd0-472f-4a21-833f-2d6343c3a2f3");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**distribution_credentials_id:** `string` — The UUID of the distribution credentials
+
+
+
+
+
+
+
+**requestOptions:** `DistributionCredentialsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+client.selfHosted.v1.distributionCredentials.delete (project_id, distribution_credentials_id) -> Deepgram.GetProjectDistributionCredentialsV1Response
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Deletes a set of distribution credentials for the specified project
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.selfHosted.v1.distributionCredentials.delete("123456-7890-1234-5678-901234", "8b36cfd0-472f-4a21-833f-2d6343c3a2f3");
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**project_id:** `string` — The unique identifier of the project
+
+
+
+
+
+
+
+**distribution_credentials_id:** `string` — The UUID of the distribution credentials
+
+
+
+
+
+
+
+**requestOptions:** `DistributionCredentialsClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
+
+## Speak V1 Audio
+client.speak.v1.audio.generate ({ ...params }) -> core.BinaryResponse
+
+
+
+#### 📝 Description
+
+
+
+
+
+
+
+Convert text into natural-sounding speech using Deepgram's TTS REST API
+
+
+
+
+
+#### 🔌 Usage
+
+
+
+
+
+
+
+```typescript
+await client.speak.v1.audio.generate({
+ text: "text"
+});
+
+```
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+
+
+
+
+**request:** `Deepgram.speak.v1.SpeakV1Request`
+
+
+
+
+
+
+
+**requestOptions:** `AudioClient.RequestOptions`
+
+
+
+
+
+
+
+
+
+
diff --git a/scripts/rename-to-esm-files.js b/scripts/rename-to-esm-files.js
new file mode 100644
index 00000000..dc1df1cb
--- /dev/null
+++ b/scripts/rename-to-esm-files.js
@@ -0,0 +1,123 @@
+#!/usr/bin/env node
+
+const fs = require("fs").promises;
+const path = require("path");
+
+const extensionMap = {
+ ".js": ".mjs",
+ ".d.ts": ".d.mts",
+};
+const oldExtensions = Object.keys(extensionMap);
+
+async function findFiles(rootPath) {
+ const files = [];
+
+ async function scan(directory) {
+ const entries = await fs.readdir(directory, { withFileTypes: true });
+
+ for (const entry of entries) {
+ const fullPath = path.join(directory, entry.name);
+
+ if (entry.isDirectory()) {
+ if (entry.name !== "node_modules" && !entry.name.startsWith(".")) {
+ await scan(fullPath);
+ }
+ } else if (entry.isFile()) {
+ if (oldExtensions.some((ext) => entry.name.endsWith(ext))) {
+ files.push(fullPath);
+ }
+ }
+ }
+ }
+
+ await scan(rootPath);
+ return files;
+}
+
+async function updateFiles(files) {
+ const updatedFiles = [];
+ for (const file of files) {
+ const updated = await updateFileContents(file);
+ updatedFiles.push(updated);
+ }
+
+ console.log(`Updated imports in ${updatedFiles.length} files.`);
+}
+
+async function updateFileContents(file) {
+ const content = await fs.readFile(file, "utf8");
+
+ let newContent = content;
+ // Update each extension type defined in the map
+ for (const [oldExt, newExt] of Object.entries(extensionMap)) {
+ // Handle static imports/exports
+ const staticRegex = new RegExp(`(import|export)(.+from\\s+['"])(\\.\\.?\\/[^'"]+)(\\${oldExt})(['"])`, "g");
+ newContent = newContent.replace(staticRegex, `$1$2$3${newExt}$5`);
+
+ // Handle dynamic imports (yield import, await import, regular import())
+ const dynamicRegex = new RegExp(
+ `(yield\\s+import|await\\s+import|import)\\s*\\(\\s*['"](\\.\\.\?\\/[^'"]+)(\\${oldExt})['"]\\s*\\)`,
+ "g",
+ );
+ newContent = newContent.replace(dynamicRegex, `$1("$2${newExt}")`);
+ }
+
+ if (content !== newContent) {
+ await fs.writeFile(file, newContent, "utf8");
+ return true;
+ }
+ return false;
+}
+
+async function renameFiles(files) {
+ let counter = 0;
+ for (const file of files) {
+ const ext = oldExtensions.find((ext) => file.endsWith(ext));
+ const newExt = extensionMap[ext];
+
+ if (newExt) {
+ const newPath = file.slice(0, -ext.length) + newExt;
+ await fs.rename(file, newPath);
+ counter++;
+ }
+ }
+
+ console.log(`Renamed ${counter} files.`);
+}
+
+async function main() {
+ try {
+ const targetDir = process.argv[2];
+ if (!targetDir) {
+ console.error("Please provide a target directory");
+ process.exit(1);
+ }
+
+ const targetPath = path.resolve(targetDir);
+ const targetStats = await fs.stat(targetPath);
+
+ if (!targetStats.isDirectory()) {
+ console.error("The provided path is not a directory");
+ process.exit(1);
+ }
+
+ console.log(`Scanning directory: ${targetDir}`);
+
+ const files = await findFiles(targetDir);
+
+ if (files.length === 0) {
+ console.log("No matching files found.");
+ process.exit(0);
+ }
+
+ console.log(`Found ${files.length} files.`);
+ await updateFiles(files);
+ await renameFiles(files);
+ console.log("\nDone!");
+ } catch (error) {
+ console.error("An error occurred:", error.message);
+ process.exit(1);
+ }
+}
+
+main();
diff --git a/scripts/test-offline.js b/scripts/test-offline.js
deleted file mode 100755
index d3466165..00000000
--- a/scripts/test-offline.js
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/usr/bin/env node
-
-/* eslint-env node */
-/* eslint-disable @typescript-eslint/no-var-requires, @typescript-eslint/no-require-imports */
-
-/**
- * Test script to verify e2e tests work properly offline
- * This script simulates offline conditions and runs the tests
- */
-
-const { spawn } = require("child_process");
-
-console.log("🧪 Testing Deepgram JS SDK e2e tests in offline mode\n");
-
-// Environment variables to ensure offline testing
-const env = {
- ...process.env,
- JEST_SILENT: "false",
- NODE_ENV: "test",
- // Remove any real API key to force mock usage
- DEEPGRAM_API_KEY: "mock-api-key-for-offline-testing",
-};
-
-// Test command
-const testCommand = "npm";
-const testArgs = ["test", "--", "tests/e2e/", "--verbose"];
-
-console.log("🎭 Running e2e tests with mocked API calls...");
-console.log(`Command: ${testCommand} ${testArgs.join(" ")}\n`);
-
-const testProcess = spawn(testCommand, testArgs, {
- env,
- stdio: "inherit",
- shell: true,
-});
-
-testProcess.on("close", (code) => {
- if (code === 0) {
- console.log("\n✅ All e2e tests passed in offline mode!");
- console.log("🎉 Your tests are properly configured to work without internet connection.");
- console.log("\n💡 To run tests with real API calls (for updating snapshots):");
- console.log(" npm test -- tests/e2e/ --updateSnapshot");
- console.log("\n🔧 To force real API calls without updating snapshots:");
- console.log(" DEEPGRAM_FORCE_REAL_API=true npm test -- tests/e2e/");
- } else {
- console.log(`\n❌ Tests failed with exit code ${code}`);
- console.log("🔍 This indicates there might be network dependencies that need to be mocked.");
- }
-});
-
-testProcess.on("error", (error) => {
- console.error("❌ Failed to run tests:", error);
- process.exit(1);
-});
diff --git a/src/BaseClient.ts b/src/BaseClient.ts
new file mode 100644
index 00000000..b12df511
--- /dev/null
+++ b/src/BaseClient.ts
@@ -0,0 +1,56 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import { mergeHeaders } from "./core/headers.js";
+import * as core from "./core/index.js";
+import type * as environments from "./environments.js";
+
+export interface BaseClientOptions {
+ environment?: core.Supplier;
+ /** Specify a custom URL to connect the client to. */
+ baseUrl?: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Additional headers to include in requests. */
+ headers?: Record | null | undefined>;
+ /** The default maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The default number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** Provide a custom fetch implementation. Useful for platforms that don't have a built-in fetch or need a custom implementation. */
+ fetch?: typeof fetch;
+ fetcher?: core.FetchFunction;
+ /** Configure logging for the client. */
+ logging?: core.logging.LogConfig | core.logging.Logger;
+}
+
+export interface BaseRequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Additional query string parameters to include in the request. */
+ queryParams?: Record;
+ /** Additional headers to include in the request. */
+ headers?: Record | null | undefined>;
+}
+
+export function normalizeClientOptions(options: T): T {
+ const headers = mergeHeaders(
+ {
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "@deepgram/sdk",
+ "X-Fern-SDK-Version": "4.11.3",
+ "User-Agent": "@deepgram/sdk/4.11.3",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ },
+ options?.headers,
+ );
+
+ return {
+ ...options,
+ logging: core.logging.createLogger(options?.logging),
+ headers,
+ } as T;
+}
diff --git a/src/Client.ts b/src/Client.ts
new file mode 100644
index 00000000..1905f62e
--- /dev/null
+++ b/src/Client.ts
@@ -0,0 +1,60 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import { AgentClient } from "./api/resources/agent/client/Client.js";
+import { AuthClient } from "./api/resources/auth/client/Client.js";
+import { ListenClient } from "./api/resources/listen/client/Client.js";
+import { ManageClient } from "./api/resources/manage/client/Client.js";
+import { ReadClient } from "./api/resources/read/client/Client.js";
+import { SelfHostedClient } from "./api/resources/selfHosted/client/Client.js";
+import { SpeakClient } from "./api/resources/speak/client/Client.js";
+import type { BaseClientOptions, BaseRequestOptions } from "./BaseClient.js";
+import { normalizeClientOptions } from "./BaseClient.js";
+
+export declare namespace DeepgramClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class DeepgramClient {
+ protected readonly _options: DeepgramClient.Options;
+ protected _agent: AgentClient | undefined;
+ protected _auth: AuthClient | undefined;
+ protected _listen: ListenClient | undefined;
+ protected _manage: ManageClient | undefined;
+ protected _read: ReadClient | undefined;
+ protected _selfHosted: SelfHostedClient | undefined;
+ protected _speak: SpeakClient | undefined;
+
+ constructor(options: DeepgramClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get agent(): AgentClient {
+ return (this._agent ??= new AgentClient(this._options));
+ }
+
+ public get auth(): AuthClient {
+ return (this._auth ??= new AuthClient(this._options));
+ }
+
+ public get listen(): ListenClient {
+ return (this._listen ??= new ListenClient(this._options));
+ }
+
+ public get manage(): ManageClient {
+ return (this._manage ??= new ManageClient(this._options));
+ }
+
+ public get read(): ReadClient {
+ return (this._read ??= new ReadClient(this._options));
+ }
+
+ public get selfHosted(): SelfHostedClient {
+ return (this._selfHosted ??= new SelfHostedClient(this._options));
+ }
+
+ public get speak(): SpeakClient {
+ return (this._speak ??= new SpeakClient(this._options));
+ }
+}
diff --git a/src/DeepgramClient.ts b/src/DeepgramClient.ts
deleted file mode 100644
index 5f7bc99a..00000000
--- a/src/DeepgramClient.ts
+++ /dev/null
@@ -1,167 +0,0 @@
-import { DeepgramVersionError } from "./lib/errors";
-import {
- AbstractClient,
- AgentLiveClient,
- AuthRestClient,
- ListenClient,
- ManageClient,
- ReadClient,
- OnPremClient,
- SelfHostedRestClient,
- SpeakClient,
- ModelsRestClient,
-} from "./packages";
-
-/**
- * The DeepgramClient class provides access to various Deepgram API clients, including ListenClient, ManageClient, SelfHostedRestClient, ReadClient, and SpeakClient.
- *
- * @see https://github.com/deepgram/deepgram-js-sdk
- */
-export default class DeepgramClient extends AbstractClient {
- /**
- * Returns a new instance of the AuthRestClient, which provides access to the Deepgram API's temporary token endpoints.
- *
- * @returns {AuthRestClient} A new instance of the AuthRestClient.
- * @see https://developers.deepgram.com/reference/token-based-auth-api/grant-token
- */
- get auth(): AuthRestClient {
- return new AuthRestClient(this.options);
- }
- /**
- * Returns a new instance of the ListenClient, which provides access to the Deepgram API's listening functionality.
- *
- * @returns {ListenClient} A new instance of the ListenClient.
- */
- get listen(): ListenClient {
- return new ListenClient(this.options);
- }
-
- /**
- * Returns a new instance of the ManageClient, which provides access to the Deepgram API's management functionality.
- *
- * @returns {ManageClient} A new instance of the ManageClient.
- */
- get manage(): ManageClient {
- return new ManageClient(this.options);
- }
-
- /**
- * Returns a new instance of the ModelsRestClient, which provides access to the Deepgram API's model functionality.
- *
- * @returns {ModelsRestClient} A new instance of the ModelsRestClient.
- */
- get models(): ModelsRestClient {
- return new ModelsRestClient(this.options);
- }
-
- /**
- * Returns a new instance of the SelfHostedRestClient, which provides access to the Deepgram API's self-hosted functionality.
- *
- * @returns {OnPremClient} A new instance of the SelfHostedRestClient named as OnPremClient.
- * @deprecated use selfhosted() instead
- */
- get onprem(): OnPremClient {
- return this.selfhosted;
- }
-
- /**
- * Returns a new instance of the SelfHostedRestClient, which provides access to the Deepgram API's self-hosted functionality.
- *
- * @returns {SelfHostedRestClient} A new instance of the SelfHostedRestClient.
- */
- get selfhosted(): SelfHostedRestClient {
- return new SelfHostedRestClient(this.options);
- }
-
- /**
- * Returns a new instance of the ReadClient, which provides access to the Deepgram API's reading functionality.
- *
- * @returns {ReadClient} A new instance of the ReadClient.
- */
- get read(): ReadClient {
- return new ReadClient(this.options);
- }
-
- /**
- * Returns a new instance of the SpeakClient, which provides access to the Deepgram API's speaking functionality.
- *
- * @returns {SpeakClient} A new instance of the SpeakClient.
- */
- get speak(): SpeakClient {
- return new SpeakClient(this.options);
- }
-
- /**
- * Returns a new instance of the AgentLiveClient, which provides access to Deepgram's Voice Agent API.
- *
- * @returns {AgentLiveClient} A new instance of the AgentLiveClient.
- * @beta
- */
- public agent(endpoint: string = "/:version/agent/converse"): AgentLiveClient {
- return new AgentLiveClient(this.options, endpoint);
- }
-
- /**
- * @deprecated
- * @see https://dpgr.am/js-v3
- */
- get transcription(): any {
- throw new DeepgramVersionError();
- }
-
- /**
- * @deprecated
- * @see https://dpgr.am/js-v3
- */
- get projects(): any {
- throw new DeepgramVersionError();
- }
-
- /**
- * @deprecated
- * @see https://dpgr.am/js-v3
- */
- get keys(): any {
- throw new DeepgramVersionError();
- }
-
- /**
- * @deprecated
- * @see https://dpgr.am/js-v3
- */
- get members(): any {
- throw new DeepgramVersionError();
- }
-
- /**
- * @deprecated
- * @see https://dpgr.am/js-v3
- */
- get scopes(): any {
- throw new DeepgramVersionError();
- }
-
- /**
- * @deprecated
- * @see https://dpgr.am/js-v3
- */
- get invitation(): any {
- throw new DeepgramVersionError();
- }
-
- /**
- * @deprecated
- * @see https://dpgr.am/js-v3
- */
- get usage(): any {
- throw new DeepgramVersionError();
- }
-
- /**
- * @deprecated
- * @see https://dpgr.am/js-v3
- */
- get billing(): any {
- throw new DeepgramVersionError();
- }
-}
diff --git a/src/api/errors/BadRequestError.ts b/src/api/errors/BadRequestError.ts
new file mode 100644
index 00000000..984dafd8
--- /dev/null
+++ b/src/api/errors/BadRequestError.ts
@@ -0,0 +1,16 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as core from "../../core/index.js";
+import * as errors from "../../errors/index.js";
+
+export class BadRequestError extends errors.DeepgramError {
+ constructor(body?: unknown, rawResponse?: core.RawResponse) {
+ super({
+ message: "BadRequestError",
+ statusCode: 400,
+ body: body,
+ rawResponse: rawResponse,
+ });
+ Object.setPrototypeOf(this, BadRequestError.prototype);
+ }
+}
diff --git a/src/api/errors/index.ts b/src/api/errors/index.ts
new file mode 100644
index 00000000..db9ee322
--- /dev/null
+++ b/src/api/errors/index.ts
@@ -0,0 +1 @@
+export * from "./BadRequestError.js";
diff --git a/src/api/index.ts b/src/api/index.ts
new file mode 100644
index 00000000..6ed44b0b
--- /dev/null
+++ b/src/api/index.ts
@@ -0,0 +1,3 @@
+export * from "./errors/index.js";
+export * from "./resources/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/agent/client/Client.ts b/src/api/resources/agent/client/Client.ts
new file mode 100644
index 00000000..e34419f4
--- /dev/null
+++ b/src/api/resources/agent/client/Client.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../BaseClient.js";
+import { V1Client } from "../resources/v1/client/Client.js";
+
+export declare namespace AgentClient {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class AgentClient {
+ protected readonly _options: AgentClient.Options;
+ protected _v1: V1Client | undefined;
+
+ constructor(options: AgentClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get v1(): V1Client {
+ return (this._v1 ??= new V1Client(this._options));
+ }
+}
diff --git a/src/api/resources/agent/client/index.ts b/src/api/resources/agent/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/agent/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/agent/index.ts b/src/api/resources/agent/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/agent/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/agent/resources/index.ts b/src/api/resources/agent/resources/index.ts
new file mode 100644
index 00000000..96368d86
--- /dev/null
+++ b/src/api/resources/agent/resources/index.ts
@@ -0,0 +1,2 @@
+export * as v1 from "./v1/index.js";
+export * from "./v1/types/index.js";
diff --git a/src/api/resources/agent/resources/v1/client/Client.ts b/src/api/resources/agent/resources/v1/client/Client.ts
new file mode 100644
index 00000000..47c8f8f7
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/client/Client.ts
@@ -0,0 +1,67 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers.js";
+import * as core from "../../../../../../core/index.js";
+import * as environments from "../../../../../../environments.js";
+import { SettingsClient } from "../resources/settings/client/Client.js";
+import { V1Socket } from "./Socket.js";
+
+export declare namespace V1Client {
+ export interface Options extends BaseClientOptions {}
+
+ export interface ConnectArgs {
+ Authorization: string;
+ /** Arbitrary headers to send with the websocket connect request. */
+ headers?: Record;
+ /** Enable debug mode on the websocket. Defaults to false. */
+ debug?: boolean;
+ /** Number of reconnect attempts. Defaults to 30. */
+ reconnectAttempts?: number;
+ }
+}
+
+export class V1Client {
+ protected readonly _options: V1Client.Options;
+ protected _settings: SettingsClient | undefined;
+
+ constructor(options: V1Client.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get settings(): SettingsClient {
+ return (this._settings ??= new SettingsClient(this._options));
+ }
+
+ public async connect(args: V1Client.ConnectArgs): Promise {
+ const { headers, debug, reconnectAttempts } = args;
+ const _headers: Record = mergeHeaders(
+ mergeOnlyDefinedHeaders({
+ ...(await this._getCustomAuthorizationHeaders()),
+ Authorization: args.Authorization,
+ }),
+ headers,
+ );
+ const socket = new core.ReconnectingWebSocket({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).agent,
+ "/v1/agent/converse",
+ ),
+ protocols: [],
+ queryParameters: {},
+ headers: _headers,
+ options: { debug: debug ?? false, maxRetries: reconnectAttempts ?? 30 },
+ });
+ return new V1Socket({ socket });
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/agent/resources/v1/client/Socket.ts b/src/api/resources/agent/resources/v1/client/Socket.ts
new file mode 100644
index 00000000..3cd6b52c
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/client/Socket.ts
@@ -0,0 +1,194 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import * as core from "../../../../../../core/index.js";
+import { fromJson, toJson } from "../../../../../../core/json.js";
+import type * as Deepgram from "../../../../../index.js";
+
+export declare namespace V1Socket {
+ export interface Args {
+ socket: core.ReconnectingWebSocket;
+ }
+
+ export type Response =
+ | Deepgram.agent.AgentV1ReceiveFunctionCallResponse
+ | Deepgram.agent.AgentV1PromptUpdated
+ | Deepgram.agent.AgentV1SpeakUpdated
+ | Deepgram.agent.AgentV1InjectionRefused
+ | Deepgram.agent.AgentV1Welcome
+ | Deepgram.agent.AgentV1SettingsApplied
+ | Deepgram.agent.AgentV1ConversationText
+ | Deepgram.agent.AgentV1UserStartedSpeaking
+ | Deepgram.agent.AgentV1AgentThinking
+ | Deepgram.agent.AgentV1FunctionCallRequest
+ | Deepgram.agent.AgentV1AgentStartedSpeaking
+ | Deepgram.agent.AgentV1AgentAudioDone
+ | Deepgram.agent.AgentV1Error
+ | Deepgram.agent.AgentV1Warning
+ | string;
+ type EventHandlers = {
+ open?: () => void;
+ message?: (message: Response) => void;
+ close?: (event: core.CloseEvent) => void;
+ error?: (error: Error) => void;
+ };
+}
+
+export class V1Socket {
+ public readonly socket: core.ReconnectingWebSocket;
+ protected readonly eventHandlers: V1Socket.EventHandlers = {};
+ private handleOpen: () => void = () => {
+ this.eventHandlers.open?.();
+ };
+ private handleMessage: (event: { data: string }) => void = (event) => {
+ const data = fromJson(event.data);
+
+ this.eventHandlers.message?.(data as V1Socket.Response);
+ };
+ private handleClose: (event: core.CloseEvent) => void = (event) => {
+ this.eventHandlers.close?.(event);
+ };
+ private handleError: (event: core.ErrorEvent) => void = (event) => {
+ const message = event.message;
+ this.eventHandlers.error?.(new Error(message));
+ };
+
+ constructor(args: V1Socket.Args) {
+ this.socket = args.socket;
+ this.socket.addEventListener("open", this.handleOpen);
+ this.socket.addEventListener("message", this.handleMessage);
+ this.socket.addEventListener("close", this.handleClose);
+ this.socket.addEventListener("error", this.handleError);
+ }
+
+ /** The current state of the connection; this is one of the readyState constants. */
+ get readyState(): number {
+ return this.socket.readyState;
+ }
+
+ /**
+ * @param event - The event to attach to.
+ * @param callback - The callback to run when the event is triggered.
+ * Usage:
+ * ```typescript
+ * this.on('open', () => {
+ * console.log('The websocket is open');
+ * });
+ * ```
+ */
+ public on(event: T, callback: V1Socket.EventHandlers[T]): void {
+ this.eventHandlers[event] = callback;
+ }
+
+ public sendAgentV1Settings(message: Deepgram.agent.AgentV1Settings): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendAgentV1UpdateSpeak(message: Deepgram.agent.AgentV1UpdateSpeak): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendAgentV1InjectUserMessage(message: Deepgram.agent.AgentV1InjectUserMessage): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendAgentV1InjectAgentMessage(message: Deepgram.agent.AgentV1InjectAgentMessage): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendAgentV1SendFunctionCallResponse(message: Deepgram.agent.AgentV1SendFunctionCallResponse): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendAgentV1KeepAlive(message: Deepgram.agent.AgentV1KeepAlive): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendAgentV1UpdatePrompt(message: Deepgram.agent.AgentV1UpdatePrompt): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendAgentV1Media(message: string): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ /** Connect to the websocket and register event handlers. */
+ public connect(): V1Socket {
+ this.socket.reconnect();
+
+ this.socket.addEventListener("open", this.handleOpen);
+ this.socket.addEventListener("message", this.handleMessage);
+ this.socket.addEventListener("close", this.handleClose);
+ this.socket.addEventListener("error", this.handleError);
+
+ return this;
+ }
+
+ /** Close the websocket and unregister event handlers. */
+ public close(): void {
+ this.socket.close();
+
+ this.handleClose({ code: 1000 } as CloseEvent);
+
+ this.socket.removeEventListener("open", this.handleOpen);
+ this.socket.removeEventListener("message", this.handleMessage);
+ this.socket.removeEventListener("close", this.handleClose);
+ this.socket.removeEventListener("error", this.handleError);
+ }
+
+ /** Returns a promise that resolves when the websocket is open. */
+ public async waitForOpen(): Promise {
+ if (this.socket.readyState === core.ReconnectingWebSocket.OPEN) {
+ return this.socket;
+ }
+
+ return new Promise((resolve, reject) => {
+ this.socket.addEventListener("open", () => {
+ resolve(this.socket);
+ });
+
+ this.socket.addEventListener("error", (event: unknown) => {
+ reject(event);
+ });
+ });
+ }
+
+ /** Asserts that the websocket is open. */
+ private assertSocketIsOpen(): void {
+ if (!this.socket) {
+ throw new Error("Socket is not connected.");
+ }
+
+ if (this.socket.readyState !== core.ReconnectingWebSocket.OPEN) {
+ throw new Error("Socket is not open.");
+ }
+ }
+
+ /** Send a binary payload to the websocket. */
+ protected sendBinary(payload: ArrayBufferLike | Blob | ArrayBufferView): void {
+ this.socket.send(payload);
+ }
+
+ /** Send a JSON payload to the websocket. */
+ protected sendJson(
+ payload:
+ | Deepgram.agent.AgentV1Settings
+ | Deepgram.agent.AgentV1UpdateSpeak
+ | Deepgram.agent.AgentV1InjectUserMessage
+ | Deepgram.agent.AgentV1InjectAgentMessage
+ | Deepgram.agent.AgentV1SendFunctionCallResponse
+ | Deepgram.agent.AgentV1KeepAlive
+ | Deepgram.agent.AgentV1UpdatePrompt
+ | string,
+ ): void {
+ const jsonPayload = toJson(payload);
+ this.socket.send(jsonPayload);
+ }
+}
diff --git a/src/api/resources/agent/resources/v1/client/index.ts b/src/api/resources/agent/resources/v1/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/agent/resources/v1/index.ts b/src/api/resources/agent/resources/v1/index.ts
new file mode 100644
index 00000000..0ef16e76
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/index.ts
@@ -0,0 +1,3 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/agent/resources/v1/resources/index.ts b/src/api/resources/agent/resources/v1/resources/index.ts
new file mode 100644
index 00000000..5d08c463
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/index.ts
@@ -0,0 +1 @@
+export * as settings from "./settings/index.js";
diff --git a/src/api/resources/agent/resources/v1/resources/settings/client/Client.ts b/src/api/resources/agent/resources/v1/resources/settings/client/Client.ts
new file mode 100644
index 00000000..0ab7f31e
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/settings/client/Client.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../BaseClient.js";
+import { ThinkClient } from "../resources/think/client/Client.js";
+
+export declare namespace SettingsClient {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class SettingsClient {
+ protected readonly _options: SettingsClient.Options;
+ protected _think: ThinkClient | undefined;
+
+ constructor(options: SettingsClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get think(): ThinkClient {
+ return (this._think ??= new ThinkClient(this._options));
+ }
+}
diff --git a/src/api/resources/agent/resources/v1/resources/settings/client/index.ts b/src/api/resources/agent/resources/v1/resources/settings/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/settings/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/agent/resources/v1/resources/settings/index.ts b/src/api/resources/agent/resources/v1/resources/settings/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/settings/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/agent/resources/v1/resources/settings/resources/index.ts b/src/api/resources/agent/resources/v1/resources/settings/resources/index.ts
new file mode 100644
index 00000000..48db7d4c
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/settings/resources/index.ts
@@ -0,0 +1 @@
+export * as think from "./think/index.js";
diff --git a/src/api/resources/agent/resources/v1/resources/settings/resources/think/client/Client.ts b/src/api/resources/agent/resources/v1/resources/settings/resources/think/client/Client.ts
new file mode 100644
index 00000000..fdde89d2
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/settings/resources/think/client/Client.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../BaseClient.js";
+import { ModelsClient } from "../resources/models/client/Client.js";
+
+export declare namespace ThinkClient {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class ThinkClient {
+ protected readonly _options: ThinkClient.Options;
+ protected _models: ModelsClient | undefined;
+
+ constructor(options: ThinkClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get models(): ModelsClient {
+ return (this._models ??= new ModelsClient(this._options));
+ }
+}
diff --git a/src/api/resources/agent/resources/v1/resources/settings/resources/think/client/index.ts b/src/api/resources/agent/resources/v1/resources/settings/resources/think/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/settings/resources/think/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/agent/resources/v1/resources/settings/resources/think/index.ts b/src/api/resources/agent/resources/v1/resources/settings/resources/think/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/settings/resources/think/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/index.ts b/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/index.ts
new file mode 100644
index 00000000..4920fabe
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/index.ts
@@ -0,0 +1 @@
+export * as models from "./models/index.js";
diff --git a/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/client/Client.ts b/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/client/Client.ts
new file mode 100644
index 00000000..088e648a
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/client/Client.ts
@@ -0,0 +1,106 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../../../index.js";
+
+export declare namespace ModelsClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class ModelsClient {
+ protected readonly _options: ModelsClient.Options;
+
+ constructor(options: ModelsClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Retrieves the available think models that can be used for AI agent processing
+ *
+ * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.agent.v1.settings.think.models.list()
+ */
+ public list(
+ requestOptions?: ModelsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(requestOptions));
+ }
+
+ private async __list(
+ requestOptions?: ModelsClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).agent,
+ "v1/agent/settings/think/models",
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.AgentThinkModelsV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/agent/settings/think/models.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/client/index.ts b/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/index.ts b/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/index.ts
new file mode 100644
index 00000000..914b8c3c
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/resources/settings/resources/think/resources/models/index.ts
@@ -0,0 +1 @@
+export * from "./client/index.js";
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1AgentAudioDone.ts b/src/api/resources/agent/resources/v1/types/AgentV1AgentAudioDone.ts
new file mode 100644
index 00000000..53beee81
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1AgentAudioDone.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1AgentAudioDone {
+ /** Message type identifier indicating the agent has finished sending audio */
+ type: "AgentAudioDone";
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1AgentStartedSpeaking.ts b/src/api/resources/agent/resources/v1/types/AgentV1AgentStartedSpeaking.ts
new file mode 100644
index 00000000..90a4c532
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1AgentStartedSpeaking.ts
@@ -0,0 +1,12 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1AgentStartedSpeaking {
+ /** Message type identifier for agent started speaking */
+ type: "AgentStartedSpeaking";
+ /** Seconds from receiving the user's utterance to producing the agent's reply */
+ total_latency: number;
+ /** The portion of total latency attributable to text-to-speech */
+ tts_latency: number;
+ /** The portion of total latency attributable to text-to-text (usually an LLM) */
+ ttt_latency: number;
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1AgentThinking.ts b/src/api/resources/agent/resources/v1/types/AgentV1AgentThinking.ts
new file mode 100644
index 00000000..40d00b2d
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1AgentThinking.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1AgentThinking {
+ /** Message type identifier for agent thinking */
+ type: "AgentThinking";
+ /** The text of the agent's thought process */
+ content: string;
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1ConversationText.ts b/src/api/resources/agent/resources/v1/types/AgentV1ConversationText.ts
new file mode 100644
index 00000000..2f556719
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1ConversationText.ts
@@ -0,0 +1,19 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1ConversationText {
+ /** Message type identifier for conversation text */
+ type: "ConversationText";
+ /** Identifies who spoke the statement */
+ role: AgentV1ConversationText.Role;
+ /** The actual statement that was spoken */
+ content: string;
+}
+
+export namespace AgentV1ConversationText {
+ /** Identifies who spoke the statement */
+ export const Role = {
+ User: "user",
+ Assistant: "assistant",
+ } as const;
+ export type Role = (typeof Role)[keyof typeof Role];
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1Error.ts b/src/api/resources/agent/resources/v1/types/AgentV1Error.ts
new file mode 100644
index 00000000..c76a5d51
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1Error.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1Error {
+ /** Message type identifier for error responses */
+ type: "Error";
+ /** A description of what went wrong */
+ description: string;
+ /** Error code identifying the type of error */
+ code: string;
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1FunctionCallRequest.ts b/src/api/resources/agent/resources/v1/types/AgentV1FunctionCallRequest.ts
new file mode 100644
index 00000000..77fe40f6
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1FunctionCallRequest.ts
@@ -0,0 +1,25 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1FunctionCallRequest {
+ /** Message type identifier for function call requests */
+ type: "FunctionCallRequest";
+ /** Array of functions to be called */
+ functions: AgentV1FunctionCallRequest.Functions.Item[];
+}
+
+export namespace AgentV1FunctionCallRequest {
+ export type Functions = Functions.Item[];
+
+ export namespace Functions {
+ export interface Item {
+ /** Unique identifier for the function call */
+ id: string;
+ /** The name of the function to call */
+ name: string;
+ /** JSON string containing the function arguments */
+ arguments: string;
+ /** Whether the function should be executed client-side */
+ client_side: boolean;
+ }
+ }
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1InjectAgentMessage.ts b/src/api/resources/agent/resources/v1/types/AgentV1InjectAgentMessage.ts
new file mode 100644
index 00000000..34853f9a
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1InjectAgentMessage.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1InjectAgentMessage {
+ /** Message type identifier for injecting an agent message */
+ type: "InjectAgentMessage";
+ /** The statement that the agent should say */
+ message: string;
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1InjectUserMessage.ts b/src/api/resources/agent/resources/v1/types/AgentV1InjectUserMessage.ts
new file mode 100644
index 00000000..61abc2a2
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1InjectUserMessage.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1InjectUserMessage {
+ /** Message type identifier for injecting a user message */
+ type: "InjectUserMessage";
+ /** The specific phrase or statement the agent should respond to */
+ content: string;
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1InjectionRefused.ts b/src/api/resources/agent/resources/v1/types/AgentV1InjectionRefused.ts
new file mode 100644
index 00000000..8267b3a7
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1InjectionRefused.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1InjectionRefused {
+ /** Message type identifier for injection refused */
+ type: "InjectionRefused";
+ /** Details about why the injection was refused */
+ message: string;
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1KeepAlive.ts b/src/api/resources/agent/resources/v1/types/AgentV1KeepAlive.ts
new file mode 100644
index 00000000..c2d249ee
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1KeepAlive.ts
@@ -0,0 +1,9 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Send a control message to the agent
+ */
+export interface AgentV1KeepAlive {
+ /** Message type identifier */
+ type: "KeepAlive";
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1PromptUpdated.ts b/src/api/resources/agent/resources/v1/types/AgentV1PromptUpdated.ts
new file mode 100644
index 00000000..95086e63
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1PromptUpdated.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1PromptUpdated {
+ /** Message type identifier for prompt update confirmation */
+ type: "PromptUpdated";
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1ReceiveFunctionCallResponse.ts b/src/api/resources/agent/resources/v1/types/AgentV1ReceiveFunctionCallResponse.ts
new file mode 100644
index 00000000..1f76a65e
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1ReceiveFunctionCallResponse.ts
@@ -0,0 +1,30 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Function call response message used bidirectionally:
+ *
+ * • **Client → Server**: Response after client executes a function
+ * marked as client_side: true
+ * • **Server → Client**: Response after server executes a function
+ * marked as client_side: false
+ *
+ * The same message structure serves both directions, enabling a unified
+ * interface for function call responses regardless of execution location.
+ */
+export interface AgentV1ReceiveFunctionCallResponse {
+ /** Message type identifier for function call responses */
+ type: "FunctionCallResponse";
+ /**
+ * The unique identifier for the function call.
+ *
+ * • **Required for client responses**: Should match the id from
+ * the corresponding `FunctionCallRequest`
+ * • **Optional for server responses**: Server may omit when responding
+ * to internal function executions
+ */
+ id?: string;
+ /** The name of the function being called */
+ name: string;
+ /** The content or result of the function call */
+ content: string;
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1SendFunctionCallResponse.ts b/src/api/resources/agent/resources/v1/types/AgentV1SendFunctionCallResponse.ts
new file mode 100644
index 00000000..e6f035e9
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1SendFunctionCallResponse.ts
@@ -0,0 +1,30 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Function call response message used bidirectionally:
+ *
+ * • **Client → Server**: Response after client executes a function
+ * marked as client_side: true
+ * • **Server → Client**: Response after server executes a function
+ * marked as client_side: false
+ *
+ * The same message structure serves both directions, enabling a unified
+ * interface for function call responses regardless of execution location.
+ */
+export interface AgentV1SendFunctionCallResponse {
+ /** Message type identifier for function call responses */
+ type: "FunctionCallResponse";
+ /**
+ * The unique identifier for the function call.
+ *
+ * • **Required for client responses**: Should match the id from
+ * the corresponding `FunctionCallRequest`
+ * • **Optional for server responses**: Server may omit when responding
+ * to internal function executions
+ */
+ id?: string;
+ /** The name of the function being called */
+ name: string;
+ /** The content or result of the function call */
+ content: string;
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1Settings.ts b/src/api/resources/agent/resources/v1/types/AgentV1Settings.ts
new file mode 100644
index 00000000..e89a0afb
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1Settings.ts
@@ -0,0 +1,277 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../index.js";
+
+export interface AgentV1Settings {
+ type: "Settings";
+ /** Tags to associate with the request */
+ tags?: string[];
+ /** To enable experimental features */
+ experimental?: boolean;
+ flags?: AgentV1Settings.Flags;
+ /** To opt out of Deepgram Model Improvement Program */
+ mip_opt_out?: boolean;
+ audio: AgentV1Settings.Audio;
+ agent: AgentV1Settings.Agent;
+}
+
+export namespace AgentV1Settings {
+ export interface Flags {
+ /** Enable or disable history message reporting */
+ history?: boolean;
+ }
+
+ export interface Audio {
+ /** Audio input configuration settings. If omitted, defaults to encoding=linear16 and sample_rate=24000. Higher sample rates like 44100 Hz provide better audio quality. */
+ input?: Audio.Input;
+ /** Audio output configuration settings */
+ output?: Audio.Output;
+ }
+
+ export namespace Audio {
+ /**
+ * Audio input configuration settings. If omitted, defaults to encoding=linear16 and sample_rate=24000. Higher sample rates like 44100 Hz provide better audio quality.
+ */
+ export interface Input {
+ /** Audio encoding format */
+ encoding: Input.Encoding;
+ /** Sample rate in Hz. Common values are 16000, 24000, 44100, 48000 */
+ sample_rate: number;
+ }
+
+ export namespace Input {
+ /** Audio encoding format */
+ export const Encoding = {
+ Linear16: "linear16",
+ Linear32: "linear32",
+ Flac: "flac",
+ Alaw: "alaw",
+ Mulaw: "mulaw",
+ AmrNb: "amr-nb",
+ AmrWb: "amr-wb",
+ Opus: "opus",
+ OggOpus: "ogg-opus",
+ Speex: "speex",
+ G729: "g729",
+ } as const;
+ export type Encoding = (typeof Encoding)[keyof typeof Encoding];
+ }
+
+ /**
+ * Audio output configuration settings
+ */
+ export interface Output {
+ /** Audio encoding format for streaming TTS output */
+ encoding?: Output.Encoding;
+ /** Sample rate in Hz */
+ sample_rate?: number;
+ /** Audio bitrate in bits per second */
+ bitrate?: number;
+ /** Audio container format. If omitted, defaults to 'none' */
+ container?: string;
+ }
+
+ export namespace Output {
+ /** Audio encoding format for streaming TTS output */
+ export const Encoding = {
+ Linear16: "linear16",
+ Mulaw: "mulaw",
+ Alaw: "alaw",
+ } as const;
+ export type Encoding = (typeof Encoding)[keyof typeof Encoding];
+ }
+ }
+
+ export interface Agent {
+ /** Agent language */
+ language?: string;
+ /** Conversation context including the history of messages and function calls */
+ context?: Agent.Context;
+ listen?: Agent.Listen;
+ think?: Agent.Think;
+ speak?: Agent.Speak;
+ /** Optional message that agent will speak at the start */
+ greeting?: string;
+ }
+
+ export namespace Agent {
+ /**
+ * Conversation context including the history of messages and function calls
+ */
+ export interface Context {
+ /** Conversation history as a list of messages and function calls */
+ messages?: Context.Messages.Item[];
+ }
+
+ export namespace Context {
+ export type Messages = Messages.Item[];
+
+ export namespace Messages {
+ /**
+ * A message here is either a conversational message or a function call
+ */
+ export type Item =
+ /**
+ * Conversation text as part of the conversation history */
+ | {
+ type: "History";
+ role: "user" | "assistant";
+ content: string;
+ }
+ /**
+ * Client-side or server-side function call request and response as part of the conversation history */
+ | {
+ type: "History";
+ function_calls: {
+ id: string;
+ name: string;
+ client_side: boolean;
+ arguments: string;
+ response: string;
+ }[];
+ };
+ }
+ }
+
+ export interface Listen {
+ provider?: Listen.Provider;
+ }
+
+ export namespace Listen {
+ export interface Provider {
+ /** Provider type for speech-to-text */
+ type: "deepgram";
+ /** Model to use for speech to text */
+ model?: string;
+ /** Prompt key-term recognition (nova-3 'en' only) */
+ keyterms?: string[];
+ /** Applies smart formatting to improve transcript readability (Deepgram providers only) */
+ smart_format?: boolean;
+ }
+ }
+
+ export interface Think {
+ provider: Think.Provider;
+ /** Optional for non-Deepgram LLM providers. When present, must include url field and headers object */
+ endpoint?: Think.Endpoint;
+ functions?: Think.Functions.Item[];
+ prompt?: string;
+ /** Specifies the number of characters retained in context between user messages, agent responses, and function calls. This setting is only configurable when a custom think endpoint is used */
+ context_length?: Think.ContextLength;
+ }
+
+ export namespace Think {
+ export type Provider =
+ | {
+ type?: "open_ai" | undefined;
+ model?:
+ | (
+ | "gpt-5"
+ | "gpt-5-mini"
+ | "gpt-5-nano"
+ | "gpt-4.1"
+ | "gpt-4.1-mini"
+ | "gpt-4.1-nano"
+ | "gpt-4o"
+ | "gpt-4o-mini"
+ )
+ | undefined;
+ temperature?: number | undefined;
+ }
+ | {
+ type?: "aws_bedrock" | undefined;
+ model?:
+ | ("anthropic/claude-3-5-sonnet-20240620-v1:0" | "anthropic/claude-3-5-haiku-20240307-v1:0")
+ | undefined;
+ temperature?: number | undefined;
+ credentials?:
+ | {
+ type?: ("sts" | "iam") | undefined;
+ region?: string | undefined;
+ access_key_id?: string | undefined;
+ secret_access_key?: string | undefined;
+ session_token?: string | undefined;
+ }
+ | undefined;
+ }
+ | {
+ type?: "anthropic" | undefined;
+ model?: ("claude-3-5-haiku-latest" | "claude-sonnet-4-20250514") | undefined;
+ temperature?: number | undefined;
+ }
+ | {
+ type?: "google" | undefined;
+ model?: ("gemini-2.0-flash" | "gemini-2.0-flash-lite" | "gemini-2.5-flash") | undefined;
+ temperature?: number | undefined;
+ }
+ | {
+ type?: "groq" | undefined;
+ model?: "openai/gpt-oss-20b" | undefined;
+ temperature?: number | undefined;
+ };
+
+ /**
+ * Optional for non-Deepgram LLM providers. When present, must include url field and headers object
+ */
+ export interface Endpoint {
+ /** Custom LLM endpoint URL */
+ url?: string;
+ /** Custom headers for the endpoint */
+ headers?: Record;
+ }
+
+ export type Functions = Functions.Item[];
+
+ export namespace Functions {
+ export interface Item {
+ /** Function name */
+ name?: string;
+ /** Function description */
+ description?: string;
+ /** Function parameters */
+ parameters?: Record;
+ /** The Function endpoint to call. if not passed, function is called client-side */
+ endpoint?: Item.Endpoint;
+ }
+
+ export namespace Item {
+ /**
+ * The Function endpoint to call. if not passed, function is called client-side
+ */
+ export interface Endpoint {
+ /** Endpoint URL */
+ url?: string;
+ /** HTTP method */
+ method?: string;
+ headers?: Record;
+ }
+ }
+ }
+
+ /**
+ * Specifies the number of characters retained in context between user messages, agent responses, and function calls. This setting is only configurable when a custom think endpoint is used
+ */
+ export type ContextLength = "max" | number;
+ }
+
+ export type Speak =
+ | {
+ provider: Deepgram.agent.AgentV1SettingsAgentSpeakEndpointProvider;
+ endpoint?:
+ | {
+ url?: string | undefined;
+ headers?: Record | undefined;
+ }
+ | undefined;
+ }
+ | {
+ provider: Deepgram.agent.AgentV1SettingsAgentSpeakOneItemProvider;
+ endpoint?:
+ | {
+ url?: string | undefined;
+ headers?: Record | undefined;
+ }
+ | undefined;
+ }[];
+ }
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1SettingsAgentSpeakEndpointProvider.ts b/src/api/resources/agent/resources/v1/types/AgentV1SettingsAgentSpeakEndpointProvider.ts
new file mode 100644
index 00000000..b824b6a3
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1SettingsAgentSpeakEndpointProvider.ts
@@ -0,0 +1,207 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../index.js";
+
+export type AgentV1SettingsAgentSpeakEndpointProvider =
+ | Deepgram.agent.AgentV1SettingsAgentSpeakEndpointProvider.Deepgram
+ | Deepgram.agent.AgentV1SettingsAgentSpeakEndpointProvider.ElevenLabs
+ | Deepgram.agent.AgentV1SettingsAgentSpeakEndpointProvider.Cartesia
+ | Deepgram.agent.AgentV1SettingsAgentSpeakEndpointProvider.OpenAi
+ | Deepgram.agent.AgentV1SettingsAgentSpeakEndpointProvider.AwsPolly;
+
+export namespace AgentV1SettingsAgentSpeakEndpointProvider {
+ export interface Deepgram {
+ type: "deepgram";
+ /** Deepgram TTS model */
+ model: AgentV1SettingsAgentSpeakEndpointProviderDeepgram.Model;
+ }
+
+ export namespace AgentV1SettingsAgentSpeakEndpointProviderDeepgram {
+ /** Deepgram TTS model */
+ export const Model = {
+ AuraAsteriaEn: "aura-asteria-en",
+ AuraLunaEn: "aura-luna-en",
+ AuraStellaEn: "aura-stella-en",
+ AuraAthenaEn: "aura-athena-en",
+ AuraHeraEn: "aura-hera-en",
+ AuraOrionEn: "aura-orion-en",
+ AuraArcasEn: "aura-arcas-en",
+ AuraPerseusEn: "aura-perseus-en",
+ AuraAngusEn: "aura-angus-en",
+ AuraOrpheusEn: "aura-orpheus-en",
+ AuraHeliosEn: "aura-helios-en",
+ AuraZeusEn: "aura-zeus-en",
+ Aura2AmaltheaEn: "aura-2-amalthea-en",
+ Aura2AndromedaEn: "aura-2-andromeda-en",
+ Aura2ApolloEn: "aura-2-apollo-en",
+ Aura2ArcasEn: "aura-2-arcas-en",
+ Aura2AriesEn: "aura-2-aries-en",
+ Aura2AsteriaEn: "aura-2-asteria-en",
+ Aura2AthenaEn: "aura-2-athena-en",
+ Aura2AtlasEn: "aura-2-atlas-en",
+ Aura2AuroraEn: "aura-2-aurora-en",
+ Aura2CallistaEn: "aura-2-callista-en",
+ Aura2CoraEn: "aura-2-cora-en",
+ Aura2CordeliaEn: "aura-2-cordelia-en",
+ Aura2DeliaEn: "aura-2-delia-en",
+ Aura2DracoEn: "aura-2-draco-en",
+ Aura2ElectraEn: "aura-2-electra-en",
+ Aura2HarmoniaEn: "aura-2-harmonia-en",
+ Aura2HelenaEn: "aura-2-helena-en",
+ Aura2HeraEn: "aura-2-hera-en",
+ Aura2HermesEn: "aura-2-hermes-en",
+ Aura2HyperionEn: "aura-2-hyperion-en",
+ Aura2IrisEn: "aura-2-iris-en",
+ Aura2JanusEn: "aura-2-janus-en",
+ Aura2JunoEn: "aura-2-juno-en",
+ Aura2JupiterEn: "aura-2-jupiter-en",
+ Aura2LunaEn: "aura-2-luna-en",
+ Aura2MarsEn: "aura-2-mars-en",
+ Aura2MinervaEn: "aura-2-minerva-en",
+ Aura2NeptuneEn: "aura-2-neptune-en",
+ Aura2OdysseusEn: "aura-2-odysseus-en",
+ Aura2OpheliaEn: "aura-2-ophelia-en",
+ Aura2OrionEn: "aura-2-orion-en",
+ Aura2OrpheusEn: "aura-2-orpheus-en",
+ Aura2PandoraEn: "aura-2-pandora-en",
+ Aura2PhoebeEn: "aura-2-phoebe-en",
+ Aura2PlutoEn: "aura-2-pluto-en",
+ Aura2SaturnEn: "aura-2-saturn-en",
+ Aura2SeleneEn: "aura-2-selene-en",
+ Aura2ThaliaEn: "aura-2-thalia-en",
+ Aura2TheiaEn: "aura-2-theia-en",
+ Aura2VestaEn: "aura-2-vesta-en",
+ Aura2ZeusEn: "aura-2-zeus-en",
+ Aura2SirioEs: "aura-2-sirio-es",
+ Aura2NestorEs: "aura-2-nestor-es",
+ Aura2CarinaEs: "aura-2-carina-es",
+ Aura2CelesteEs: "aura-2-celeste-es",
+ Aura2AlvaroEs: "aura-2-alvaro-es",
+ Aura2DianaEs: "aura-2-diana-es",
+ Aura2AquilaEs: "aura-2-aquila-es",
+ Aura2SelenaEs: "aura-2-selena-es",
+ Aura2EstrellaEs: "aura-2-estrella-es",
+ Aura2JavierEs: "aura-2-javier-es",
+ } as const;
+ export type Model = (typeof Model)[keyof typeof Model];
+ }
+
+ export interface ElevenLabs {
+ type: "eleven_labs";
+ /** Eleven Labs model ID */
+ model_id: AgentV1SettingsAgentSpeakEndpointProviderElevenLabs.ModelId;
+ /** Eleven Labs optional language code */
+ language_code?: string;
+ }
+
+ export namespace AgentV1SettingsAgentSpeakEndpointProviderElevenLabs {
+ /** Eleven Labs model ID */
+ export const ModelId = {
+ ElevenTurboV25: "eleven_turbo_v2_5",
+ ElevenMonolingualV1: "eleven_monolingual_v1",
+ ElevenMultilingualV2: "eleven_multilingual_v2",
+ } as const;
+ export type ModelId = (typeof ModelId)[keyof typeof ModelId];
+ }
+
+ export interface Cartesia {
+ type: "cartesia";
+ /** Cartesia model ID */
+ model_id: AgentV1SettingsAgentSpeakEndpointProviderCartesia.ModelId;
+ voice: AgentV1SettingsAgentSpeakEndpointProviderCartesia.Voice;
+ /** Cartesia language code */
+ language?: string;
+ }
+
+ export namespace AgentV1SettingsAgentSpeakEndpointProviderCartesia {
+ /** Cartesia model ID */
+ export const ModelId = {
+ Sonic2: "sonic-2",
+ SonicMultilingual: "sonic-multilingual",
+ } as const;
+ export type ModelId = (typeof ModelId)[keyof typeof ModelId];
+
+ export interface Voice {
+ /** Cartesia voice mode */
+ mode: string;
+ /** Cartesia voice ID */
+ id: string;
+ }
+ }
+
+ export interface OpenAi {
+ type: "open_ai";
+ /** OpenAI TTS model */
+ model: AgentV1SettingsAgentSpeakEndpointProviderOpenAi.Model;
+ /** OpenAI voice */
+ voice: AgentV1SettingsAgentSpeakEndpointProviderOpenAi.Voice;
+ }
+
+ export namespace AgentV1SettingsAgentSpeakEndpointProviderOpenAi {
+ /** OpenAI TTS model */
+ export const Model = {
+ Tts1: "tts-1",
+ Tts1Hd: "tts-1-hd",
+ } as const;
+ export type Model = (typeof Model)[keyof typeof Model];
+ /** OpenAI voice */
+ export const Voice = {
+ Alloy: "alloy",
+ Echo: "echo",
+ Fable: "fable",
+ Onyx: "onyx",
+ Nova: "nova",
+ Shimmer: "shimmer",
+ } as const;
+ export type Voice = (typeof Voice)[keyof typeof Voice];
+ }
+
+ export interface AwsPolly {
+ type: "aws_polly";
+ /** AWS Polly voice name */
+ voice: AgentV1SettingsAgentSpeakEndpointProviderAwsPolly.Voice;
+ /** Language code (e.g., "en-US") */
+ language_code: string;
+ engine: AgentV1SettingsAgentSpeakEndpointProviderAwsPolly.Engine;
+ credentials: AgentV1SettingsAgentSpeakEndpointProviderAwsPolly.Credentials;
+ }
+
+ export namespace AgentV1SettingsAgentSpeakEndpointProviderAwsPolly {
+ /** AWS Polly voice name */
+ export const Voice = {
+ Matthew: "Matthew",
+ Joanna: "Joanna",
+ Amy: "Amy",
+ Emma: "Emma",
+ Brian: "Brian",
+ Arthur: "Arthur",
+ Aria: "Aria",
+ Ayanda: "Ayanda",
+ } as const;
+ export type Voice = (typeof Voice)[keyof typeof Voice];
+ export const Engine = {
+ Generative: "generative",
+ LongForm: "long-form",
+ Standard: "standard",
+ Neural: "neural",
+ } as const;
+ export type Engine = (typeof Engine)[keyof typeof Engine];
+
+ export interface Credentials {
+ type: Credentials.Type;
+ region: string;
+ access_key_id: string;
+ secret_access_key: string;
+ /** Required for STS only */
+ session_token?: string;
+ }
+
+ export namespace Credentials {
+ export const Type = {
+ Sts: "sts",
+ Iam: "iam",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+ }
+ }
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1SettingsAgentSpeakOneItemProvider.ts b/src/api/resources/agent/resources/v1/types/AgentV1SettingsAgentSpeakOneItemProvider.ts
new file mode 100644
index 00000000..9ebc5d5c
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1SettingsAgentSpeakOneItemProvider.ts
@@ -0,0 +1,207 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../index.js";
+
+export type AgentV1SettingsAgentSpeakOneItemProvider =
+ | Deepgram.agent.AgentV1SettingsAgentSpeakOneItemProvider.Deepgram
+ | Deepgram.agent.AgentV1SettingsAgentSpeakOneItemProvider.ElevenLabs
+ | Deepgram.agent.AgentV1SettingsAgentSpeakOneItemProvider.Cartesia
+ | Deepgram.agent.AgentV1SettingsAgentSpeakOneItemProvider.OpenAi
+ | Deepgram.agent.AgentV1SettingsAgentSpeakOneItemProvider.AwsPolly;
+
+export namespace AgentV1SettingsAgentSpeakOneItemProvider {
+ export interface Deepgram {
+ type: "deepgram";
+ /** Deepgram TTS model */
+ model: AgentV1SettingsAgentSpeakOneItemProviderDeepgram.Model;
+ }
+
+ export namespace AgentV1SettingsAgentSpeakOneItemProviderDeepgram {
+ /** Deepgram TTS model */
+ export const Model = {
+ AuraAsteriaEn: "aura-asteria-en",
+ AuraLunaEn: "aura-luna-en",
+ AuraStellaEn: "aura-stella-en",
+ AuraAthenaEn: "aura-athena-en",
+ AuraHeraEn: "aura-hera-en",
+ AuraOrionEn: "aura-orion-en",
+ AuraArcasEn: "aura-arcas-en",
+ AuraPerseusEn: "aura-perseus-en",
+ AuraAngusEn: "aura-angus-en",
+ AuraOrpheusEn: "aura-orpheus-en",
+ AuraHeliosEn: "aura-helios-en",
+ AuraZeusEn: "aura-zeus-en",
+ Aura2AmaltheaEn: "aura-2-amalthea-en",
+ Aura2AndromedaEn: "aura-2-andromeda-en",
+ Aura2ApolloEn: "aura-2-apollo-en",
+ Aura2ArcasEn: "aura-2-arcas-en",
+ Aura2AriesEn: "aura-2-aries-en",
+ Aura2AsteriaEn: "aura-2-asteria-en",
+ Aura2AthenaEn: "aura-2-athena-en",
+ Aura2AtlasEn: "aura-2-atlas-en",
+ Aura2AuroraEn: "aura-2-aurora-en",
+ Aura2CallistaEn: "aura-2-callista-en",
+ Aura2CoraEn: "aura-2-cora-en",
+ Aura2CordeliaEn: "aura-2-cordelia-en",
+ Aura2DeliaEn: "aura-2-delia-en",
+ Aura2DracoEn: "aura-2-draco-en",
+ Aura2ElectraEn: "aura-2-electra-en",
+ Aura2HarmoniaEn: "aura-2-harmonia-en",
+ Aura2HelenaEn: "aura-2-helena-en",
+ Aura2HeraEn: "aura-2-hera-en",
+ Aura2HermesEn: "aura-2-hermes-en",
+ Aura2HyperionEn: "aura-2-hyperion-en",
+ Aura2IrisEn: "aura-2-iris-en",
+ Aura2JanusEn: "aura-2-janus-en",
+ Aura2JunoEn: "aura-2-juno-en",
+ Aura2JupiterEn: "aura-2-jupiter-en",
+ Aura2LunaEn: "aura-2-luna-en",
+ Aura2MarsEn: "aura-2-mars-en",
+ Aura2MinervaEn: "aura-2-minerva-en",
+ Aura2NeptuneEn: "aura-2-neptune-en",
+ Aura2OdysseusEn: "aura-2-odysseus-en",
+ Aura2OpheliaEn: "aura-2-ophelia-en",
+ Aura2OrionEn: "aura-2-orion-en",
+ Aura2OrpheusEn: "aura-2-orpheus-en",
+ Aura2PandoraEn: "aura-2-pandora-en",
+ Aura2PhoebeEn: "aura-2-phoebe-en",
+ Aura2PlutoEn: "aura-2-pluto-en",
+ Aura2SaturnEn: "aura-2-saturn-en",
+ Aura2SeleneEn: "aura-2-selene-en",
+ Aura2ThaliaEn: "aura-2-thalia-en",
+ Aura2TheiaEn: "aura-2-theia-en",
+ Aura2VestaEn: "aura-2-vesta-en",
+ Aura2ZeusEn: "aura-2-zeus-en",
+ Aura2SirioEs: "aura-2-sirio-es",
+ Aura2NestorEs: "aura-2-nestor-es",
+ Aura2CarinaEs: "aura-2-carina-es",
+ Aura2CelesteEs: "aura-2-celeste-es",
+ Aura2AlvaroEs: "aura-2-alvaro-es",
+ Aura2DianaEs: "aura-2-diana-es",
+ Aura2AquilaEs: "aura-2-aquila-es",
+ Aura2SelenaEs: "aura-2-selena-es",
+ Aura2EstrellaEs: "aura-2-estrella-es",
+ Aura2JavierEs: "aura-2-javier-es",
+ } as const;
+ export type Model = (typeof Model)[keyof typeof Model];
+ }
+
+ export interface ElevenLabs {
+ type: "eleven_labs";
+ /** Eleven Labs model ID */
+ model_id: AgentV1SettingsAgentSpeakOneItemProviderElevenLabs.ModelId;
+ /** Eleven Labs optional language code */
+ language_code?: string;
+ }
+
+ export namespace AgentV1SettingsAgentSpeakOneItemProviderElevenLabs {
+ /** Eleven Labs model ID */
+ export const ModelId = {
+ ElevenTurboV25: "eleven_turbo_v2_5",
+ ElevenMonolingualV1: "eleven_monolingual_v1",
+ ElevenMultilingualV2: "eleven_multilingual_v2",
+ } as const;
+ export type ModelId = (typeof ModelId)[keyof typeof ModelId];
+ }
+
+ export interface Cartesia {
+ type: "cartesia";
+ /** Cartesia model ID */
+ model_id: AgentV1SettingsAgentSpeakOneItemProviderCartesia.ModelId;
+ voice: AgentV1SettingsAgentSpeakOneItemProviderCartesia.Voice;
+ /** Cartesia language code */
+ language?: string;
+ }
+
+ export namespace AgentV1SettingsAgentSpeakOneItemProviderCartesia {
+ /** Cartesia model ID */
+ export const ModelId = {
+ Sonic2: "sonic-2",
+ SonicMultilingual: "sonic-multilingual",
+ } as const;
+ export type ModelId = (typeof ModelId)[keyof typeof ModelId];
+
+ export interface Voice {
+ /** Cartesia voice mode */
+ mode: string;
+ /** Cartesia voice ID */
+ id: string;
+ }
+ }
+
+ export interface OpenAi {
+ type: "open_ai";
+ /** OpenAI TTS model */
+ model: AgentV1SettingsAgentSpeakOneItemProviderOpenAi.Model;
+ /** OpenAI voice */
+ voice: AgentV1SettingsAgentSpeakOneItemProviderOpenAi.Voice;
+ }
+
+ export namespace AgentV1SettingsAgentSpeakOneItemProviderOpenAi {
+ /** OpenAI TTS model */
+ export const Model = {
+ Tts1: "tts-1",
+ Tts1Hd: "tts-1-hd",
+ } as const;
+ export type Model = (typeof Model)[keyof typeof Model];
+ /** OpenAI voice */
+ export const Voice = {
+ Alloy: "alloy",
+ Echo: "echo",
+ Fable: "fable",
+ Onyx: "onyx",
+ Nova: "nova",
+ Shimmer: "shimmer",
+ } as const;
+ export type Voice = (typeof Voice)[keyof typeof Voice];
+ }
+
+ export interface AwsPolly {
+ type: "aws_polly";
+ /** AWS Polly voice name */
+ voice: AgentV1SettingsAgentSpeakOneItemProviderAwsPolly.Voice;
+ /** Language code (e.g., "en-US") */
+ language_code: string;
+ engine: AgentV1SettingsAgentSpeakOneItemProviderAwsPolly.Engine;
+ credentials: AgentV1SettingsAgentSpeakOneItemProviderAwsPolly.Credentials;
+ }
+
+ export namespace AgentV1SettingsAgentSpeakOneItemProviderAwsPolly {
+ /** AWS Polly voice name */
+ export const Voice = {
+ Matthew: "Matthew",
+ Joanna: "Joanna",
+ Amy: "Amy",
+ Emma: "Emma",
+ Brian: "Brian",
+ Arthur: "Arthur",
+ Aria: "Aria",
+ Ayanda: "Ayanda",
+ } as const;
+ export type Voice = (typeof Voice)[keyof typeof Voice];
+ export const Engine = {
+ Generative: "generative",
+ LongForm: "long-form",
+ Standard: "standard",
+ Neural: "neural",
+ } as const;
+ export type Engine = (typeof Engine)[keyof typeof Engine];
+
+ export interface Credentials {
+ type: Credentials.Type;
+ region: string;
+ access_key_id: string;
+ secret_access_key: string;
+ /** Required for STS only */
+ session_token?: string;
+ }
+
+ export namespace Credentials {
+ export const Type = {
+ Sts: "sts",
+ Iam: "iam",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+ }
+ }
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1SettingsApplied.ts b/src/api/resources/agent/resources/v1/types/AgentV1SettingsApplied.ts
new file mode 100644
index 00000000..0784c379
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1SettingsApplied.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1SettingsApplied {
+ /** Message type identifier for settings applied confirmation */
+ type: "SettingsApplied";
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1SpeakUpdated.ts b/src/api/resources/agent/resources/v1/types/AgentV1SpeakUpdated.ts
new file mode 100644
index 00000000..d89590c2
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1SpeakUpdated.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1SpeakUpdated {
+ /** Message type identifier for speak update confirmation */
+ type: "SpeakUpdated";
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1UpdatePrompt.ts b/src/api/resources/agent/resources/v1/types/AgentV1UpdatePrompt.ts
new file mode 100644
index 00000000..c7f5f88f
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1UpdatePrompt.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1UpdatePrompt {
+ /** Message type identifier for prompt update request */
+ type: "UpdatePrompt";
+ /** The new system prompt to be used by the agent */
+ prompt: string;
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1UpdateSpeak.ts b/src/api/resources/agent/resources/v1/types/AgentV1UpdateSpeak.ts
new file mode 100644
index 00000000..e25afda3
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1UpdateSpeak.ts
@@ -0,0 +1,39 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../index.js";
+
+export interface AgentV1UpdateSpeak {
+ /** Message type identifier for updating the speak model */
+ type: "UpdateSpeak";
+ /** Configuration for the speak model. Optional, defaults to latest deepgram TTS model */
+ speak: AgentV1UpdateSpeak.Speak;
+}
+
+export namespace AgentV1UpdateSpeak {
+ /**
+ * Configuration for the speak model. Optional, defaults to latest deepgram TTS model
+ */
+ export interface Speak {
+ provider: Deepgram.agent.AgentV1UpdateSpeakSpeakProvider;
+ /**
+ * Optional if provider is Deepgram. Required for non-Deepgram TTS providers.
+ * When present, must include url field and headers object. Valid schemes are https and wss with wss only supported for Eleven Labs.
+ */
+ endpoint?: Speak.Endpoint;
+ }
+
+ export namespace Speak {
+ /**
+ * Optional if provider is Deepgram. Required for non-Deepgram TTS providers.
+ * When present, must include url field and headers object. Valid schemes are https and wss with wss only supported for Eleven Labs.
+ */
+ export interface Endpoint {
+ /**
+ * Custom TTS endpoint URL. Cannot contain `output_format` or `model_id` query
+ * parameters when the provider is Eleven Labs.
+ */
+ url?: string;
+ headers?: Record;
+ }
+ }
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1UpdateSpeakSpeakProvider.ts b/src/api/resources/agent/resources/v1/types/AgentV1UpdateSpeakSpeakProvider.ts
new file mode 100644
index 00000000..c1ab8aac
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1UpdateSpeakSpeakProvider.ts
@@ -0,0 +1,207 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../index.js";
+
+export type AgentV1UpdateSpeakSpeakProvider =
+ | Deepgram.agent.AgentV1UpdateSpeakSpeakProvider.Deepgram
+ | Deepgram.agent.AgentV1UpdateSpeakSpeakProvider.ElevenLabs
+ | Deepgram.agent.AgentV1UpdateSpeakSpeakProvider.Cartesia
+ | Deepgram.agent.AgentV1UpdateSpeakSpeakProvider.OpenAi
+ | Deepgram.agent.AgentV1UpdateSpeakSpeakProvider.AwsPolly;
+
+export namespace AgentV1UpdateSpeakSpeakProvider {
+ export interface Deepgram {
+ type: "deepgram";
+ /** Deepgram TTS model */
+ model: AgentV1UpdateSpeakSpeakProviderDeepgram.Model;
+ }
+
+ export namespace AgentV1UpdateSpeakSpeakProviderDeepgram {
+ /** Deepgram TTS model */
+ export const Model = {
+ AuraAsteriaEn: "aura-asteria-en",
+ AuraLunaEn: "aura-luna-en",
+ AuraStellaEn: "aura-stella-en",
+ AuraAthenaEn: "aura-athena-en",
+ AuraHeraEn: "aura-hera-en",
+ AuraOrionEn: "aura-orion-en",
+ AuraArcasEn: "aura-arcas-en",
+ AuraPerseusEn: "aura-perseus-en",
+ AuraAngusEn: "aura-angus-en",
+ AuraOrpheusEn: "aura-orpheus-en",
+ AuraHeliosEn: "aura-helios-en",
+ AuraZeusEn: "aura-zeus-en",
+ Aura2AmaltheaEn: "aura-2-amalthea-en",
+ Aura2AndromedaEn: "aura-2-andromeda-en",
+ Aura2ApolloEn: "aura-2-apollo-en",
+ Aura2ArcasEn: "aura-2-arcas-en",
+ Aura2AriesEn: "aura-2-aries-en",
+ Aura2AsteriaEn: "aura-2-asteria-en",
+ Aura2AthenaEn: "aura-2-athena-en",
+ Aura2AtlasEn: "aura-2-atlas-en",
+ Aura2AuroraEn: "aura-2-aurora-en",
+ Aura2CallistaEn: "aura-2-callista-en",
+ Aura2CoraEn: "aura-2-cora-en",
+ Aura2CordeliaEn: "aura-2-cordelia-en",
+ Aura2DeliaEn: "aura-2-delia-en",
+ Aura2DracoEn: "aura-2-draco-en",
+ Aura2ElectraEn: "aura-2-electra-en",
+ Aura2HarmoniaEn: "aura-2-harmonia-en",
+ Aura2HelenaEn: "aura-2-helena-en",
+ Aura2HeraEn: "aura-2-hera-en",
+ Aura2HermesEn: "aura-2-hermes-en",
+ Aura2HyperionEn: "aura-2-hyperion-en",
+ Aura2IrisEn: "aura-2-iris-en",
+ Aura2JanusEn: "aura-2-janus-en",
+ Aura2JunoEn: "aura-2-juno-en",
+ Aura2JupiterEn: "aura-2-jupiter-en",
+ Aura2LunaEn: "aura-2-luna-en",
+ Aura2MarsEn: "aura-2-mars-en",
+ Aura2MinervaEn: "aura-2-minerva-en",
+ Aura2NeptuneEn: "aura-2-neptune-en",
+ Aura2OdysseusEn: "aura-2-odysseus-en",
+ Aura2OpheliaEn: "aura-2-ophelia-en",
+ Aura2OrionEn: "aura-2-orion-en",
+ Aura2OrpheusEn: "aura-2-orpheus-en",
+ Aura2PandoraEn: "aura-2-pandora-en",
+ Aura2PhoebeEn: "aura-2-phoebe-en",
+ Aura2PlutoEn: "aura-2-pluto-en",
+ Aura2SaturnEn: "aura-2-saturn-en",
+ Aura2SeleneEn: "aura-2-selene-en",
+ Aura2ThaliaEn: "aura-2-thalia-en",
+ Aura2TheiaEn: "aura-2-theia-en",
+ Aura2VestaEn: "aura-2-vesta-en",
+ Aura2ZeusEn: "aura-2-zeus-en",
+ Aura2SirioEs: "aura-2-sirio-es",
+ Aura2NestorEs: "aura-2-nestor-es",
+ Aura2CarinaEs: "aura-2-carina-es",
+ Aura2CelesteEs: "aura-2-celeste-es",
+ Aura2AlvaroEs: "aura-2-alvaro-es",
+ Aura2DianaEs: "aura-2-diana-es",
+ Aura2AquilaEs: "aura-2-aquila-es",
+ Aura2SelenaEs: "aura-2-selena-es",
+ Aura2EstrellaEs: "aura-2-estrella-es",
+ Aura2JavierEs: "aura-2-javier-es",
+ } as const;
+ export type Model = (typeof Model)[keyof typeof Model];
+ }
+
+ export interface ElevenLabs {
+ type: "eleven_labs";
+ /** Eleven Labs model ID */
+ model_id: AgentV1UpdateSpeakSpeakProviderElevenLabs.ModelId;
+ /** Eleven Labs optional language code */
+ language_code?: string;
+ }
+
+ export namespace AgentV1UpdateSpeakSpeakProviderElevenLabs {
+ /** Eleven Labs model ID */
+ export const ModelId = {
+ ElevenTurboV25: "eleven_turbo_v2_5",
+ ElevenMonolingualV1: "eleven_monolingual_v1",
+ ElevenMultilingualV2: "eleven_multilingual_v2",
+ } as const;
+ export type ModelId = (typeof ModelId)[keyof typeof ModelId];
+ }
+
+ export interface Cartesia {
+ type: "cartesia";
+ /** Cartesia model ID */
+ model_id: AgentV1UpdateSpeakSpeakProviderCartesia.ModelId;
+ voice: AgentV1UpdateSpeakSpeakProviderCartesia.Voice;
+ /** Cartesia language code */
+ language?: string;
+ }
+
+ export namespace AgentV1UpdateSpeakSpeakProviderCartesia {
+ /** Cartesia model ID */
+ export const ModelId = {
+ Sonic2: "sonic-2",
+ SonicMultilingual: "sonic-multilingual",
+ } as const;
+ export type ModelId = (typeof ModelId)[keyof typeof ModelId];
+
+ export interface Voice {
+ /** Cartesia voice mode */
+ mode: string;
+ /** Cartesia voice ID */
+ id: string;
+ }
+ }
+
+ export interface OpenAi {
+ type: "open_ai";
+ /** OpenAI TTS model */
+ model: AgentV1UpdateSpeakSpeakProviderOpenAi.Model;
+ /** OpenAI voice */
+ voice: AgentV1UpdateSpeakSpeakProviderOpenAi.Voice;
+ }
+
+ export namespace AgentV1UpdateSpeakSpeakProviderOpenAi {
+ /** OpenAI TTS model */
+ export const Model = {
+ Tts1: "tts-1",
+ Tts1Hd: "tts-1-hd",
+ } as const;
+ export type Model = (typeof Model)[keyof typeof Model];
+ /** OpenAI voice */
+ export const Voice = {
+ Alloy: "alloy",
+ Echo: "echo",
+ Fable: "fable",
+ Onyx: "onyx",
+ Nova: "nova",
+ Shimmer: "shimmer",
+ } as const;
+ export type Voice = (typeof Voice)[keyof typeof Voice];
+ }
+
+ export interface AwsPolly {
+ type: "aws_polly";
+ /** AWS Polly voice name */
+ voice: AgentV1UpdateSpeakSpeakProviderAwsPolly.Voice;
+ /** Language code (e.g., "en-US") */
+ language_code: string;
+ engine: AgentV1UpdateSpeakSpeakProviderAwsPolly.Engine;
+ credentials: AgentV1UpdateSpeakSpeakProviderAwsPolly.Credentials;
+ }
+
+ export namespace AgentV1UpdateSpeakSpeakProviderAwsPolly {
+ /** AWS Polly voice name */
+ export const Voice = {
+ Matthew: "Matthew",
+ Joanna: "Joanna",
+ Amy: "Amy",
+ Emma: "Emma",
+ Brian: "Brian",
+ Arthur: "Arthur",
+ Aria: "Aria",
+ Ayanda: "Ayanda",
+ } as const;
+ export type Voice = (typeof Voice)[keyof typeof Voice];
+ export const Engine = {
+ Generative: "generative",
+ LongForm: "long-form",
+ Standard: "standard",
+ Neural: "neural",
+ } as const;
+ export type Engine = (typeof Engine)[keyof typeof Engine];
+
+ export interface Credentials {
+ type: Credentials.Type;
+ region: string;
+ access_key_id: string;
+ secret_access_key: string;
+ /** Required for STS only */
+ session_token?: string;
+ }
+
+ export namespace Credentials {
+ export const Type = {
+ Sts: "sts",
+ Iam: "iam",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+ }
+ }
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1UserStartedSpeaking.ts b/src/api/resources/agent/resources/v1/types/AgentV1UserStartedSpeaking.ts
new file mode 100644
index 00000000..7c466b63
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1UserStartedSpeaking.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1UserStartedSpeaking {
+ /** Message type identifier indicating that the user has begun speaking */
+ type: "UserStartedSpeaking";
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1Warning.ts b/src/api/resources/agent/resources/v1/types/AgentV1Warning.ts
new file mode 100644
index 00000000..9273daec
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1Warning.ts
@@ -0,0 +1,13 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Notifies the client of non-fatal errors or warnings
+ */
+export interface AgentV1Warning {
+ /** Message type identifier for warnings */
+ type: "Warning";
+ /** Description of the warning */
+ description: string;
+ /** Warning code identifier */
+ code: string;
+}
diff --git a/src/api/resources/agent/resources/v1/types/AgentV1Welcome.ts b/src/api/resources/agent/resources/v1/types/AgentV1Welcome.ts
new file mode 100644
index 00000000..899f4cc9
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/AgentV1Welcome.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentV1Welcome {
+ /** Message type identifier for welcome message */
+ type: "Welcome";
+ /** Unique identifier for the request */
+ request_id: string;
+}
diff --git a/src/api/resources/agent/resources/v1/types/index.ts b/src/api/resources/agent/resources/v1/types/index.ts
new file mode 100644
index 00000000..f04541b2
--- /dev/null
+++ b/src/api/resources/agent/resources/v1/types/index.ts
@@ -0,0 +1,24 @@
+export * from "./AgentV1AgentAudioDone.js";
+export * from "./AgentV1AgentStartedSpeaking.js";
+export * from "./AgentV1AgentThinking.js";
+export * from "./AgentV1ConversationText.js";
+export * from "./AgentV1Error.js";
+export * from "./AgentV1FunctionCallRequest.js";
+export * from "./AgentV1InjectAgentMessage.js";
+export * from "./AgentV1InjectionRefused.js";
+export * from "./AgentV1InjectUserMessage.js";
+export * from "./AgentV1KeepAlive.js";
+export * from "./AgentV1PromptUpdated.js";
+export * from "./AgentV1ReceiveFunctionCallResponse.js";
+export * from "./AgentV1SendFunctionCallResponse.js";
+export * from "./AgentV1Settings.js";
+export * from "./AgentV1SettingsAgentSpeakEndpointProvider.js";
+export * from "./AgentV1SettingsAgentSpeakOneItemProvider.js";
+export * from "./AgentV1SettingsApplied.js";
+export * from "./AgentV1SpeakUpdated.js";
+export * from "./AgentV1UpdatePrompt.js";
+export * from "./AgentV1UpdateSpeak.js";
+export * from "./AgentV1UpdateSpeakSpeakProvider.js";
+export * from "./AgentV1UserStartedSpeaking.js";
+export * from "./AgentV1Warning.js";
+export * from "./AgentV1Welcome.js";
diff --git a/src/api/resources/auth/client/Client.ts b/src/api/resources/auth/client/Client.ts
new file mode 100644
index 00000000..78d032be
--- /dev/null
+++ b/src/api/resources/auth/client/Client.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../BaseClient.js";
+import { V1Client } from "../resources/v1/client/Client.js";
+
+export declare namespace AuthClient {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class AuthClient {
+ protected readonly _options: AuthClient.Options;
+ protected _v1: V1Client | undefined;
+
+ constructor(options: AuthClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get v1(): V1Client {
+ return (this._v1 ??= new V1Client(this._options));
+ }
+}
diff --git a/src/api/resources/auth/client/index.ts b/src/api/resources/auth/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/auth/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/auth/index.ts b/src/api/resources/auth/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/auth/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/auth/resources/index.ts b/src/api/resources/auth/resources/index.ts
new file mode 100644
index 00000000..c6b56d24
--- /dev/null
+++ b/src/api/resources/auth/resources/index.ts
@@ -0,0 +1 @@
+export * as v1 from "./v1/index.js";
diff --git a/src/api/resources/auth/resources/v1/client/Client.ts b/src/api/resources/auth/resources/v1/client/Client.ts
new file mode 100644
index 00000000..a9259f61
--- /dev/null
+++ b/src/api/resources/auth/resources/v1/client/Client.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../BaseClient.js";
+import { TokensClient } from "../resources/tokens/client/Client.js";
+
+export declare namespace V1Client {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class V1Client {
+ protected readonly _options: V1Client.Options;
+ protected _tokens: TokensClient | undefined;
+
+ constructor(options: V1Client.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get tokens(): TokensClient {
+ return (this._tokens ??= new TokensClient(this._options));
+ }
+}
diff --git a/src/api/resources/auth/resources/v1/client/index.ts b/src/api/resources/auth/resources/v1/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/auth/resources/v1/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/auth/resources/v1/index.ts b/src/api/resources/auth/resources/v1/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/auth/resources/v1/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/auth/resources/v1/resources/index.ts b/src/api/resources/auth/resources/v1/resources/index.ts
new file mode 100644
index 00000000..c6bd5167
--- /dev/null
+++ b/src/api/resources/auth/resources/v1/resources/index.ts
@@ -0,0 +1,2 @@
+export * from "./tokens/client/requests/index.js";
+export * as tokens from "./tokens/index.js";
diff --git a/src/api/resources/auth/resources/v1/resources/tokens/client/Client.ts b/src/api/resources/auth/resources/v1/resources/tokens/client/Client.ts
new file mode 100644
index 00000000..6d913377
--- /dev/null
+++ b/src/api/resources/auth/resources/v1/resources/tokens/client/Client.ts
@@ -0,0 +1,110 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../index.js";
+
+export declare namespace TokensClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class TokensClient {
+ protected readonly _options: TokensClient.Options;
+
+ constructor(options: TokensClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Generates a temporary JSON Web Token (JWT) with a 30-second (by default) TTL and usage::write permission for core voice APIs, requiring an API key with Member or higher authorization. Tokens created with this endpoint will not work with the Manage APIs.
+ *
+ * @param {Deepgram.auth.v1.GrantV1Request} request
+ * @param {TokensClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.auth.v1.tokens.grant()
+ */
+ public grant(
+ request: Deepgram.auth.v1.GrantV1Request = {},
+ requestOptions?: TokensClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__grant(request, requestOptions));
+ }
+
+ private async __grant(
+ request: Deepgram.auth.v1.GrantV1Request = {},
+ requestOptions?: TokensClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ "v1/auth/grant",
+ ),
+ method: "POST",
+ headers: _headers,
+ contentType: "application/json",
+ queryParameters: requestOptions?.queryParams,
+ requestType: "json",
+ body: request,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.GrantV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError("Timeout exceeded when calling POST /v1/auth/grant.");
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/auth/resources/v1/resources/tokens/client/index.ts b/src/api/resources/auth/resources/v1/resources/tokens/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/auth/resources/v1/resources/tokens/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/auth/resources/v1/resources/tokens/client/requests/GrantV1Request.ts b/src/api/resources/auth/resources/v1/resources/tokens/client/requests/GrantV1Request.ts
new file mode 100644
index 00000000..73881f69
--- /dev/null
+++ b/src/api/resources/auth/resources/v1/resources/tokens/client/requests/GrantV1Request.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * @example
+ * {}
+ */
+export interface GrantV1Request {
+ /** Time to live in seconds for the token. Defaults to 30 seconds. */
+ ttl_seconds?: number;
+}
diff --git a/src/api/resources/auth/resources/v1/resources/tokens/client/requests/index.ts b/src/api/resources/auth/resources/v1/resources/tokens/client/requests/index.ts
new file mode 100644
index 00000000..40281c44
--- /dev/null
+++ b/src/api/resources/auth/resources/v1/resources/tokens/client/requests/index.ts
@@ -0,0 +1 @@
+export type { GrantV1Request } from "./GrantV1Request.js";
diff --git a/src/api/resources/auth/resources/v1/resources/tokens/index.ts b/src/api/resources/auth/resources/v1/resources/tokens/index.ts
new file mode 100644
index 00000000..914b8c3c
--- /dev/null
+++ b/src/api/resources/auth/resources/v1/resources/tokens/index.ts
@@ -0,0 +1 @@
+export * from "./client/index.js";
diff --git a/src/api/resources/index.ts b/src/api/resources/index.ts
new file mode 100644
index 00000000..3d31b15f
--- /dev/null
+++ b/src/api/resources/index.ts
@@ -0,0 +1,7 @@
+export * as agent from "./agent/index.js";
+export * as auth from "./auth/index.js";
+export * as listen from "./listen/index.js";
+export * as manage from "./manage/index.js";
+export * as read from "./read/index.js";
+export * as selfHosted from "./selfHosted/index.js";
+export * as speak from "./speak/index.js";
diff --git a/src/api/resources/listen/client/Client.ts b/src/api/resources/listen/client/Client.ts
new file mode 100644
index 00000000..f8814fc5
--- /dev/null
+++ b/src/api/resources/listen/client/Client.ts
@@ -0,0 +1,28 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../BaseClient.js";
+import { V1Client } from "../resources/v1/client/Client.js";
+import { V2Client } from "../resources/v2/client/Client.js";
+
+export declare namespace ListenClient {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class ListenClient {
+ protected readonly _options: ListenClient.Options;
+ protected _v1: V1Client | undefined;
+ protected _v2: V2Client | undefined;
+
+ constructor(options: ListenClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get v1(): V1Client {
+ return (this._v1 ??= new V1Client(this._options));
+ }
+
+ public get v2(): V2Client {
+ return (this._v2 ??= new V2Client(this._options));
+ }
+}
diff --git a/src/api/resources/listen/client/index.ts b/src/api/resources/listen/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/listen/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/listen/index.ts b/src/api/resources/listen/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/listen/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/listen/resources/index.ts b/src/api/resources/listen/resources/index.ts
new file mode 100644
index 00000000..c5abd973
--- /dev/null
+++ b/src/api/resources/listen/resources/index.ts
@@ -0,0 +1,4 @@
+export * as v1 from "./v1/index.js";
+export * from "./v1/types/index.js";
+export * as v2 from "./v2/index.js";
+export * from "./v2/types/index.js";
diff --git a/src/api/resources/listen/resources/v1/client/Client.ts b/src/api/resources/listen/resources/v1/client/Client.ts
new file mode 100644
index 00000000..cf2ad87e
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/client/Client.ts
@@ -0,0 +1,231 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers.js";
+import * as core from "../../../../../../core/index.js";
+import * as environments from "../../../../../../environments.js";
+import { MediaClient } from "../resources/media/client/Client.js";
+import { V1Socket } from "./Socket.js";
+
+export declare namespace V1Client {
+ export interface Options extends BaseClientOptions {}
+
+ export interface ConnectArgs {
+ callback?: string | undefined;
+ callback_method?: string | undefined;
+ channels?: string | undefined;
+ diarize?: string | undefined;
+ dictation?: string | undefined;
+ encoding?: string | undefined;
+ endpointing?: string | undefined;
+ extra?: string | undefined;
+ interim_results?: string | undefined;
+ keyterm?: string | undefined;
+ keywords?: string | undefined;
+ language?: string | undefined;
+ mip_opt_out?: string | undefined;
+ model: string;
+ multichannel?: string | undefined;
+ numerals?: string | undefined;
+ profanity_filter?: string | undefined;
+ punctuate?: string | undefined;
+ redact?: string | undefined;
+ replace?: string | undefined;
+ sample_rate?: string | undefined;
+ search?: string | undefined;
+ smart_format?: string | undefined;
+ tag?: string | undefined;
+ utterance_end_ms?: string | undefined;
+ vad_events?: string | undefined;
+ version?: string | undefined;
+ Authorization: string;
+ /** Arbitrary headers to send with the websocket connect request. */
+ headers?: Record;
+ /** Enable debug mode on the websocket. Defaults to false. */
+ debug?: boolean;
+ /** Number of reconnect attempts. Defaults to 30. */
+ reconnectAttempts?: number;
+ }
+}
+
+export class V1Client {
+ protected readonly _options: V1Client.Options;
+ protected _media: MediaClient | undefined;
+
+ constructor(options: V1Client.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get media(): MediaClient {
+ return (this._media ??= new MediaClient(this._options));
+ }
+
+ public async connect(args: V1Client.ConnectArgs): Promise {
+ const {
+ callback,
+ callback_method,
+ channels,
+ diarize,
+ dictation,
+ encoding,
+ endpointing,
+ extra,
+ interim_results,
+ keyterm,
+ keywords,
+ language,
+ mip_opt_out,
+ model,
+ multichannel,
+ numerals,
+ profanity_filter,
+ punctuate,
+ redact,
+ replace,
+ sample_rate,
+ search,
+ smart_format,
+ tag,
+ utterance_end_ms,
+ vad_events,
+ version,
+ headers,
+ debug,
+ reconnectAttempts,
+ } = args;
+ const _queryParams: Record = {};
+ if (callback != null) {
+ _queryParams.callback = callback;
+ }
+
+ if (callback_method != null) {
+ _queryParams.callback_method = callback_method;
+ }
+
+ if (channels != null) {
+ _queryParams.channels = channels;
+ }
+
+ if (diarize != null) {
+ _queryParams.diarize = diarize;
+ }
+
+ if (dictation != null) {
+ _queryParams.dictation = dictation;
+ }
+
+ if (encoding != null) {
+ _queryParams.encoding = encoding;
+ }
+
+ if (endpointing != null) {
+ _queryParams.endpointing = endpointing;
+ }
+
+ if (extra != null) {
+ _queryParams.extra = extra;
+ }
+
+ if (interim_results != null) {
+ _queryParams.interim_results = interim_results;
+ }
+
+ if (keyterm != null) {
+ _queryParams.keyterm = keyterm;
+ }
+
+ if (keywords != null) {
+ _queryParams.keywords = keywords;
+ }
+
+ if (language != null) {
+ _queryParams.language = language;
+ }
+
+ if (mip_opt_out != null) {
+ _queryParams.mip_opt_out = mip_opt_out;
+ }
+
+ _queryParams.model = model;
+ if (multichannel != null) {
+ _queryParams.multichannel = multichannel;
+ }
+
+ if (numerals != null) {
+ _queryParams.numerals = numerals;
+ }
+
+ if (profanity_filter != null) {
+ _queryParams.profanity_filter = profanity_filter;
+ }
+
+ if (punctuate != null) {
+ _queryParams.punctuate = punctuate;
+ }
+
+ if (redact != null) {
+ _queryParams.redact = redact;
+ }
+
+ if (replace != null) {
+ _queryParams.replace = replace;
+ }
+
+ if (sample_rate != null) {
+ _queryParams.sample_rate = sample_rate;
+ }
+
+ if (search != null) {
+ _queryParams.search = search;
+ }
+
+ if (smart_format != null) {
+ _queryParams.smart_format = smart_format;
+ }
+
+ if (tag != null) {
+ _queryParams.tag = tag;
+ }
+
+ if (utterance_end_ms != null) {
+ _queryParams.utterance_end_ms = utterance_end_ms;
+ }
+
+ if (vad_events != null) {
+ _queryParams.vad_events = vad_events;
+ }
+
+ if (version != null) {
+ _queryParams.version = version;
+ }
+
+ const _headers: Record = mergeHeaders(
+ mergeOnlyDefinedHeaders({
+ ...(await this._getCustomAuthorizationHeaders()),
+ Authorization: args.Authorization,
+ }),
+ headers,
+ );
+ const socket = new core.ReconnectingWebSocket({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).production,
+ "/v1/listen",
+ ),
+ protocols: [],
+ queryParameters: _queryParams,
+ headers: _headers,
+ options: { debug: debug ?? false, maxRetries: reconnectAttempts ?? 30 },
+ });
+ return new V1Socket({ socket });
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/listen/resources/v1/client/Socket.ts b/src/api/resources/listen/resources/v1/client/Socket.ts
new file mode 100644
index 00000000..392d9182
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/client/Socket.ts
@@ -0,0 +1,159 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import * as core from "../../../../../../core/index.js";
+import { fromJson, toJson } from "../../../../../../core/json.js";
+import type * as Deepgram from "../../../../../index.js";
+
+export declare namespace V1Socket {
+ export interface Args {
+ socket: core.ReconnectingWebSocket;
+ }
+
+ export type Response =
+ | Deepgram.listen.ListenV1Results
+ | Deepgram.listen.ListenV1Metadata
+ | Deepgram.listen.ListenV1UtteranceEnd
+ | Deepgram.listen.ListenV1SpeechStarted;
+ type EventHandlers = {
+ open?: () => void;
+ message?: (message: Response) => void;
+ close?: (event: core.CloseEvent) => void;
+ error?: (error: Error) => void;
+ };
+}
+
+export class V1Socket {
+ public readonly socket: core.ReconnectingWebSocket;
+ protected readonly eventHandlers: V1Socket.EventHandlers = {};
+ private handleOpen: () => void = () => {
+ this.eventHandlers.open?.();
+ };
+ private handleMessage: (event: { data: string }) => void = (event) => {
+ const data = fromJson(event.data);
+
+ this.eventHandlers.message?.(data as V1Socket.Response);
+ };
+ private handleClose: (event: core.CloseEvent) => void = (event) => {
+ this.eventHandlers.close?.(event);
+ };
+ private handleError: (event: core.ErrorEvent) => void = (event) => {
+ const message = event.message;
+ this.eventHandlers.error?.(new Error(message));
+ };
+
+ constructor(args: V1Socket.Args) {
+ this.socket = args.socket;
+ this.socket.addEventListener("open", this.handleOpen);
+ this.socket.addEventListener("message", this.handleMessage);
+ this.socket.addEventListener("close", this.handleClose);
+ this.socket.addEventListener("error", this.handleError);
+ }
+
+ /** The current state of the connection; this is one of the readyState constants. */
+ get readyState(): number {
+ return this.socket.readyState;
+ }
+
+ /**
+ * @param event - The event to attach to.
+ * @param callback - The callback to run when the event is triggered.
+ * Usage:
+ * ```typescript
+ * this.on('open', () => {
+ * console.log('The websocket is open');
+ * });
+ * ```
+ */
+ public on(event: T, callback: V1Socket.EventHandlers[T]): void {
+ this.eventHandlers[event] = callback;
+ }
+
+ public sendListenV1Media(message: string): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendListenV1Finalize(message: Deepgram.listen.ListenV1Finalize): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendListenV1CloseStream(message: Deepgram.listen.ListenV1CloseStream): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendListenV1KeepAlive(message: Deepgram.listen.ListenV1KeepAlive): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ /** Connect to the websocket and register event handlers. */
+ public connect(): V1Socket {
+ this.socket.reconnect();
+
+ this.socket.addEventListener("open", this.handleOpen);
+ this.socket.addEventListener("message", this.handleMessage);
+ this.socket.addEventListener("close", this.handleClose);
+ this.socket.addEventListener("error", this.handleError);
+
+ return this;
+ }
+
+ /** Close the websocket and unregister event handlers. */
+ public close(): void {
+ this.socket.close();
+
+ this.handleClose({ code: 1000 } as CloseEvent);
+
+ this.socket.removeEventListener("open", this.handleOpen);
+ this.socket.removeEventListener("message", this.handleMessage);
+ this.socket.removeEventListener("close", this.handleClose);
+ this.socket.removeEventListener("error", this.handleError);
+ }
+
+ /** Returns a promise that resolves when the websocket is open. */
+ public async waitForOpen(): Promise {
+ if (this.socket.readyState === core.ReconnectingWebSocket.OPEN) {
+ return this.socket;
+ }
+
+ return new Promise((resolve, reject) => {
+ this.socket.addEventListener("open", () => {
+ resolve(this.socket);
+ });
+
+ this.socket.addEventListener("error", (event: unknown) => {
+ reject(event);
+ });
+ });
+ }
+
+ /** Asserts that the websocket is open. */
+ private assertSocketIsOpen(): void {
+ if (!this.socket) {
+ throw new Error("Socket is not connected.");
+ }
+
+ if (this.socket.readyState !== core.ReconnectingWebSocket.OPEN) {
+ throw new Error("Socket is not open.");
+ }
+ }
+
+ /** Send a binary payload to the websocket. */
+ protected sendBinary(payload: ArrayBufferLike | Blob | ArrayBufferView): void {
+ this.socket.send(payload);
+ }
+
+ /** Send a JSON payload to the websocket. */
+ protected sendJson(
+ payload:
+ | string
+ | Deepgram.listen.ListenV1Finalize
+ | Deepgram.listen.ListenV1CloseStream
+ | Deepgram.listen.ListenV1KeepAlive,
+ ): void {
+ const jsonPayload = toJson(payload);
+ this.socket.send(jsonPayload);
+ }
+}
diff --git a/src/api/resources/listen/resources/v1/client/index.ts b/src/api/resources/listen/resources/v1/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/listen/resources/v1/index.ts b/src/api/resources/listen/resources/v1/index.ts
new file mode 100644
index 00000000..0ef16e76
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/index.ts
@@ -0,0 +1,3 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/listen/resources/v1/resources/index.ts b/src/api/resources/listen/resources/v1/resources/index.ts
new file mode 100644
index 00000000..4e08efd8
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/index.ts
@@ -0,0 +1,3 @@
+export * from "./media/client/requests/index.js";
+export * as media from "./media/index.js";
+export * from "./media/types/index.js";
diff --git a/src/api/resources/listen/resources/v1/resources/media/client/Client.ts b/src/api/resources/listen/resources/v1/resources/media/client/Client.ts
new file mode 100644
index 00000000..7eb7299b
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/client/Client.ts
@@ -0,0 +1,635 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../index.js";
+
+export declare namespace MediaClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class MediaClient {
+ protected readonly _options: MediaClient.Options;
+
+ constructor(options: MediaClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Transcribe audio and video using Deepgram's speech-to-text REST API
+ *
+ * @param {Deepgram.listen.v1.ListenV1RequestUrl} request
+ * @param {MediaClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.listen.v1.media.transcribeUrl({
+ * callback: "callback",
+ * callback_method: "POST",
+ * extra: "extra",
+ * sentiment: true,
+ * summarize: "v2",
+ * tag: "tag",
+ * topics: true,
+ * custom_topic: "custom_topic",
+ * custom_topic_mode: "extended",
+ * intents: true,
+ * custom_intent: "custom_intent",
+ * custom_intent_mode: "extended",
+ * detect_entities: true,
+ * detect_language: true,
+ * diarize: true,
+ * dictation: true,
+ * encoding: "linear16",
+ * filler_words: true,
+ * keywords: "keywords",
+ * language: "language",
+ * measurements: true,
+ * model: "nova-3",
+ * multichannel: true,
+ * numerals: true,
+ * paragraphs: true,
+ * profanity_filter: true,
+ * punctuate: true,
+ * redact: "redact",
+ * replace: "replace",
+ * search: "search",
+ * smart_format: true,
+ * utterances: true,
+ * utt_split: 1.1,
+ * version: "latest",
+ * mip_opt_out: true,
+ * url: "https://dpgr.am/spacewalk.wav"
+ * })
+ */
+ public transcribeUrl(
+ request: Deepgram.listen.v1.ListenV1RequestUrl,
+ requestOptions?: MediaClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__transcribeUrl(request, requestOptions));
+ }
+
+ private async __transcribeUrl(
+ request: Deepgram.listen.v1.ListenV1RequestUrl,
+ requestOptions?: MediaClient.RequestOptions,
+ ): Promise> {
+ const {
+ callback,
+ callback_method: callbackMethod,
+ extra,
+ sentiment,
+ summarize,
+ tag,
+ topics,
+ custom_topic: customTopic,
+ custom_topic_mode: customTopicMode,
+ intents,
+ custom_intent: customIntent,
+ custom_intent_mode: customIntentMode,
+ detect_entities: detectEntities,
+ detect_language: detectLanguage,
+ diarize,
+ dictation,
+ encoding,
+ filler_words: fillerWords,
+ keyterm,
+ keywords,
+ language,
+ measurements,
+ model,
+ multichannel,
+ numerals,
+ paragraphs,
+ profanity_filter: profanityFilter,
+ punctuate,
+ redact,
+ replace,
+ search,
+ smart_format: smartFormat,
+ utterances,
+ utt_split: uttSplit,
+ version,
+ mip_opt_out: mipOptOut,
+ ..._body
+ } = request;
+ const _queryParams: Record = {};
+ if (callback != null) {
+ _queryParams.callback = callback;
+ }
+
+ if (callbackMethod != null) {
+ _queryParams.callback_method = callbackMethod;
+ }
+
+ if (extra != null) {
+ if (Array.isArray(extra)) {
+ _queryParams.extra = extra.map((item) => item);
+ } else {
+ _queryParams.extra = extra;
+ }
+ }
+
+ if (sentiment != null) {
+ _queryParams.sentiment = sentiment.toString();
+ }
+
+ if (summarize != null) {
+ _queryParams.summarize = summarize;
+ }
+
+ if (tag != null) {
+ if (Array.isArray(tag)) {
+ _queryParams.tag = tag.map((item) => item);
+ } else {
+ _queryParams.tag = tag;
+ }
+ }
+
+ if (topics != null) {
+ _queryParams.topics = topics.toString();
+ }
+
+ if (customTopic != null) {
+ if (Array.isArray(customTopic)) {
+ _queryParams.custom_topic = customTopic.map((item) => item);
+ } else {
+ _queryParams.custom_topic = customTopic;
+ }
+ }
+
+ if (customTopicMode != null) {
+ _queryParams.custom_topic_mode = customTopicMode;
+ }
+
+ if (intents != null) {
+ _queryParams.intents = intents.toString();
+ }
+
+ if (customIntent != null) {
+ if (Array.isArray(customIntent)) {
+ _queryParams.custom_intent = customIntent.map((item) => item);
+ } else {
+ _queryParams.custom_intent = customIntent;
+ }
+ }
+
+ if (customIntentMode != null) {
+ _queryParams.custom_intent_mode = customIntentMode;
+ }
+
+ if (detectEntities != null) {
+ _queryParams.detect_entities = detectEntities.toString();
+ }
+
+ if (detectLanguage != null) {
+ _queryParams.detect_language = detectLanguage.toString();
+ }
+
+ if (diarize != null) {
+ _queryParams.diarize = diarize.toString();
+ }
+
+ if (dictation != null) {
+ _queryParams.dictation = dictation.toString();
+ }
+
+ if (encoding != null) {
+ _queryParams.encoding = encoding;
+ }
+
+ if (fillerWords != null) {
+ _queryParams.filler_words = fillerWords.toString();
+ }
+
+ if (keyterm != null) {
+ if (Array.isArray(keyterm)) {
+ _queryParams.keyterm = keyterm.map((item) => item);
+ } else {
+ _queryParams.keyterm = keyterm;
+ }
+ }
+
+ if (keywords != null) {
+ if (Array.isArray(keywords)) {
+ _queryParams.keywords = keywords.map((item) => item);
+ } else {
+ _queryParams.keywords = keywords;
+ }
+ }
+
+ if (language != null) {
+ _queryParams.language = language;
+ }
+
+ if (measurements != null) {
+ _queryParams.measurements = measurements.toString();
+ }
+
+ if (model != null) {
+ _queryParams.model = model;
+ }
+
+ if (multichannel != null) {
+ _queryParams.multichannel = multichannel.toString();
+ }
+
+ if (numerals != null) {
+ _queryParams.numerals = numerals.toString();
+ }
+
+ if (paragraphs != null) {
+ _queryParams.paragraphs = paragraphs.toString();
+ }
+
+ if (profanityFilter != null) {
+ _queryParams.profanity_filter = profanityFilter.toString();
+ }
+
+ if (punctuate != null) {
+ _queryParams.punctuate = punctuate.toString();
+ }
+
+ if (redact != null) {
+ _queryParams.redact = redact;
+ }
+
+ if (replace != null) {
+ if (Array.isArray(replace)) {
+ _queryParams.replace = replace.map((item) => item);
+ } else {
+ _queryParams.replace = replace;
+ }
+ }
+
+ if (search != null) {
+ if (Array.isArray(search)) {
+ _queryParams.search = search.map((item) => item);
+ } else {
+ _queryParams.search = search;
+ }
+ }
+
+ if (smartFormat != null) {
+ _queryParams.smart_format = smartFormat.toString();
+ }
+
+ if (utterances != null) {
+ _queryParams.utterances = utterances.toString();
+ }
+
+ if (uttSplit != null) {
+ _queryParams.utt_split = uttSplit.toString();
+ }
+
+ if (version != null) {
+ _queryParams.version = version;
+ }
+
+ if (mipOptOut != null) {
+ _queryParams.mip_opt_out = mipOptOut.toString();
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ "v1/listen",
+ ),
+ method: "POST",
+ headers: _headers,
+ contentType: "application/json",
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ requestType: "json",
+ body: _body,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.listen.v1.MediaTranscribeResponse,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError("Timeout exceeded when calling POST /v1/listen.");
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Transcribe audio and video using Deepgram's speech-to-text REST API
+ *
+ * @param {core.file.Uploadable} uploadable
+ * @param {Deepgram.listen.v1.MediaTranscribeRequestOctetStream} request
+ * @param {MediaClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * import { createReadStream } from "fs";
+ * await client.listen.v1.media.transcribeFile(createReadStream("path/to/file"), {})
+ */
+ public transcribeFile(
+ uploadable: core.file.Uploadable,
+ request: Deepgram.listen.v1.MediaTranscribeRequestOctetStream,
+ requestOptions?: MediaClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__transcribeFile(uploadable, request, requestOptions));
+ }
+
+ private async __transcribeFile(
+ uploadable: core.file.Uploadable,
+ request: Deepgram.listen.v1.MediaTranscribeRequestOctetStream,
+ requestOptions?: MediaClient.RequestOptions,
+ ): Promise> {
+ const _queryParams: Record = {};
+ if (request.callback != null) {
+ _queryParams.callback = request.callback;
+ }
+
+ if (request.callback_method != null) {
+ _queryParams.callback_method = request.callback_method;
+ }
+
+ if (request.extra != null) {
+ if (Array.isArray(request.extra)) {
+ _queryParams.extra = request.extra.map((item) => item);
+ } else {
+ _queryParams.extra = request.extra;
+ }
+ }
+
+ if (request.sentiment != null) {
+ _queryParams.sentiment = request.sentiment.toString();
+ }
+
+ if (request.summarize != null) {
+ _queryParams.summarize = request.summarize;
+ }
+
+ if (request.tag != null) {
+ if (Array.isArray(request.tag)) {
+ _queryParams.tag = request.tag.map((item) => item);
+ } else {
+ _queryParams.tag = request.tag;
+ }
+ }
+
+ if (request.topics != null) {
+ _queryParams.topics = request.topics.toString();
+ }
+
+ if (request.custom_topic != null) {
+ if (Array.isArray(request.custom_topic)) {
+ _queryParams.custom_topic = request.custom_topic.map((item) => item);
+ } else {
+ _queryParams.custom_topic = request.custom_topic;
+ }
+ }
+
+ if (request.custom_topic_mode != null) {
+ _queryParams.custom_topic_mode = request.custom_topic_mode;
+ }
+
+ if (request.intents != null) {
+ _queryParams.intents = request.intents.toString();
+ }
+
+ if (request.custom_intent != null) {
+ if (Array.isArray(request.custom_intent)) {
+ _queryParams.custom_intent = request.custom_intent.map((item) => item);
+ } else {
+ _queryParams.custom_intent = request.custom_intent;
+ }
+ }
+
+ if (request.custom_intent_mode != null) {
+ _queryParams.custom_intent_mode = request.custom_intent_mode;
+ }
+
+ if (request.detect_entities != null) {
+ _queryParams.detect_entities = request.detect_entities.toString();
+ }
+
+ if (request.detect_language != null) {
+ _queryParams.detect_language = request.detect_language.toString();
+ }
+
+ if (request.diarize != null) {
+ _queryParams.diarize = request.diarize.toString();
+ }
+
+ if (request.dictation != null) {
+ _queryParams.dictation = request.dictation.toString();
+ }
+
+ if (request.encoding != null) {
+ _queryParams.encoding = request.encoding;
+ }
+
+ if (request.filler_words != null) {
+ _queryParams.filler_words = request.filler_words.toString();
+ }
+
+ if (request.keyterm != null) {
+ if (Array.isArray(request.keyterm)) {
+ _queryParams.keyterm = request.keyterm.map((item) => item);
+ } else {
+ _queryParams.keyterm = request.keyterm;
+ }
+ }
+
+ if (request.keywords != null) {
+ if (Array.isArray(request.keywords)) {
+ _queryParams.keywords = request.keywords.map((item) => item);
+ } else {
+ _queryParams.keywords = request.keywords;
+ }
+ }
+
+ if (request.language != null) {
+ _queryParams.language = request.language;
+ }
+
+ if (request.measurements != null) {
+ _queryParams.measurements = request.measurements.toString();
+ }
+
+ if (request.model != null) {
+ _queryParams.model = request.model;
+ }
+
+ if (request.multichannel != null) {
+ _queryParams.multichannel = request.multichannel.toString();
+ }
+
+ if (request.numerals != null) {
+ _queryParams.numerals = request.numerals.toString();
+ }
+
+ if (request.paragraphs != null) {
+ _queryParams.paragraphs = request.paragraphs.toString();
+ }
+
+ if (request.profanity_filter != null) {
+ _queryParams.profanity_filter = request.profanity_filter.toString();
+ }
+
+ if (request.punctuate != null) {
+ _queryParams.punctuate = request.punctuate.toString();
+ }
+
+ if (request.redact != null) {
+ _queryParams.redact = request.redact;
+ }
+
+ if (request.replace != null) {
+ if (Array.isArray(request.replace)) {
+ _queryParams.replace = request.replace.map((item) => item);
+ } else {
+ _queryParams.replace = request.replace;
+ }
+ }
+
+ if (request.search != null) {
+ if (Array.isArray(request.search)) {
+ _queryParams.search = request.search.map((item) => item);
+ } else {
+ _queryParams.search = request.search;
+ }
+ }
+
+ if (request.smart_format != null) {
+ _queryParams.smart_format = request.smart_format.toString();
+ }
+
+ if (request.utterances != null) {
+ _queryParams.utterances = request.utterances.toString();
+ }
+
+ if (request.utt_split != null) {
+ _queryParams.utt_split = request.utt_split.toString();
+ }
+
+ if (request.version != null) {
+ _queryParams.version = request.version;
+ }
+
+ if (request.mip_opt_out != null) {
+ _queryParams.mip_opt_out = request.mip_opt_out.toString();
+ }
+
+ const _binaryUploadRequest = await core.file.toBinaryUploadRequest(uploadable);
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ _binaryUploadRequest.headers,
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ "v1/listen",
+ ),
+ method: "POST",
+ headers: _headers,
+ contentType: "application/octet-stream",
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ requestType: "bytes",
+ duplex: "half",
+ body: _binaryUploadRequest.body,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.listen.v1.MediaTranscribeResponse,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError("Timeout exceeded when calling POST /v1/listen.");
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/listen/resources/v1/resources/media/client/index.ts b/src/api/resources/listen/resources/v1/resources/media/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/listen/resources/v1/resources/media/client/requests/ListenV1RequestUrl.ts b/src/api/resources/listen/resources/v1/resources/media/client/requests/ListenV1RequestUrl.ts
new file mode 100644
index 00000000..b48547fa
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/client/requests/ListenV1RequestUrl.ts
@@ -0,0 +1,120 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../../../../index.js";
+
+/**
+ * @example
+ * {
+ * callback: "callback",
+ * callback_method: "POST",
+ * extra: "extra",
+ * sentiment: true,
+ * summarize: "v2",
+ * tag: "tag",
+ * topics: true,
+ * custom_topic: "custom_topic",
+ * custom_topic_mode: "extended",
+ * intents: true,
+ * custom_intent: "custom_intent",
+ * custom_intent_mode: "extended",
+ * detect_entities: true,
+ * detect_language: true,
+ * diarize: true,
+ * dictation: true,
+ * encoding: "linear16",
+ * filler_words: true,
+ * keywords: "keywords",
+ * language: "language",
+ * measurements: true,
+ * model: "nova-3",
+ * multichannel: true,
+ * numerals: true,
+ * paragraphs: true,
+ * profanity_filter: true,
+ * punctuate: true,
+ * redact: "redact",
+ * replace: "replace",
+ * search: "search",
+ * smart_format: true,
+ * utterances: true,
+ * utt_split: 1.1,
+ * version: "latest",
+ * mip_opt_out: true,
+ * url: "https://dpgr.am/spacewalk.wav"
+ * }
+ */
+export interface ListenV1RequestUrl {
+ /** URL to which we'll make the callback request */
+ callback?: string;
+ /** HTTP method by which the callback request will be made */
+ callback_method?: Deepgram.listen.v1.MediaTranscribeRequestCallbackMethod;
+ /** Arbitrary key-value pairs that are attached to the API response for usage in downstream processing */
+ extra?: string | string[];
+ /** Recognizes the sentiment throughout a transcript or text */
+ sentiment?: boolean;
+ /** Summarize content. For Listen API, supports string version option. For Read API, accepts boolean only. */
+ summarize?: Deepgram.listen.v1.MediaTranscribeRequestSummarize;
+ /** Label your requests for the purpose of identification during usage reporting */
+ tag?: string | string[];
+ /** Detect topics throughout a transcript or text */
+ topics?: boolean;
+ /** Custom topics you want the model to detect within your input audio or text if present Submit up to `100`. */
+ custom_topic?: string | string[];
+ /** Sets how the model will interpret strings submitted to the `custom_topic` param. When `strict`, the model will only return topics submitted using the `custom_topic` param. When `extended`, the model will return its own detected topics in addition to those submitted using the `custom_topic` param */
+ custom_topic_mode?: Deepgram.listen.v1.MediaTranscribeRequestCustomTopicMode;
+ /** Recognizes speaker intent throughout a transcript or text */
+ intents?: boolean;
+ /** Custom intents you want the model to detect within your input audio if present */
+ custom_intent?: string | string[];
+ /** Sets how the model will interpret intents submitted to the `custom_intent` param. When `strict`, the model will only return intents submitted using the `custom_intent` param. When `extended`, the model will return its own detected intents in the `custom_intent` param. */
+ custom_intent_mode?: Deepgram.listen.v1.MediaTranscribeRequestCustomIntentMode;
+ /** Identifies and extracts key entities from content in submitted audio */
+ detect_entities?: boolean;
+ /** Identifies the dominant language spoken in submitted audio */
+ detect_language?: boolean;
+ /** Recognize speaker changes. Each word in the transcript will be assigned a speaker number starting at 0 */
+ diarize?: boolean;
+ /** Dictation mode for controlling formatting with dictated speech */
+ dictation?: boolean;
+ /** Specify the expected encoding of your submitted audio */
+ encoding?: Deepgram.listen.v1.MediaTranscribeRequestEncoding;
+ /** Filler Words can help transcribe interruptions in your audio, like "uh" and "um" */
+ filler_words?: boolean;
+ /** Key term prompting can boost or suppress specialized terminology and brands. Only compatible with Nova-3 */
+ keyterm?: string | string[];
+ /** Keywords can boost or suppress specialized terminology and brands */
+ keywords?: string | string[];
+ /** The [BCP-47 language tag](https://tools.ietf.org/html/bcp47) that hints at the primary spoken language. Depending on the Model and API endpoint you choose only certain languages are available */
+ language?: string;
+ /** Spoken measurements will be converted to their corresponding abbreviations */
+ measurements?: boolean;
+ /** AI model used to process submitted audio */
+ model?: Deepgram.listen.v1.MediaTranscribeRequestModel;
+ /** Transcribe each audio channel independently */
+ multichannel?: boolean;
+ /** Numerals converts numbers from written format to numerical format */
+ numerals?: boolean;
+ /** Splits audio into paragraphs to improve transcript readability */
+ paragraphs?: boolean;
+ /** Profanity Filter looks for recognized profanity and converts it to the nearest recognized non-profane word or removes it from the transcript completely */
+ profanity_filter?: boolean;
+ /** Add punctuation and capitalization to the transcript */
+ punctuate?: boolean;
+ /** Redaction removes sensitive information from your transcripts */
+ redact?: string;
+ /** Search for terms or phrases in submitted audio and replaces them */
+ replace?: string | string[];
+ /** Search for terms or phrases in submitted audio */
+ search?: string | string[];
+ /** Apply formatting to transcript output. When set to true, additional formatting will be applied to transcripts to improve readability */
+ smart_format?: boolean;
+ /** Segments speech into meaningful semantic units */
+ utterances?: boolean;
+ /** Seconds to wait before detecting a pause between words in submitted audio */
+ utt_split?: number;
+ /** Version of an AI model to use */
+ version?: Deepgram.listen.v1.MediaTranscribeRequestVersion;
+ /** Opts out requests from the Deepgram Model Improvement Program. Refer to our Docs for pricing impacts before setting this to true. https://dpgr.am/deepgram-mip */
+ mip_opt_out?: boolean;
+ url: string;
+}
diff --git a/src/api/resources/listen/resources/v1/resources/media/client/requests/MediaTranscribeRequestOctetStream.ts b/src/api/resources/listen/resources/v1/resources/media/client/requests/MediaTranscribeRequestOctetStream.ts
new file mode 100644
index 00000000..d7025478
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/client/requests/MediaTranscribeRequestOctetStream.ts
@@ -0,0 +1,85 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../../../../index.js";
+
+/**
+ * @example
+ * {}
+ *
+ * @example
+ * {}
+ */
+export interface MediaTranscribeRequestOctetStream {
+ /** URL to which we'll make the callback request */
+ callback?: string;
+ /** HTTP method by which the callback request will be made */
+ callback_method?: Deepgram.listen.v1.MediaTranscribeRequestCallbackMethod;
+ /** Arbitrary key-value pairs that are attached to the API response for usage in downstream processing */
+ extra?: string | string[];
+ /** Recognizes the sentiment throughout a transcript or text */
+ sentiment?: boolean;
+ /** Summarize content. For Listen API, supports string version option. For Read API, accepts boolean only. */
+ summarize?: Deepgram.listen.v1.MediaTranscribeRequestSummarize;
+ /** Label your requests for the purpose of identification during usage reporting */
+ tag?: string | string[];
+ /** Detect topics throughout a transcript or text */
+ topics?: boolean;
+ /** Custom topics you want the model to detect within your input audio or text if present Submit up to `100`. */
+ custom_topic?: string | string[];
+ /** Sets how the model will interpret strings submitted to the `custom_topic` param. When `strict`, the model will only return topics submitted using the `custom_topic` param. When `extended`, the model will return its own detected topics in addition to those submitted using the `custom_topic` param */
+ custom_topic_mode?: Deepgram.listen.v1.MediaTranscribeRequestCustomTopicMode;
+ /** Recognizes speaker intent throughout a transcript or text */
+ intents?: boolean;
+ /** Custom intents you want the model to detect within your input audio if present */
+ custom_intent?: string | string[];
+ /** Sets how the model will interpret intents submitted to the `custom_intent` param. When `strict`, the model will only return intents submitted using the `custom_intent` param. When `extended`, the model will return its own detected intents in the `custom_intent` param. */
+ custom_intent_mode?: Deepgram.listen.v1.MediaTranscribeRequestCustomIntentMode;
+ /** Identifies and extracts key entities from content in submitted audio */
+ detect_entities?: boolean;
+ /** Identifies the dominant language spoken in submitted audio */
+ detect_language?: boolean;
+ /** Recognize speaker changes. Each word in the transcript will be assigned a speaker number starting at 0 */
+ diarize?: boolean;
+ /** Dictation mode for controlling formatting with dictated speech */
+ dictation?: boolean;
+ /** Specify the expected encoding of your submitted audio */
+ encoding?: Deepgram.listen.v1.MediaTranscribeRequestEncoding;
+ /** Filler Words can help transcribe interruptions in your audio, like "uh" and "um" */
+ filler_words?: boolean;
+ /** Key term prompting can boost or suppress specialized terminology and brands. Only compatible with Nova-3 */
+ keyterm?: string | string[];
+ /** Keywords can boost or suppress specialized terminology and brands */
+ keywords?: string | string[];
+ /** The [BCP-47 language tag](https://tools.ietf.org/html/bcp47) that hints at the primary spoken language. Depending on the Model and API endpoint you choose only certain languages are available */
+ language?: string;
+ /** Spoken measurements will be converted to their corresponding abbreviations */
+ measurements?: boolean;
+ /** AI model used to process submitted audio */
+ model?: Deepgram.listen.v1.MediaTranscribeRequestModel;
+ /** Transcribe each audio channel independently */
+ multichannel?: boolean;
+ /** Numerals converts numbers from written format to numerical format */
+ numerals?: boolean;
+ /** Splits audio into paragraphs to improve transcript readability */
+ paragraphs?: boolean;
+ /** Profanity Filter looks for recognized profanity and converts it to the nearest recognized non-profane word or removes it from the transcript completely */
+ profanity_filter?: boolean;
+ /** Add punctuation and capitalization to the transcript */
+ punctuate?: boolean;
+ /** Redaction removes sensitive information from your transcripts */
+ redact?: string;
+ /** Search for terms or phrases in submitted audio and replaces them */
+ replace?: string | string[];
+ /** Search for terms or phrases in submitted audio */
+ search?: string | string[];
+ /** Apply formatting to transcript output. When set to true, additional formatting will be applied to transcripts to improve readability */
+ smart_format?: boolean;
+ /** Segments speech into meaningful semantic units */
+ utterances?: boolean;
+ /** Seconds to wait before detecting a pause between words in submitted audio */
+ utt_split?: number;
+ /** Version of an AI model to use */
+ version?: Deepgram.listen.v1.MediaTranscribeRequestVersion;
+ /** Opts out requests from the Deepgram Model Improvement Program. Refer to our Docs for pricing impacts before setting this to true. https://dpgr.am/deepgram-mip */
+ mip_opt_out?: boolean;
+}
diff --git a/src/api/resources/listen/resources/v1/resources/media/client/requests/index.ts b/src/api/resources/listen/resources/v1/resources/media/client/requests/index.ts
new file mode 100644
index 00000000..da3f43d5
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/client/requests/index.ts
@@ -0,0 +1,2 @@
+export type { ListenV1RequestUrl } from "./ListenV1RequestUrl.js";
+export type { MediaTranscribeRequestOctetStream } from "./MediaTranscribeRequestOctetStream.js";
diff --git a/src/api/resources/listen/resources/v1/resources/media/index.ts b/src/api/resources/listen/resources/v1/resources/media/index.ts
new file mode 100644
index 00000000..d9adb1af
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestCallbackMethod.ts b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestCallbackMethod.ts
new file mode 100644
index 00000000..7948f223
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestCallbackMethod.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const MediaTranscribeRequestCallbackMethod = {
+ Post: "POST",
+ Put: "PUT",
+} as const;
+export type MediaTranscribeRequestCallbackMethod =
+ (typeof MediaTranscribeRequestCallbackMethod)[keyof typeof MediaTranscribeRequestCallbackMethod];
diff --git a/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestCustomIntentMode.ts b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestCustomIntentMode.ts
new file mode 100644
index 00000000..4ccfdd3d
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestCustomIntentMode.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const MediaTranscribeRequestCustomIntentMode = {
+ Extended: "extended",
+ Strict: "strict",
+} as const;
+export type MediaTranscribeRequestCustomIntentMode =
+ (typeof MediaTranscribeRequestCustomIntentMode)[keyof typeof MediaTranscribeRequestCustomIntentMode];
diff --git a/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestCustomTopicMode.ts b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestCustomTopicMode.ts
new file mode 100644
index 00000000..114a063a
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestCustomTopicMode.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const MediaTranscribeRequestCustomTopicMode = {
+ Extended: "extended",
+ Strict: "strict",
+} as const;
+export type MediaTranscribeRequestCustomTopicMode =
+ (typeof MediaTranscribeRequestCustomTopicMode)[keyof typeof MediaTranscribeRequestCustomTopicMode];
diff --git a/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestEncoding.ts b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestEncoding.ts
new file mode 100644
index 00000000..2d228b6d
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestEncoding.ts
@@ -0,0 +1,14 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const MediaTranscribeRequestEncoding = {
+ Linear16: "linear16",
+ Flac: "flac",
+ Mulaw: "mulaw",
+ AmrNb: "amr-nb",
+ AmrWb: "amr-wb",
+ Opus: "opus",
+ Speex: "speex",
+ G729: "g729",
+} as const;
+export type MediaTranscribeRequestEncoding =
+ (typeof MediaTranscribeRequestEncoding)[keyof typeof MediaTranscribeRequestEncoding];
diff --git a/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestModel.ts b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestModel.ts
new file mode 100644
index 00000000..dc5eee97
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestModel.ts
@@ -0,0 +1,35 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const MediaTranscribeRequestModel = {
+ Nova3: "nova-3",
+ Nova3General: "nova-3-general",
+ Nova3Medical: "nova-3-medical",
+ Nova2: "nova-2",
+ Nova2General: "nova-2-general",
+ Nova2Meeting: "nova-2-meeting",
+ Nova2Finance: "nova-2-finance",
+ Nova2Conversationalai: "nova-2-conversationalai",
+ Nova2Voicemail: "nova-2-voicemail",
+ Nova2Video: "nova-2-video",
+ Nova2Medical: "nova-2-medical",
+ Nova2Drivethru: "nova-2-drivethru",
+ Nova2Automotive: "nova-2-automotive",
+ Nova: "nova",
+ NovaGeneral: "nova-general",
+ NovaPhonecall: "nova-phonecall",
+ NovaMedical: "nova-medical",
+ Enhanced: "enhanced",
+ EnhancedGeneral: "enhanced-general",
+ EnhancedMeeting: "enhanced-meeting",
+ EnhancedPhonecall: "enhanced-phonecall",
+ EnhancedFinance: "enhanced-finance",
+ Base: "base",
+ Meeting: "meeting",
+ Phonecall: "phonecall",
+ Finance: "finance",
+ Conversationalai: "conversationalai",
+ Voicemail: "voicemail",
+ Video: "video",
+} as const;
+export type MediaTranscribeRequestModel =
+ (typeof MediaTranscribeRequestModel)[keyof typeof MediaTranscribeRequestModel];
diff --git a/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestSummarize.ts b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestSummarize.ts
new file mode 100644
index 00000000..87a06137
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestSummarize.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const MediaTranscribeRequestSummarize = {
+ V2: "v2",
+ V1: "v1",
+} as const;
+export type MediaTranscribeRequestSummarize =
+ (typeof MediaTranscribeRequestSummarize)[keyof typeof MediaTranscribeRequestSummarize];
diff --git a/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestVersion.ts b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestVersion.ts
new file mode 100644
index 00000000..8528fa1f
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeRequestVersion.ts
@@ -0,0 +1,7 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const MediaTranscribeRequestVersion = {
+ Latest: "latest",
+} as const;
+export type MediaTranscribeRequestVersion =
+ (typeof MediaTranscribeRequestVersion)[keyof typeof MediaTranscribeRequestVersion];
diff --git a/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeResponse.ts b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeResponse.ts
new file mode 100644
index 00000000..975493ee
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/types/MediaTranscribeResponse.ts
@@ -0,0 +1,5 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../../../index.js";
+
+export type MediaTranscribeResponse = Deepgram.ListenV1Response | Deepgram.ListenV1AcceptedResponse;
diff --git a/src/api/resources/listen/resources/v1/resources/media/types/index.ts b/src/api/resources/listen/resources/v1/resources/media/types/index.ts
new file mode 100644
index 00000000..679a19c0
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/resources/media/types/index.ts
@@ -0,0 +1,8 @@
+export * from "./MediaTranscribeRequestCallbackMethod.js";
+export * from "./MediaTranscribeRequestCustomIntentMode.js";
+export * from "./MediaTranscribeRequestCustomTopicMode.js";
+export * from "./MediaTranscribeRequestEncoding.js";
+export * from "./MediaTranscribeRequestModel.js";
+export * from "./MediaTranscribeRequestSummarize.js";
+export * from "./MediaTranscribeRequestVersion.js";
+export * from "./MediaTranscribeResponse.js";
diff --git a/src/api/resources/listen/resources/v1/types/ListenV1CloseStream.ts b/src/api/resources/listen/resources/v1/types/ListenV1CloseStream.ts
new file mode 100644
index 00000000..4254d530
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/types/ListenV1CloseStream.ts
@@ -0,0 +1,16 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV1CloseStream {
+ /** Message type identifier */
+ type: ListenV1CloseStream.Type;
+}
+
+export namespace ListenV1CloseStream {
+ /** Message type identifier */
+ export const Type = {
+ Finalize: "Finalize",
+ CloseStream: "CloseStream",
+ KeepAlive: "KeepAlive",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+}
diff --git a/src/api/resources/listen/resources/v1/types/ListenV1Finalize.ts b/src/api/resources/listen/resources/v1/types/ListenV1Finalize.ts
new file mode 100644
index 00000000..3f4eefd5
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/types/ListenV1Finalize.ts
@@ -0,0 +1,16 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV1Finalize {
+ /** Message type identifier */
+ type: ListenV1Finalize.Type;
+}
+
+export namespace ListenV1Finalize {
+ /** Message type identifier */
+ export const Type = {
+ Finalize: "Finalize",
+ CloseStream: "CloseStream",
+ KeepAlive: "KeepAlive",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+}
diff --git a/src/api/resources/listen/resources/v1/types/ListenV1KeepAlive.ts b/src/api/resources/listen/resources/v1/types/ListenV1KeepAlive.ts
new file mode 100644
index 00000000..c29ace8b
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/types/ListenV1KeepAlive.ts
@@ -0,0 +1,16 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV1KeepAlive {
+ /** Message type identifier */
+ type: ListenV1KeepAlive.Type;
+}
+
+export namespace ListenV1KeepAlive {
+ /** Message type identifier */
+ export const Type = {
+ Finalize: "Finalize",
+ CloseStream: "CloseStream",
+ KeepAlive: "KeepAlive",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+}
diff --git a/src/api/resources/listen/resources/v1/types/ListenV1Metadata.ts b/src/api/resources/listen/resources/v1/types/ListenV1Metadata.ts
new file mode 100644
index 00000000..6775d37e
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/types/ListenV1Metadata.ts
@@ -0,0 +1,18 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV1Metadata {
+ /** Message type identifier */
+ type: "Metadata";
+ /** The transaction key */
+ transaction_key: string;
+ /** The request ID */
+ request_id: string;
+ /** The sha256 */
+ sha256: string;
+ /** The created */
+ created: string;
+ /** The duration */
+ duration: number;
+ /** The channels */
+ channels: number;
+}
diff --git a/src/api/resources/listen/resources/v1/types/ListenV1Results.ts b/src/api/resources/listen/resources/v1/types/ListenV1Results.ts
new file mode 100644
index 00000000..34902519
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/types/ListenV1Results.ts
@@ -0,0 +1,83 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV1Results {
+ /** Message type identifier */
+ type: "Results";
+ /** The index of the channel */
+ channel_index: number[];
+ /** The duration of the transcription */
+ duration: number;
+ /** The start time of the transcription */
+ start: number;
+ /** Whether the transcription is final */
+ is_final?: boolean;
+ /** Whether the transcription is speech final */
+ speech_final?: boolean;
+ channel: ListenV1Results.Channel;
+ metadata: ListenV1Results.Metadata;
+ /** Whether the transcription is from a finalize message */
+ from_finalize?: boolean;
+}
+
+export namespace ListenV1Results {
+ export interface Channel {
+ alternatives: Channel.Alternatives.Item[];
+ }
+
+ export namespace Channel {
+ export type Alternatives = Alternatives.Item[];
+
+ export namespace Alternatives {
+ export interface Item {
+ /** The transcript of the transcription */
+ transcript: string;
+ /** The confidence of the transcription */
+ confidence: number;
+ languages: string[];
+ words: Item.Words.Item[];
+ }
+
+ export namespace Item {
+ export type Words = Words.Item[];
+
+ export namespace Words {
+ export interface Item {
+ /** The word of the transcription */
+ word: string;
+ /** The start time of the word */
+ start: number;
+ /** The end time of the word */
+ end: number;
+ /** The confidence of the word */
+ confidence: number;
+ /** The language of the word */
+ language: string;
+ /** The punctuated word of the word */
+ punctuated_word: string;
+ /** The speaker of the word */
+ speaker?: number;
+ }
+ }
+ }
+ }
+ }
+
+ export interface Metadata {
+ /** The request ID */
+ request_id: string;
+ model_info: Metadata.ModelInfo;
+ /** The model UUID */
+ model_uuid: string;
+ }
+
+ export namespace Metadata {
+ export interface ModelInfo {
+ /** The name of the model */
+ name: string;
+ /** The version of the model */
+ version: string;
+ /** The arch of the model */
+ arch: string;
+ }
+ }
+}
diff --git a/src/api/resources/listen/resources/v1/types/ListenV1SpeechStarted.ts b/src/api/resources/listen/resources/v1/types/ListenV1SpeechStarted.ts
new file mode 100644
index 00000000..9a7269c9
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/types/ListenV1SpeechStarted.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV1SpeechStarted {
+ /** Message type identifier */
+ type: "SpeechStarted";
+ /** The channel */
+ channel: number[];
+ /** The timestamp */
+ timestamp: number;
+}
diff --git a/src/api/resources/listen/resources/v1/types/ListenV1UtteranceEnd.ts b/src/api/resources/listen/resources/v1/types/ListenV1UtteranceEnd.ts
new file mode 100644
index 00000000..260ad7e3
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/types/ListenV1UtteranceEnd.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV1UtteranceEnd {
+ /** Message type identifier */
+ type: "UtteranceEnd";
+ /** The channel */
+ channel: number[];
+ /** The last word end */
+ last_word_end: number;
+}
diff --git a/src/api/resources/listen/resources/v1/types/index.ts b/src/api/resources/listen/resources/v1/types/index.ts
new file mode 100644
index 00000000..3d556069
--- /dev/null
+++ b/src/api/resources/listen/resources/v1/types/index.ts
@@ -0,0 +1,7 @@
+export * from "./ListenV1CloseStream.js";
+export * from "./ListenV1Finalize.js";
+export * from "./ListenV1KeepAlive.js";
+export * from "./ListenV1Metadata.js";
+export * from "./ListenV1Results.js";
+export * from "./ListenV1SpeechStarted.js";
+export * from "./ListenV1UtteranceEnd.js";
diff --git a/src/api/resources/listen/resources/v2/client/Client.ts b/src/api/resources/listen/resources/v2/client/Client.ts
new file mode 100644
index 00000000..8da2498a
--- /dev/null
+++ b/src/api/resources/listen/resources/v2/client/Client.ts
@@ -0,0 +1,117 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers.js";
+import * as core from "../../../../../../core/index.js";
+import * as environments from "../../../../../../environments.js";
+import { V2Socket } from "./Socket.js";
+
+export declare namespace V2Client {
+ export interface Options extends BaseClientOptions {}
+
+ export interface ConnectArgs {
+ model: string;
+ encoding?: string | undefined;
+ sample_rate?: string | undefined;
+ eager_eot_threshold?: string | undefined;
+ eot_threshold?: string | undefined;
+ eot_timeout_ms?: string | undefined;
+ keyterm?: string | undefined;
+ mip_opt_out?: string | undefined;
+ tag?: string | undefined;
+ Authorization: string;
+ /** Arbitrary headers to send with the websocket connect request. */
+ headers?: Record;
+ /** Enable debug mode on the websocket. Defaults to false. */
+ debug?: boolean;
+ /** Number of reconnect attempts. Defaults to 30. */
+ reconnectAttempts?: number;
+ }
+}
+
+export class V2Client {
+ protected readonly _options: V2Client.Options;
+
+ constructor(options: V2Client.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public async connect(args: V2Client.ConnectArgs): Promise {
+ const {
+ model,
+ encoding,
+ sample_rate,
+ eager_eot_threshold,
+ eot_threshold,
+ eot_timeout_ms,
+ keyterm,
+ mip_opt_out,
+ tag,
+ headers,
+ debug,
+ reconnectAttempts,
+ } = args;
+ const _queryParams: Record = {};
+ _queryParams.model = model;
+ if (encoding != null) {
+ _queryParams.encoding = encoding;
+ }
+
+ if (sample_rate != null) {
+ _queryParams.sample_rate = sample_rate;
+ }
+
+ if (eager_eot_threshold != null) {
+ _queryParams.eager_eot_threshold = eager_eot_threshold;
+ }
+
+ if (eot_threshold != null) {
+ _queryParams.eot_threshold = eot_threshold;
+ }
+
+ if (eot_timeout_ms != null) {
+ _queryParams.eot_timeout_ms = eot_timeout_ms;
+ }
+
+ if (keyterm != null) {
+ _queryParams.keyterm = keyterm;
+ }
+
+ if (mip_opt_out != null) {
+ _queryParams.mip_opt_out = mip_opt_out;
+ }
+
+ if (tag != null) {
+ _queryParams.tag = tag;
+ }
+
+ const _headers: Record = mergeHeaders(
+ mergeOnlyDefinedHeaders({
+ ...(await this._getCustomAuthorizationHeaders()),
+ Authorization: args.Authorization,
+ }),
+ headers,
+ );
+ const socket = new core.ReconnectingWebSocket({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).production,
+ "/v2/listen",
+ ),
+ protocols: [],
+ queryParameters: _queryParams,
+ headers: _headers,
+ options: { debug: debug ?? false, maxRetries: reconnectAttempts ?? 30 },
+ });
+ return new V2Socket({ socket });
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/listen/resources/v2/client/Socket.ts b/src/api/resources/listen/resources/v2/client/Socket.ts
new file mode 100644
index 00000000..2ea674db
--- /dev/null
+++ b/src/api/resources/listen/resources/v2/client/Socket.ts
@@ -0,0 +1,142 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import * as core from "../../../../../../core/index.js";
+import { fromJson, toJson } from "../../../../../../core/json.js";
+import type * as Deepgram from "../../../../../index.js";
+
+export declare namespace V2Socket {
+ export interface Args {
+ socket: core.ReconnectingWebSocket;
+ }
+
+ export type Response =
+ | Deepgram.listen.ListenV2Connected
+ | Deepgram.listen.ListenV2TurnInfo
+ | Deepgram.listen.ListenV2FatalError;
+ type EventHandlers = {
+ open?: () => void;
+ message?: (message: Response) => void;
+ close?: (event: core.CloseEvent) => void;
+ error?: (error: Error) => void;
+ };
+}
+
+export class V2Socket {
+ public readonly socket: core.ReconnectingWebSocket;
+ protected readonly eventHandlers: V2Socket.EventHandlers = {};
+ private handleOpen: () => void = () => {
+ this.eventHandlers.open?.();
+ };
+ private handleMessage: (event: { data: string }) => void = (event) => {
+ const data = fromJson(event.data);
+
+ this.eventHandlers.message?.(data as V2Socket.Response);
+ };
+ private handleClose: (event: core.CloseEvent) => void = (event) => {
+ this.eventHandlers.close?.(event);
+ };
+ private handleError: (event: core.ErrorEvent) => void = (event) => {
+ const message = event.message;
+ this.eventHandlers.error?.(new Error(message));
+ };
+
+ constructor(args: V2Socket.Args) {
+ this.socket = args.socket;
+ this.socket.addEventListener("open", this.handleOpen);
+ this.socket.addEventListener("message", this.handleMessage);
+ this.socket.addEventListener("close", this.handleClose);
+ this.socket.addEventListener("error", this.handleError);
+ }
+
+ /** The current state of the connection; this is one of the readyState constants. */
+ get readyState(): number {
+ return this.socket.readyState;
+ }
+
+ /**
+ * @param event - The event to attach to.
+ * @param callback - The callback to run when the event is triggered.
+ * Usage:
+ * ```typescript
+ * this.on('open', () => {
+ * console.log('The websocket is open');
+ * });
+ * ```
+ */
+ public on(event: T, callback: V2Socket.EventHandlers[T]): void {
+ this.eventHandlers[event] = callback;
+ }
+
+ public sendListenV2Media(message: string): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendListenV2CloseStream(message: Deepgram.listen.ListenV2CloseStream): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ /** Connect to the websocket and register event handlers. */
+ public connect(): V2Socket {
+ this.socket.reconnect();
+
+ this.socket.addEventListener("open", this.handleOpen);
+ this.socket.addEventListener("message", this.handleMessage);
+ this.socket.addEventListener("close", this.handleClose);
+ this.socket.addEventListener("error", this.handleError);
+
+ return this;
+ }
+
+ /** Close the websocket and unregister event handlers. */
+ public close(): void {
+ this.socket.close();
+
+ this.handleClose({ code: 1000 } as CloseEvent);
+
+ this.socket.removeEventListener("open", this.handleOpen);
+ this.socket.removeEventListener("message", this.handleMessage);
+ this.socket.removeEventListener("close", this.handleClose);
+ this.socket.removeEventListener("error", this.handleError);
+ }
+
+ /** Returns a promise that resolves when the websocket is open. */
+ public async waitForOpen(): Promise {
+ if (this.socket.readyState === core.ReconnectingWebSocket.OPEN) {
+ return this.socket;
+ }
+
+ return new Promise((resolve, reject) => {
+ this.socket.addEventListener("open", () => {
+ resolve(this.socket);
+ });
+
+ this.socket.addEventListener("error", (event: unknown) => {
+ reject(event);
+ });
+ });
+ }
+
+ /** Asserts that the websocket is open. */
+ private assertSocketIsOpen(): void {
+ if (!this.socket) {
+ throw new Error("Socket is not connected.");
+ }
+
+ if (this.socket.readyState !== core.ReconnectingWebSocket.OPEN) {
+ throw new Error("Socket is not open.");
+ }
+ }
+
+ /** Send a binary payload to the websocket. */
+ protected sendBinary(payload: ArrayBufferLike | Blob | ArrayBufferView): void {
+ this.socket.send(payload);
+ }
+
+ /** Send a JSON payload to the websocket. */
+ protected sendJson(payload: string | Deepgram.listen.ListenV2CloseStream): void {
+ const jsonPayload = toJson(payload);
+ this.socket.send(jsonPayload);
+ }
+}
diff --git a/src/api/resources/listen/resources/v2/client/index.ts b/src/api/resources/listen/resources/v2/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/listen/resources/v2/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/listen/resources/v2/index.ts b/src/api/resources/listen/resources/v2/index.ts
new file mode 100644
index 00000000..d9adb1af
--- /dev/null
+++ b/src/api/resources/listen/resources/v2/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/listen/resources/v2/types/ListenV2CloseStream.ts b/src/api/resources/listen/resources/v2/types/ListenV2CloseStream.ts
new file mode 100644
index 00000000..164c96a2
--- /dev/null
+++ b/src/api/resources/listen/resources/v2/types/ListenV2CloseStream.ts
@@ -0,0 +1,16 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV2CloseStream {
+ /** Message type identifier */
+ type: ListenV2CloseStream.Type;
+}
+
+export namespace ListenV2CloseStream {
+ /** Message type identifier */
+ export const Type = {
+ Finalize: "Finalize",
+ CloseStream: "CloseStream",
+ KeepAlive: "KeepAlive",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+}
diff --git a/src/api/resources/listen/resources/v2/types/ListenV2Connected.ts b/src/api/resources/listen/resources/v2/types/ListenV2Connected.ts
new file mode 100644
index 00000000..48edf01f
--- /dev/null
+++ b/src/api/resources/listen/resources/v2/types/ListenV2Connected.ts
@@ -0,0 +1,14 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV2Connected {
+ /** Message type identifier */
+ type: "Connected";
+ /** The unique identifier of the request */
+ request_id: string;
+ /**
+ * Starts at `0` and increments for each message the server sends
+ * to the client. This includes messages of other types, like
+ * `TurnInfo` messages.
+ */
+ sequence_id: number;
+}
diff --git a/src/api/resources/listen/resources/v2/types/ListenV2FatalError.ts b/src/api/resources/listen/resources/v2/types/ListenV2FatalError.ts
new file mode 100644
index 00000000..4782b6d9
--- /dev/null
+++ b/src/api/resources/listen/resources/v2/types/ListenV2FatalError.ts
@@ -0,0 +1,16 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV2FatalError {
+ /** Message type identifier */
+ type: "Error";
+ /**
+ * Starts at `0` and increments for each message the server sends
+ * to the client. This includes messages of other types, like
+ * `Connected` messages.
+ */
+ sequence_id: number;
+ /** A string code describing the error, e.g. `INTERNAL_SERVER_ERROR` */
+ code: string;
+ /** Prose description of the error */
+ description: string;
+}
diff --git a/src/api/resources/listen/resources/v2/types/ListenV2TurnInfo.ts b/src/api/resources/listen/resources/v2/types/ListenV2TurnInfo.ts
new file mode 100644
index 00000000..abdcd869
--- /dev/null
+++ b/src/api/resources/listen/resources/v2/types/ListenV2TurnInfo.ts
@@ -0,0 +1,64 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Describes the current turn and latest state of the turn
+ */
+export interface ListenV2TurnInfo {
+ type: "TurnInfo";
+ /** The unique identifier of the request */
+ request_id: string;
+ /** Starts at `0` and increments for each message the server sends to the client. This includes messages of other types, like `Connected` messages. */
+ sequence_id: number;
+ /**
+ * The type of event being reported.
+ *
+ * - **Update** - Additional audio has been transcribed, but the turn state hasn't changed
+ * - **StartOfTurn** - The user has begun speaking for the first time in the turn
+ * - **EagerEndOfTurn** - The system has moderate confidence that the user has finished speaking for the turn. This is an opportunity to begin preparing an agent reply
+ * - **TurnResumed** - The system detected that speech had ended and therefore sent an **EagerEndOfTurn** event, but speech is actually continuing for this turn
+ * - **EndOfTurn** - The user has finished speaking for the turn
+ */
+ event: ListenV2TurnInfo.Event;
+ /** The index of the current turn */
+ turn_index: number;
+ /** Start time in seconds of the audio range that was transcribed */
+ audio_window_start: number;
+ /** End time in seconds of the audio range that was transcribed */
+ audio_window_end: number;
+ /** Text that was said over the course of the current turn */
+ transcript: string;
+ /** The words in the `transcript` */
+ words: ListenV2TurnInfo.Words.Item[];
+ /** Confidence that no more speech is coming in this turn */
+ end_of_turn_confidence: number;
+}
+
+export namespace ListenV2TurnInfo {
+ /**
+ * The type of event being reported.
+ *
+ * - **Update** - Additional audio has been transcribed, but the turn state hasn't changed
+ * - **StartOfTurn** - The user has begun speaking for the first time in the turn
+ * - **EagerEndOfTurn** - The system has moderate confidence that the user has finished speaking for the turn. This is an opportunity to begin preparing an agent reply
+ * - **TurnResumed** - The system detected that speech had ended and therefore sent an **EagerEndOfTurn** event, but speech is actually continuing for this turn
+ * - **EndOfTurn** - The user has finished speaking for the turn
+ */
+ export const Event = {
+ Update: "Update",
+ StartOfTurn: "StartOfTurn",
+ EagerEndOfTurn: "EagerEndOfTurn",
+ TurnResumed: "TurnResumed",
+ EndOfTurn: "EndOfTurn",
+ } as const;
+ export type Event = (typeof Event)[keyof typeof Event];
+ export type Words = Words.Item[];
+
+ export namespace Words {
+ export interface Item {
+ /** The individual punctuated, properly-cased word from the transcript */
+ word: string;
+ /** Confidence that this word was transcribed correctly */
+ confidence: number;
+ }
+ }
+}
diff --git a/src/api/resources/listen/resources/v2/types/index.ts b/src/api/resources/listen/resources/v2/types/index.ts
new file mode 100644
index 00000000..c7c89438
--- /dev/null
+++ b/src/api/resources/listen/resources/v2/types/index.ts
@@ -0,0 +1,4 @@
+export * from "./ListenV2CloseStream.js";
+export * from "./ListenV2Connected.js";
+export * from "./ListenV2FatalError.js";
+export * from "./ListenV2TurnInfo.js";
diff --git a/src/api/resources/manage/client/Client.ts b/src/api/resources/manage/client/Client.ts
new file mode 100644
index 00000000..8664908c
--- /dev/null
+++ b/src/api/resources/manage/client/Client.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../BaseClient.js";
+import { V1Client } from "../resources/v1/client/Client.js";
+
+export declare namespace ManageClient {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class ManageClient {
+ protected readonly _options: ManageClient.Options;
+ protected _v1: V1Client | undefined;
+
+ constructor(options: ManageClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get v1(): V1Client {
+ return (this._v1 ??= new V1Client(this._options));
+ }
+}
diff --git a/src/api/resources/manage/client/index.ts b/src/api/resources/manage/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/manage/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/manage/index.ts b/src/api/resources/manage/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/manage/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/manage/resources/index.ts b/src/api/resources/manage/resources/index.ts
new file mode 100644
index 00000000..c6b56d24
--- /dev/null
+++ b/src/api/resources/manage/resources/index.ts
@@ -0,0 +1 @@
+export * as v1 from "./v1/index.js";
diff --git a/src/api/resources/manage/resources/v1/client/Client.ts b/src/api/resources/manage/resources/v1/client/Client.ts
new file mode 100644
index 00000000..83cbd545
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/client/Client.ts
@@ -0,0 +1,28 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../BaseClient.js";
+import { ModelsClient } from "../resources/models/client/Client.js";
+import { ProjectsClient } from "../resources/projects/client/Client.js";
+
+export declare namespace V1Client {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class V1Client {
+ protected readonly _options: V1Client.Options;
+ protected _models: ModelsClient | undefined;
+ protected _projects: ProjectsClient | undefined;
+
+ constructor(options: V1Client.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get models(): ModelsClient {
+ return (this._models ??= new ModelsClient(this._options));
+ }
+
+ public get projects(): ProjectsClient {
+ return (this._projects ??= new ProjectsClient(this._options));
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/client/index.ts b/src/api/resources/manage/resources/v1/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/manage/resources/v1/index.ts b/src/api/resources/manage/resources/v1/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/index.ts b/src/api/resources/manage/resources/v1/resources/index.ts
new file mode 100644
index 00000000..bde8d7a0
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/index.ts
@@ -0,0 +1,4 @@
+export * from "./models/client/requests/index.js";
+export * as models from "./models/index.js";
+export * from "./projects/client/requests/index.js";
+export * as projects from "./projects/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/models/client/Client.ts b/src/api/resources/manage/resources/v1/resources/models/client/Client.ts
new file mode 100644
index 00000000..684fbafd
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/models/client/Client.ts
@@ -0,0 +1,194 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../index.js";
+
+export declare namespace ModelsClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class ModelsClient {
+ protected readonly _options: ModelsClient.Options;
+
+ constructor(options: ModelsClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Returns metadata on all the latest public models. To retrieve custom models, use Get Project Models.
+ *
+ * @param {Deepgram.manage.v1.ModelsListRequest} request
+ * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.models.list({
+ * include_outdated: true
+ * })
+ */
+ public list(
+ request: Deepgram.manage.v1.ModelsListRequest = {},
+ requestOptions?: ModelsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(request, requestOptions));
+ }
+
+ private async __list(
+ request: Deepgram.manage.v1.ModelsListRequest = {},
+ requestOptions?: ModelsClient.RequestOptions,
+ ): Promise> {
+ const { include_outdated: includeOutdated } = request;
+ const _queryParams: Record = {};
+ if (includeOutdated != null) {
+ _queryParams.include_outdated = includeOutdated.toString();
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ "v1/models",
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.ListModelsV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError("Timeout exceeded when calling GET /v1/models.");
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Returns metadata for a specific public model
+ *
+ * @param {string} model_id - The specific UUID of the model
+ * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.models.get("af6e9977-99f6-4d8f-b6f5-dfdf6fb6e291")
+ */
+ public get(
+ model_id: string,
+ requestOptions?: ModelsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__get(model_id, requestOptions));
+ }
+
+ private async __get(
+ model_id: string,
+ requestOptions?: ModelsClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/models/${core.url.encodePathParam(model_id)}`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.GetModelV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError("Timeout exceeded when calling GET /v1/models/{model_id}.");
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/models/client/index.ts b/src/api/resources/manage/resources/v1/resources/models/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/models/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/models/client/requests/ModelsListRequest.ts b/src/api/resources/manage/resources/v1/resources/models/client/requests/ModelsListRequest.ts
new file mode 100644
index 00000000..b2183044
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/models/client/requests/ModelsListRequest.ts
@@ -0,0 +1,12 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * @example
+ * {
+ * include_outdated: true
+ * }
+ */
+export interface ModelsListRequest {
+ /** returns non-latest versions of models */
+ include_outdated?: boolean;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/models/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/models/client/requests/index.ts
new file mode 100644
index 00000000..7197c55a
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/models/client/requests/index.ts
@@ -0,0 +1 @@
+export type { ModelsListRequest } from "./ModelsListRequest.js";
diff --git a/src/api/resources/manage/resources/v1/resources/models/index.ts b/src/api/resources/manage/resources/v1/resources/models/index.ts
new file mode 100644
index 00000000..914b8c3c
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/models/index.ts
@@ -0,0 +1 @@
+export * from "./client/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/client/Client.ts
new file mode 100644
index 00000000..f8ea4aa7
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/client/Client.ts
@@ -0,0 +1,482 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../index.js";
+import { BillingClient } from "../resources/billing/client/Client.js";
+import { KeysClient } from "../resources/keys/client/Client.js";
+import { MembersClient } from "../resources/members/client/Client.js";
+import { ModelsClient } from "../resources/models/client/Client.js";
+import { RequestsClient } from "../resources/requests/client/Client.js";
+import { UsageClient } from "../resources/usage/client/Client.js";
+
+export declare namespace ProjectsClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class ProjectsClient {
+ protected readonly _options: ProjectsClient.Options;
+ protected _keys: KeysClient | undefined;
+ protected _members: MembersClient | undefined;
+ protected _models: ModelsClient | undefined;
+ protected _requests: RequestsClient | undefined;
+ protected _usage: UsageClient | undefined;
+ protected _billing: BillingClient | undefined;
+
+ constructor(options: ProjectsClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get keys(): KeysClient {
+ return (this._keys ??= new KeysClient(this._options));
+ }
+
+ public get members(): MembersClient {
+ return (this._members ??= new MembersClient(this._options));
+ }
+
+ public get models(): ModelsClient {
+ return (this._models ??= new ModelsClient(this._options));
+ }
+
+ public get requests(): RequestsClient {
+ return (this._requests ??= new RequestsClient(this._options));
+ }
+
+ public get usage(): UsageClient {
+ return (this._usage ??= new UsageClient(this._options));
+ }
+
+ public get billing(): BillingClient {
+ return (this._billing ??= new BillingClient(this._options));
+ }
+
+ /**
+ * Retrieves basic information about the projects associated with the API key
+ *
+ * @param {ProjectsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.list()
+ */
+ public list(
+ requestOptions?: ProjectsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(requestOptions));
+ }
+
+ private async __list(
+ requestOptions?: ProjectsClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ "v1/projects",
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.ListProjectsV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError("Timeout exceeded when calling GET /v1/projects.");
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Retrieves information about the specified project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.ProjectsGetRequest} request
+ * @param {ProjectsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.get("123456-7890-1234-5678-901234", {
+ * limit: 1.1,
+ * page: 1.1
+ * })
+ */
+ public get(
+ project_id: string,
+ request: Deepgram.manage.v1.ProjectsGetRequest = {},
+ requestOptions?: ProjectsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__get(project_id, request, requestOptions));
+ }
+
+ private async __get(
+ project_id: string,
+ request: Deepgram.manage.v1.ProjectsGetRequest = {},
+ requestOptions?: ProjectsClient.RequestOptions,
+ ): Promise> {
+ const { limit, page } = request;
+ const _queryParams: Record = {};
+ if (limit != null) {
+ _queryParams.limit = limit.toString();
+ }
+
+ if (page != null) {
+ _queryParams.page = page.toString();
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.GetProjectV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError("Timeout exceeded when calling GET /v1/projects/{project_id}.");
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Deletes the specified project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {ProjectsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.delete("123456-7890-1234-5678-901234")
+ */
+ public delete(
+ project_id: string,
+ requestOptions?: ProjectsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__delete(project_id, requestOptions));
+ }
+
+ private async __delete(
+ project_id: string,
+ requestOptions?: ProjectsClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}`,
+ ),
+ method: "DELETE",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.DeleteProjectV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling DELETE /v1/projects/{project_id}.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Updates the name or other properties of an existing project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.UpdateProjectV1Request} request
+ * @param {ProjectsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.update("123456-7890-1234-5678-901234")
+ */
+ public update(
+ project_id: string,
+ request: Deepgram.manage.v1.UpdateProjectV1Request = {},
+ requestOptions?: ProjectsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__update(project_id, request, requestOptions));
+ }
+
+ private async __update(
+ project_id: string,
+ request: Deepgram.manage.v1.UpdateProjectV1Request = {},
+ requestOptions?: ProjectsClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}`,
+ ),
+ method: "PATCH",
+ headers: _headers,
+ contentType: "application/json",
+ queryParameters: requestOptions?.queryParams,
+ requestType: "json",
+ body: request,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.UpdateProjectV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError("Timeout exceeded when calling PATCH /v1/projects/{project_id}.");
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Removes the authenticated account from the specific project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {ProjectsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.leave("123456-7890-1234-5678-901234")
+ */
+ public leave(
+ project_id: string,
+ requestOptions?: ProjectsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__leave(project_id, requestOptions));
+ }
+
+ private async __leave(
+ project_id: string,
+ requestOptions?: ProjectsClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/leave`,
+ ),
+ method: "DELETE",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.LeaveProjectV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling DELETE /v1/projects/{project_id}/leave.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/client/requests/ProjectsGetRequest.ts b/src/api/resources/manage/resources/v1/resources/projects/client/requests/ProjectsGetRequest.ts
new file mode 100644
index 00000000..e23b4151
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/client/requests/ProjectsGetRequest.ts
@@ -0,0 +1,15 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * @example
+ * {
+ * limit: 1.1,
+ * page: 1.1
+ * }
+ */
+export interface ProjectsGetRequest {
+ /** Number of results to return per page. Default 10. Range [1,1000] */
+ limit?: number;
+ /** Navigate and return the results to retrieve specific portions of information of the response */
+ page?: number;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/client/requests/UpdateProjectV1Request.ts b/src/api/resources/manage/resources/v1/resources/projects/client/requests/UpdateProjectV1Request.ts
new file mode 100644
index 00000000..27fa8c69
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/client/requests/UpdateProjectV1Request.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * @example
+ * {}
+ */
+export interface UpdateProjectV1Request {
+ /** The name of the project */
+ name?: string;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/client/requests/index.ts
new file mode 100644
index 00000000..901e9d30
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/client/requests/index.ts
@@ -0,0 +1,2 @@
+export type { ProjectsGetRequest } from "./ProjectsGetRequest.js";
+export type { UpdateProjectV1Request } from "./UpdateProjectV1Request.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/index.ts b/src/api/resources/manage/resources/v1/resources/projects/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/client/Client.ts
new file mode 100644
index 00000000..468cecba
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/client/Client.ts
@@ -0,0 +1,40 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../BaseClient.js";
+import { BalancesClient } from "../resources/balances/client/Client.js";
+import { BreakdownClient } from "../resources/breakdown/client/Client.js";
+import { FieldsClient } from "../resources/fields/client/Client.js";
+import { PurchasesClient } from "../resources/purchases/client/Client.js";
+
+export declare namespace BillingClient {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class BillingClient {
+ protected readonly _options: BillingClient.Options;
+ protected _balances: BalancesClient | undefined;
+ protected _breakdown: BreakdownClient | undefined;
+ protected _fields: FieldsClient | undefined;
+ protected _purchases: PurchasesClient | undefined;
+
+ constructor(options: BillingClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get balances(): BalancesClient {
+ return (this._balances ??= new BalancesClient(this._options));
+ }
+
+ public get breakdown(): BreakdownClient {
+ return (this._breakdown ??= new BreakdownClient(this._options));
+ }
+
+ public get fields(): FieldsClient {
+ return (this._fields ??= new FieldsClient(this._options));
+ }
+
+ public get purchases(): PurchasesClient {
+ return (this._purchases ??= new PurchasesClient(this._options));
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/client/Client.ts
new file mode 100644
index 00000000..a157fe18
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/client/Client.ts
@@ -0,0 +1,196 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../../../index.js";
+
+export declare namespace BalancesClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class BalancesClient {
+ protected readonly _options: BalancesClient.Options;
+
+ constructor(options: BalancesClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Generates a list of outstanding balances for the specified project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {BalancesClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.billing.balances.list("123456-7890-1234-5678-901234")
+ */
+ public list(
+ project_id: string,
+ requestOptions?: BalancesClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ requestOptions?: BalancesClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/balances`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.ListProjectBalancesV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/balances.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Retrieves details about the specified balance
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {string} balance_id - The unique identifier of the balance
+ * @param {BalancesClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.billing.balances.get("123456-7890-1234-5678-901234", "123456-7890-1234-5678-901234")
+ */
+ public get(
+ project_id: string,
+ balance_id: string,
+ requestOptions?: BalancesClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__get(project_id, balance_id, requestOptions));
+ }
+
+ private async __get(
+ project_id: string,
+ balance_id: string,
+ requestOptions?: BalancesClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/balances/${core.url.encodePathParam(balance_id)}`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.GetProjectBalanceV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/balances/{balance_id}.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/index.ts
new file mode 100644
index 00000000..914b8c3c
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/balances/index.ts
@@ -0,0 +1 @@
+export * from "./client/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/Client.ts
new file mode 100644
index 00000000..8e45b970
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/Client.ts
@@ -0,0 +1,153 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../../../index.js";
+
+export declare namespace BreakdownClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class BreakdownClient {
+ protected readonly _options: BreakdownClient.Options;
+
+ constructor(options: BreakdownClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Retrieves the billing summary for a specific project, with various filter options or by grouping options.
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.projects.billing.BreakdownListRequest} request
+ * @param {BreakdownClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.billing.breakdown.list("123456-7890-1234-5678-901234", {
+ * start: "start",
+ * end: "end",
+ * accessor: "12345678-1234-1234-1234-123456789012",
+ * deployment: "hosted",
+ * tag: "tag1",
+ * line_item: "streaming::nova-3"
+ * })
+ */
+ public list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.billing.BreakdownListRequest = {},
+ requestOptions?: BreakdownClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, request, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.billing.BreakdownListRequest = {},
+ requestOptions?: BreakdownClient.RequestOptions,
+ ): Promise> {
+ const { start, end, accessor, deployment, tag, line_item: lineItem, grouping } = request;
+ const _queryParams: Record = {};
+ if (start != null) {
+ _queryParams.start = start;
+ }
+
+ if (end != null) {
+ _queryParams.end = end;
+ }
+
+ if (accessor != null) {
+ _queryParams.accessor = accessor;
+ }
+
+ if (deployment != null) {
+ _queryParams.deployment = deployment;
+ }
+
+ if (tag != null) {
+ _queryParams.tag = tag;
+ }
+
+ if (lineItem != null) {
+ _queryParams.line_item = lineItem;
+ }
+
+ if (grouping != null) {
+ if (Array.isArray(grouping)) {
+ _queryParams.grouping = grouping.map((item) => item);
+ } else {
+ _queryParams.grouping = grouping;
+ }
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/billing/breakdown`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.BillingBreakdownV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/billing/breakdown.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/requests/BreakdownListRequest.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/requests/BreakdownListRequest.ts
new file mode 100644
index 00000000..45daed42
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/requests/BreakdownListRequest.ts
@@ -0,0 +1,33 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../../../../../../../../index.js";
+
+/**
+ * @example
+ * {
+ * start: "start",
+ * end: "end",
+ * accessor: "12345678-1234-1234-1234-123456789012",
+ * deployment: "hosted",
+ * tag: "tag1",
+ * line_item: "streaming::nova-3"
+ * }
+ */
+export interface BreakdownListRequest {
+ /** Start date of the requested date range. Format accepted is YYYY-MM-DD */
+ start?: string;
+ /** End date of the requested date range. Format accepted is YYYY-MM-DD */
+ end?: string;
+ /** Filter for requests where a specific accessor was used */
+ accessor?: string;
+ /** Filter for requests where a specific deployment was used */
+ deployment?: Deepgram.manage.v1.projects.billing.BreakdownListRequestDeployment;
+ /** Filter for requests where a specific tag was used */
+ tag?: string;
+ /** Filter requests by line item (e.g. streaming::nova-3) */
+ line_item?: string;
+ /** Group billing breakdown by one or more dimensions (accessor, deployment, line_item, tags) */
+ grouping?:
+ | Deepgram.manage.v1.projects.billing.BreakdownListRequestGroupingItem
+ | Deepgram.manage.v1.projects.billing.BreakdownListRequestGroupingItem[];
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/requests/index.ts
new file mode 100644
index 00000000..68887545
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/client/requests/index.ts
@@ -0,0 +1 @@
+export type { BreakdownListRequest } from "./BreakdownListRequest.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/index.ts
new file mode 100644
index 00000000..d9adb1af
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/types/BreakdownListRequestDeployment.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/types/BreakdownListRequestDeployment.ts
new file mode 100644
index 00000000..ebd7c775
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/types/BreakdownListRequestDeployment.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Deployment type for the requests */
+export const BreakdownListRequestDeployment = {
+ Hosted: "hosted",
+ Beta: "beta",
+ SelfHosted: "self-hosted",
+} as const;
+export type BreakdownListRequestDeployment =
+ (typeof BreakdownListRequestDeployment)[keyof typeof BreakdownListRequestDeployment];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/types/BreakdownListRequestGroupingItem.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/types/BreakdownListRequestGroupingItem.ts
new file mode 100644
index 00000000..63cacb46
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/types/BreakdownListRequestGroupingItem.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const BreakdownListRequestGroupingItem = {
+ Accessor: "accessor",
+ Deployment: "deployment",
+ LineItem: "line_item",
+ Tags: "tags",
+} as const;
+export type BreakdownListRequestGroupingItem =
+ (typeof BreakdownListRequestGroupingItem)[keyof typeof BreakdownListRequestGroupingItem];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/types/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/types/index.ts
new file mode 100644
index 00000000..da00a52b
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/breakdown/types/index.ts
@@ -0,0 +1,2 @@
+export * from "./BreakdownListRequestDeployment.js";
+export * from "./BreakdownListRequestGroupingItem.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/Client.ts
new file mode 100644
index 00000000..3299150b
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/Client.ts
@@ -0,0 +1,125 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../../../index.js";
+
+export declare namespace FieldsClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class FieldsClient {
+ protected readonly _options: FieldsClient.Options;
+
+ constructor(options: FieldsClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Lists the accessors, deployment types, tags, and line items used for billing data in the specified time period. Use this endpoint if you want to filter your results from the Billing Breakdown endpoint and want to know what filters are available.
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.projects.billing.FieldsListRequest} request
+ * @param {FieldsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.billing.fields.list("123456-7890-1234-5678-901234", {
+ * start: "start",
+ * end: "end"
+ * })
+ */
+ public list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.billing.FieldsListRequest = {},
+ requestOptions?: FieldsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, request, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.billing.FieldsListRequest = {},
+ requestOptions?: FieldsClient.RequestOptions,
+ ): Promise> {
+ const { start, end } = request;
+ const _queryParams: Record = {};
+ if (start != null) {
+ _queryParams.start = start;
+ }
+
+ if (end != null) {
+ _queryParams.end = end;
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/billing/fields`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.ListBillingFieldsV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/billing/fields.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/requests/FieldsListRequest.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/requests/FieldsListRequest.ts
new file mode 100644
index 00000000..d72af8d9
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/requests/FieldsListRequest.ts
@@ -0,0 +1,15 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * @example
+ * {
+ * start: "start",
+ * end: "end"
+ * }
+ */
+export interface FieldsListRequest {
+ /** Start date of the requested date range. Format accepted is YYYY-MM-DD */
+ start?: string;
+ /** End date of the requested date range. Format accepted is YYYY-MM-DD */
+ end?: string;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/requests/index.ts
new file mode 100644
index 00000000..35ea45ea
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/client/requests/index.ts
@@ -0,0 +1 @@
+export type { FieldsListRequest } from "./FieldsListRequest.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/index.ts
new file mode 100644
index 00000000..914b8c3c
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/fields/index.ts
@@ -0,0 +1 @@
+export * from "./client/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/index.ts
new file mode 100644
index 00000000..7bbb6f0b
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/index.ts
@@ -0,0 +1,8 @@
+export * as balances from "./balances/index.js";
+export * from "./breakdown/client/requests/index.js";
+export * as breakdown from "./breakdown/index.js";
+export * from "./breakdown/types/index.js";
+export * from "./fields/client/requests/index.js";
+export * as fields from "./fields/index.js";
+export * from "./purchases/client/requests/index.js";
+export * as purchases from "./purchases/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/Client.ts
new file mode 100644
index 00000000..681db19d
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/Client.ts
@@ -0,0 +1,123 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../../../index.js";
+
+export declare namespace PurchasesClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class PurchasesClient {
+ protected readonly _options: PurchasesClient.Options;
+
+ constructor(options: PurchasesClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Returns the original purchased amount on an order transaction
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.projects.billing.PurchasesListRequest} request
+ * @param {PurchasesClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.billing.purchases.list("123456-7890-1234-5678-901234", {
+ * limit: 1.1
+ * })
+ */
+ public list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.billing.PurchasesListRequest = {},
+ requestOptions?: PurchasesClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, request, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.billing.PurchasesListRequest = {},
+ requestOptions?: PurchasesClient.RequestOptions,
+ ): Promise> {
+ const { limit } = request;
+ const _queryParams: Record = {};
+ if (limit != null) {
+ _queryParams.limit = limit.toString();
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/purchases`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.ListProjectPurchasesV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/purchases.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/requests/PurchasesListRequest.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/requests/PurchasesListRequest.ts
new file mode 100644
index 00000000..cdcb6f5c
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/requests/PurchasesListRequest.ts
@@ -0,0 +1,12 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * @example
+ * {
+ * limit: 1.1
+ * }
+ */
+export interface PurchasesListRequest {
+ /** Number of results to return per page. Default 10. Range [1,1000] */
+ limit?: number;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/requests/index.ts
new file mode 100644
index 00000000..df5a759a
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/client/requests/index.ts
@@ -0,0 +1 @@
+export type { PurchasesListRequest } from "./PurchasesListRequest.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/index.ts
new file mode 100644
index 00000000..914b8c3c
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/billing/resources/purchases/index.ts
@@ -0,0 +1 @@
+export * from "./client/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/index.ts
new file mode 100644
index 00000000..e8368d6c
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/index.ts
@@ -0,0 +1,13 @@
+export * as billing from "./billing/index.js";
+export * from "./keys/client/requests/index.js";
+export * as keys from "./keys/index.js";
+export * from "./keys/types/index.js";
+export * as members from "./members/index.js";
+export * from "./models/client/requests/index.js";
+export * as models from "./models/index.js";
+export * from "./requests/client/requests/index.js";
+export * as requests from "./requests/index.js";
+export * from "./requests/types/index.js";
+export * from "./usage/client/requests/index.js";
+export * as usage from "./usage/index.js";
+export * from "./usage/types/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/Client.ts
new file mode 100644
index 00000000..e05c1391
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/Client.ts
@@ -0,0 +1,377 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../index.js";
+
+export declare namespace KeysClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class KeysClient {
+ protected readonly _options: KeysClient.Options;
+
+ constructor(options: KeysClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Retrieves all API keys associated with the specified project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.projects.KeysListRequest} request
+ * @param {KeysClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.keys.list("123456-7890-1234-5678-901234", {
+ * status: "active"
+ * })
+ */
+ public list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.KeysListRequest = {},
+ requestOptions?: KeysClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, request, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.KeysListRequest = {},
+ requestOptions?: KeysClient.RequestOptions,
+ ): Promise> {
+ const { status } = request;
+ const _queryParams: Record = {};
+ if (status != null) {
+ _queryParams.status = status;
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/keys`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.ListProjectKeysV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/keys.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Creates a new API key with specified settings for the project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.CreateKeyV1RequestOne} request
+ * @param {KeysClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.keys.create("project_id", {
+ * "key": "value"
+ * })
+ */
+ public create(
+ project_id: string,
+ request?: Deepgram.CreateKeyV1RequestOne,
+ requestOptions?: KeysClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__create(project_id, request, requestOptions));
+ }
+
+ private async __create(
+ project_id: string,
+ request?: Deepgram.CreateKeyV1RequestOne,
+ requestOptions?: KeysClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/keys`,
+ ),
+ method: "POST",
+ headers: _headers,
+ contentType: "application/json",
+ queryParameters: requestOptions?.queryParams,
+ requestType: "json",
+ body: request,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.CreateKeyV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling POST /v1/projects/{project_id}/keys.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Retrieves information about a specified API key
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {string} key_id - The unique identifier of the API key
+ * @param {KeysClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.keys.get("123456-7890-1234-5678-901234", "123456789012345678901234")
+ */
+ public get(
+ project_id: string,
+ key_id: string,
+ requestOptions?: KeysClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__get(project_id, key_id, requestOptions));
+ }
+
+ private async __get(
+ project_id: string,
+ key_id: string,
+ requestOptions?: KeysClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/keys/${core.url.encodePathParam(key_id)}`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.GetProjectKeyV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/keys/{key_id}.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Deletes an API key for a specific project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {string} key_id - The unique identifier of the API key
+ * @param {KeysClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.keys.delete("123456-7890-1234-5678-901234", "123456789012345678901234")
+ */
+ public delete(
+ project_id: string,
+ key_id: string,
+ requestOptions?: KeysClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__delete(project_id, key_id, requestOptions));
+ }
+
+ private async __delete(
+ project_id: string,
+ key_id: string,
+ requestOptions?: KeysClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/keys/${core.url.encodePathParam(key_id)}`,
+ ),
+ method: "DELETE",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.DeleteProjectKeyV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling DELETE /v1/projects/{project_id}/keys/{key_id}.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/requests/KeysListRequest.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/requests/KeysListRequest.ts
new file mode 100644
index 00000000..97cc0a93
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/requests/KeysListRequest.ts
@@ -0,0 +1,14 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../../../../../../index.js";
+
+/**
+ * @example
+ * {
+ * status: "active"
+ * }
+ */
+export interface KeysListRequest {
+ /** Only return keys with a specific status */
+ status?: Deepgram.manage.v1.projects.KeysListRequestStatus;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/requests/index.ts
new file mode 100644
index 00000000..eed0c195
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/client/requests/index.ts
@@ -0,0 +1 @@
+export type { KeysListRequest } from "./KeysListRequest.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/keys/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/index.ts
new file mode 100644
index 00000000..d9adb1af
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/keys/types/KeysListRequestStatus.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/types/KeysListRequestStatus.ts
new file mode 100644
index 00000000..3104824d
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/types/KeysListRequestStatus.ts
@@ -0,0 +1,7 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const KeysListRequestStatus = {
+ Active: "active",
+ Expired: "expired",
+} as const;
+export type KeysListRequestStatus = (typeof KeysListRequestStatus)[keyof typeof KeysListRequestStatus];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/keys/types/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/types/index.ts
new file mode 100644
index 00000000..2d99304b
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/keys/types/index.ts
@@ -0,0 +1 @@
+export * from "./KeysListRequestStatus.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/client/Client.ts
new file mode 100644
index 00000000..2c4e2f6f
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/client/Client.ts
@@ -0,0 +1,211 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../index.js";
+import { InvitesClient } from "../resources/invites/client/Client.js";
+import { ScopesClient } from "../resources/scopes/client/Client.js";
+
+export declare namespace MembersClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class MembersClient {
+ protected readonly _options: MembersClient.Options;
+ protected _invites: InvitesClient | undefined;
+ protected _scopes: ScopesClient | undefined;
+
+ constructor(options: MembersClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get invites(): InvitesClient {
+ return (this._invites ??= new InvitesClient(this._options));
+ }
+
+ public get scopes(): ScopesClient {
+ return (this._scopes ??= new ScopesClient(this._options));
+ }
+
+ /**
+ * Retrieves a list of members for a given project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {MembersClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.members.list("123456-7890-1234-5678-901234")
+ */
+ public list(
+ project_id: string,
+ requestOptions?: MembersClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ requestOptions?: MembersClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/members`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.ListProjectMembersV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/members.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Removes a member from the project using their unique member ID
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {string} member_id - The unique identifier of the Member
+ * @param {MembersClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.members.delete("123456-7890-1234-5678-901234", "123456789012345678901234")
+ */
+ public delete(
+ project_id: string,
+ member_id: string,
+ requestOptions?: MembersClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__delete(project_id, member_id, requestOptions));
+ }
+
+ private async __delete(
+ project_id: string,
+ member_id: string,
+ requestOptions?: MembersClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/members/${core.url.encodePathParam(member_id)}`,
+ ),
+ method: "DELETE",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.DeleteProjectMemberV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling DELETE /v1/projects/{project_id}/members/{member_id}.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/index.ts
new file mode 100644
index 00000000..ec0d1d84
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/index.ts
@@ -0,0 +1,4 @@
+export * from "./invites/client/requests/index.js";
+export * as invites from "./invites/index.js";
+export * from "./scopes/client/requests/index.js";
+export * as scopes from "./scopes/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/Client.ts
new file mode 100644
index 00000000..e7d60284
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/Client.ts
@@ -0,0 +1,292 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../../../index.js";
+
+export declare namespace InvitesClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class InvitesClient {
+ protected readonly _options: InvitesClient.Options;
+
+ constructor(options: InvitesClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Generates a list of invites for a specific project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {InvitesClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.members.invites.list("123456-7890-1234-5678-901234")
+ */
+ public list(
+ project_id: string,
+ requestOptions?: InvitesClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ requestOptions?: InvitesClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/invites`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.ListProjectInvitesV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/invites.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Generates an invite for a specific project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.projects.members.CreateProjectInviteV1Request} request
+ * @param {InvitesClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.members.invites.create("123456-7890-1234-5678-901234", {
+ * email: "email",
+ * scope: "scope"
+ * })
+ */
+ public create(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.members.CreateProjectInviteV1Request,
+ requestOptions?: InvitesClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__create(project_id, request, requestOptions));
+ }
+
+ private async __create(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.members.CreateProjectInviteV1Request,
+ requestOptions?: InvitesClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/invites`,
+ ),
+ method: "POST",
+ headers: _headers,
+ contentType: "application/json",
+ queryParameters: requestOptions?.queryParams,
+ requestType: "json",
+ body: request,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.CreateProjectInviteV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling POST /v1/projects/{project_id}/invites.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Deletes an invite for a specific project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {string} email - The email address of the member
+ * @param {InvitesClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.members.invites.delete("123456-7890-1234-5678-901234", "john.doe@example.com")
+ */
+ public delete(
+ project_id: string,
+ email: string,
+ requestOptions?: InvitesClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__delete(project_id, email, requestOptions));
+ }
+
+ private async __delete(
+ project_id: string,
+ email: string,
+ requestOptions?: InvitesClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/invites/${core.url.encodePathParam(email)}`,
+ ),
+ method: "DELETE",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.DeleteProjectInviteV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling DELETE /v1/projects/{project_id}/invites/{email}.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/requests/CreateProjectInviteV1Request.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/requests/CreateProjectInviteV1Request.ts
new file mode 100644
index 00000000..6fe9bd0a
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/requests/CreateProjectInviteV1Request.ts
@@ -0,0 +1,15 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * @example
+ * {
+ * email: "email",
+ * scope: "scope"
+ * }
+ */
+export interface CreateProjectInviteV1Request {
+ /** The email address of the invitee */
+ email: string;
+ /** The scope of the invitee */
+ scope: string;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/requests/index.ts
new file mode 100644
index 00000000..49ad1b42
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/client/requests/index.ts
@@ -0,0 +1 @@
+export type { CreateProjectInviteV1Request } from "./CreateProjectInviteV1Request.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/index.ts
new file mode 100644
index 00000000..914b8c3c
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/invites/index.ts
@@ -0,0 +1 @@
+export * from "./client/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/Client.ts
new file mode 100644
index 00000000..923091ff
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/Client.ts
@@ -0,0 +1,210 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../../../index.js";
+
+export declare namespace ScopesClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class ScopesClient {
+ protected readonly _options: ScopesClient.Options;
+
+ constructor(options: ScopesClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Retrieves a list of scopes for a specific member
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {string} member_id - The unique identifier of the Member
+ * @param {ScopesClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.members.scopes.list("123456-7890-1234-5678-901234", "123456789012345678901234")
+ */
+ public list(
+ project_id: string,
+ member_id: string,
+ requestOptions?: ScopesClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, member_id, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ member_id: string,
+ requestOptions?: ScopesClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/members/${core.url.encodePathParam(member_id)}/scopes`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.ListProjectMemberScopesV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/members/{member_id}/scopes.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Updates the scopes for a specific member
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {string} member_id - The unique identifier of the Member
+ * @param {Deepgram.manage.v1.projects.members.UpdateProjectMemberScopesV1Request} request
+ * @param {ScopesClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.members.scopes.update("123456-7890-1234-5678-901234", "123456789012345678901234", {
+ * scope: "admin"
+ * })
+ */
+ public update(
+ project_id: string,
+ member_id: string,
+ request: Deepgram.manage.v1.projects.members.UpdateProjectMemberScopesV1Request,
+ requestOptions?: ScopesClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__update(project_id, member_id, request, requestOptions));
+ }
+
+ private async __update(
+ project_id: string,
+ member_id: string,
+ request: Deepgram.manage.v1.projects.members.UpdateProjectMemberScopesV1Request,
+ requestOptions?: ScopesClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/members/${core.url.encodePathParam(member_id)}/scopes`,
+ ),
+ method: "PUT",
+ headers: _headers,
+ contentType: "application/json",
+ queryParameters: requestOptions?.queryParams,
+ requestType: "json",
+ body: request,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.UpdateProjectMemberScopesV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling PUT /v1/projects/{project_id}/members/{member_id}/scopes.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/requests/UpdateProjectMemberScopesV1Request.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/requests/UpdateProjectMemberScopesV1Request.ts
new file mode 100644
index 00000000..a1ae9416
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/requests/UpdateProjectMemberScopesV1Request.ts
@@ -0,0 +1,12 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * @example
+ * {
+ * scope: "admin"
+ * }
+ */
+export interface UpdateProjectMemberScopesV1Request {
+ /** A scope to update */
+ scope: string;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/requests/index.ts
new file mode 100644
index 00000000..c5864e8b
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/client/requests/index.ts
@@ -0,0 +1 @@
+export type { UpdateProjectMemberScopesV1Request } from "./UpdateProjectMemberScopesV1Request.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/index.ts
new file mode 100644
index 00000000..914b8c3c
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/members/resources/scopes/index.ts
@@ -0,0 +1 @@
+export * from "./client/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/Client.ts
new file mode 100644
index 00000000..59841f0e
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/Client.ts
@@ -0,0 +1,204 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../index.js";
+
+export declare namespace ModelsClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class ModelsClient {
+ protected readonly _options: ModelsClient.Options;
+
+ constructor(options: ModelsClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Returns metadata on all the latest models that a specific project has access to, including non-public models
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.projects.ModelsListRequest} request
+ * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.models.list("123456-7890-1234-5678-901234", {
+ * include_outdated: true
+ * })
+ */
+ public list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.ModelsListRequest = {},
+ requestOptions?: ModelsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, request, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.ModelsListRequest = {},
+ requestOptions?: ModelsClient.RequestOptions,
+ ): Promise> {
+ const { include_outdated: includeOutdated } = request;
+ const _queryParams: Record = {};
+ if (includeOutdated != null) {
+ _queryParams.include_outdated = includeOutdated.toString();
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/models`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.ListModelsV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/models.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Returns metadata for a specific model
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {string} model_id - The specific UUID of the model
+ * @param {ModelsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.models.get("123456-7890-1234-5678-901234", "af6e9977-99f6-4d8f-b6f5-dfdf6fb6e291")
+ */
+ public get(
+ project_id: string,
+ model_id: string,
+ requestOptions?: ModelsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__get(project_id, model_id, requestOptions));
+ }
+
+ private async __get(
+ project_id: string,
+ model_id: string,
+ requestOptions?: ModelsClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/models/${core.url.encodePathParam(model_id)}`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.GetModelV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/models/{model_id}.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/requests/ModelsListRequest.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/requests/ModelsListRequest.ts
new file mode 100644
index 00000000..b2183044
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/requests/ModelsListRequest.ts
@@ -0,0 +1,12 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * @example
+ * {
+ * include_outdated: true
+ * }
+ */
+export interface ModelsListRequest {
+ /** returns non-latest versions of models */
+ include_outdated?: boolean;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/requests/index.ts
new file mode 100644
index 00000000..7197c55a
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/models/client/requests/index.ts
@@ -0,0 +1 @@
+export type { ModelsListRequest } from "./ModelsListRequest.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/models/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/models/index.ts
new file mode 100644
index 00000000..914b8c3c
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/models/index.ts
@@ -0,0 +1 @@
+export * from "./client/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/Client.ts
new file mode 100644
index 00000000..a41e8a15
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/Client.ts
@@ -0,0 +1,263 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../index.js";
+
+export declare namespace RequestsClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class RequestsClient {
+ protected readonly _options: RequestsClient.Options;
+
+ constructor(options: RequestsClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Generates a list of requests for a specific project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.projects.RequestsListRequest} request
+ * @param {RequestsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.requests.list("123456-7890-1234-5678-901234", {
+ * start: "2024-01-15T09:30:00Z",
+ * end: "2024-01-15T09:30:00Z",
+ * limit: 1.1,
+ * page: 1.1,
+ * accessor: "12345678-1234-1234-1234-123456789012",
+ * request_id: "12345678-1234-1234-1234-123456789012",
+ * deployment: "hosted",
+ * endpoint: "listen",
+ * method: "sync",
+ * status: "succeeded"
+ * })
+ */
+ public list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.RequestsListRequest = {},
+ requestOptions?: RequestsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, request, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.RequestsListRequest = {},
+ requestOptions?: RequestsClient.RequestOptions,
+ ): Promise> {
+ const {
+ start,
+ end,
+ limit,
+ page,
+ accessor,
+ request_id: requestId,
+ deployment,
+ endpoint,
+ method,
+ status,
+ } = request;
+ const _queryParams: Record = {};
+ if (start != null) {
+ _queryParams.start = start;
+ }
+
+ if (end != null) {
+ _queryParams.end = end;
+ }
+
+ if (limit != null) {
+ _queryParams.limit = limit.toString();
+ }
+
+ if (page != null) {
+ _queryParams.page = page.toString();
+ }
+
+ if (accessor != null) {
+ _queryParams.accessor = accessor;
+ }
+
+ if (requestId != null) {
+ _queryParams.request_id = requestId;
+ }
+
+ if (deployment != null) {
+ _queryParams.deployment = deployment;
+ }
+
+ if (endpoint != null) {
+ _queryParams.endpoint = endpoint;
+ }
+
+ if (method != null) {
+ _queryParams.method = method;
+ }
+
+ if (status != null) {
+ _queryParams.status = status;
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/requests`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.ListProjectRequestsV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/requests.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Retrieves a specific request for a specific project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {string} request_id - The unique identifier of the request
+ * @param {RequestsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.requests.get("123456-7890-1234-5678-901234", "123456-7890-1234-5678-901234")
+ */
+ public get(
+ project_id: string,
+ request_id: string,
+ requestOptions?: RequestsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__get(project_id, request_id, requestOptions));
+ }
+
+ private async __get(
+ project_id: string,
+ request_id: string,
+ requestOptions?: RequestsClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/requests/${core.url.encodePathParam(request_id)}`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.GetProjectRequestV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/requests/{request_id}.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/requests/RequestsListRequest.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/requests/RequestsListRequest.ts
new file mode 100644
index 00000000..17d40de5
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/requests/RequestsListRequest.ts
@@ -0,0 +1,41 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../../../../../../index.js";
+
+/**
+ * @example
+ * {
+ * start: "2024-01-15T09:30:00Z",
+ * end: "2024-01-15T09:30:00Z",
+ * limit: 1.1,
+ * page: 1.1,
+ * accessor: "12345678-1234-1234-1234-123456789012",
+ * request_id: "12345678-1234-1234-1234-123456789012",
+ * deployment: "hosted",
+ * endpoint: "listen",
+ * method: "sync",
+ * status: "succeeded"
+ * }
+ */
+export interface RequestsListRequest {
+ /** Start date of the requested date range. Formats accepted are YYYY-MM-DD, YYYY-MM-DDTHH:MM:SS, or YYYY-MM-DDTHH:MM:SS+HH:MM */
+ start?: string;
+ /** End date of the requested date range. Formats accepted are YYYY-MM-DD, YYYY-MM-DDTHH:MM:SS, or YYYY-MM-DDTHH:MM:SS+HH:MM */
+ end?: string;
+ /** Number of results to return per page. Default 10. Range [1,1000] */
+ limit?: number;
+ /** Navigate and return the results to retrieve specific portions of information of the response */
+ page?: number;
+ /** Filter for requests where a specific accessor was used */
+ accessor?: string;
+ /** Filter for a specific request id */
+ request_id?: string;
+ /** Filter for requests where a specific deployment was used */
+ deployment?: Deepgram.manage.v1.projects.RequestsListRequestDeployment;
+ /** Filter for requests where a specific endpoint was used */
+ endpoint?: Deepgram.manage.v1.projects.RequestsListRequestEndpoint;
+ /** Filter for requests where a specific method was used */
+ method?: Deepgram.manage.v1.projects.RequestsListRequestMethod;
+ /** Filter for requests that succeeded (status code < 300) or failed (status code >=400) */
+ status?: Deepgram.manage.v1.projects.RequestsListRequestStatus;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/requests/index.ts
new file mode 100644
index 00000000..8c9f754b
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/client/requests/index.ts
@@ -0,0 +1 @@
+export type { RequestsListRequest } from "./RequestsListRequest.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/index.ts
new file mode 100644
index 00000000..d9adb1af
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestDeployment.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestDeployment.ts
new file mode 100644
index 00000000..be9d0361
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestDeployment.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Deployment type for the requests */
+export const RequestsListRequestDeployment = {
+ Hosted: "hosted",
+ Beta: "beta",
+ SelfHosted: "self-hosted",
+} as const;
+export type RequestsListRequestDeployment =
+ (typeof RequestsListRequestDeployment)[keyof typeof RequestsListRequestDeployment];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestEndpoint.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestEndpoint.ts
new file mode 100644
index 00000000..b50dd80b
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestEndpoint.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const RequestsListRequestEndpoint = {
+ Listen: "listen",
+ Read: "read",
+ Speak: "speak",
+ Agent: "agent",
+} as const;
+export type RequestsListRequestEndpoint =
+ (typeof RequestsListRequestEndpoint)[keyof typeof RequestsListRequestEndpoint];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestMethod.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestMethod.ts
new file mode 100644
index 00000000..9cb05a4a
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestMethod.ts
@@ -0,0 +1,9 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Method type for the request */
+export const RequestsListRequestMethod = {
+ Sync: "sync",
+ Async: "async",
+ Streaming: "streaming",
+} as const;
+export type RequestsListRequestMethod = (typeof RequestsListRequestMethod)[keyof typeof RequestsListRequestMethod];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestStatus.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestStatus.ts
new file mode 100644
index 00000000..564c48da
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/RequestsListRequestStatus.ts
@@ -0,0 +1,7 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const RequestsListRequestStatus = {
+ Succeeded: "succeeded",
+ Failed: "failed",
+} as const;
+export type RequestsListRequestStatus = (typeof RequestsListRequestStatus)[keyof typeof RequestsListRequestStatus];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/index.ts
new file mode 100644
index 00000000..fec800d1
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/requests/types/index.ts
@@ -0,0 +1,4 @@
+export * from "./RequestsListRequestDeployment.js";
+export * from "./RequestsListRequestEndpoint.js";
+export * from "./RequestsListRequestMethod.js";
+export * from "./RequestsListRequestStatus.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/Client.ts
new file mode 100644
index 00000000..fa916a98
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/Client.ts
@@ -0,0 +1,392 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../index.js";
+import { BreakdownClient } from "../resources/breakdown/client/Client.js";
+import { FieldsClient } from "../resources/fields/client/Client.js";
+
+export declare namespace UsageClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class UsageClient {
+ protected readonly _options: UsageClient.Options;
+ protected _breakdown: BreakdownClient | undefined;
+ protected _fields: FieldsClient | undefined;
+
+ constructor(options: UsageClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get breakdown(): BreakdownClient {
+ return (this._breakdown ??= new BreakdownClient(this._options));
+ }
+
+ public get fields(): FieldsClient {
+ return (this._fields ??= new FieldsClient(this._options));
+ }
+
+ /**
+ * Retrieves the usage for a specific project. Use Get Project Usage Breakdown for a more comprehensive usage summary.
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.projects.UsageGetRequest} request
+ * @param {UsageClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.usage.get("123456-7890-1234-5678-901234", {
+ * start: "start",
+ * end: "end",
+ * accessor: "12345678-1234-1234-1234-123456789012",
+ * alternatives: true,
+ * callback_method: true,
+ * callback: true,
+ * channels: true,
+ * custom_intent_mode: true,
+ * custom_intent: true,
+ * custom_topic_mode: true,
+ * custom_topic: true,
+ * deployment: "hosted",
+ * detect_entities: true,
+ * detect_language: true,
+ * diarize: true,
+ * dictation: true,
+ * encoding: true,
+ * endpoint: "listen",
+ * extra: true,
+ * filler_words: true,
+ * intents: true,
+ * keyterm: true,
+ * keywords: true,
+ * language: true,
+ * measurements: true,
+ * method: "sync",
+ * model: "6f548761-c9c0-429a-9315-11a1d28499c8",
+ * multichannel: true,
+ * numerals: true,
+ * paragraphs: true,
+ * profanity_filter: true,
+ * punctuate: true,
+ * redact: true,
+ * replace: true,
+ * sample_rate: true,
+ * search: true,
+ * sentiment: true,
+ * smart_format: true,
+ * summarize: true,
+ * tag: "tag1",
+ * topics: true,
+ * utt_split: true,
+ * utterances: true,
+ * version: true
+ * })
+ */
+ public get(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.UsageGetRequest = {},
+ requestOptions?: UsageClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__get(project_id, request, requestOptions));
+ }
+
+ private async __get(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.UsageGetRequest = {},
+ requestOptions?: UsageClient.RequestOptions,
+ ): Promise> {
+ const {
+ start,
+ end,
+ accessor,
+ alternatives,
+ callback_method: callbackMethod,
+ callback,
+ channels,
+ custom_intent_mode: customIntentMode,
+ custom_intent: customIntent,
+ custom_topic_mode: customTopicMode,
+ custom_topic: customTopic,
+ deployment,
+ detect_entities: detectEntities,
+ detect_language: detectLanguage,
+ diarize,
+ dictation,
+ encoding,
+ endpoint,
+ extra,
+ filler_words: fillerWords,
+ intents,
+ keyterm,
+ keywords,
+ language,
+ measurements,
+ method,
+ model,
+ multichannel,
+ numerals,
+ paragraphs,
+ profanity_filter: profanityFilter,
+ punctuate,
+ redact,
+ replace,
+ sample_rate: sampleRate,
+ search,
+ sentiment,
+ smart_format: smartFormat,
+ summarize,
+ tag,
+ topics,
+ utt_split: uttSplit,
+ utterances,
+ version,
+ } = request;
+ const _queryParams: Record = {};
+ if (start != null) {
+ _queryParams.start = start;
+ }
+
+ if (end != null) {
+ _queryParams.end = end;
+ }
+
+ if (accessor != null) {
+ _queryParams.accessor = accessor;
+ }
+
+ if (alternatives != null) {
+ _queryParams.alternatives = alternatives.toString();
+ }
+
+ if (callbackMethod != null) {
+ _queryParams.callback_method = callbackMethod.toString();
+ }
+
+ if (callback != null) {
+ _queryParams.callback = callback.toString();
+ }
+
+ if (channels != null) {
+ _queryParams.channels = channels.toString();
+ }
+
+ if (customIntentMode != null) {
+ _queryParams.custom_intent_mode = customIntentMode.toString();
+ }
+
+ if (customIntent != null) {
+ _queryParams.custom_intent = customIntent.toString();
+ }
+
+ if (customTopicMode != null) {
+ _queryParams.custom_topic_mode = customTopicMode.toString();
+ }
+
+ if (customTopic != null) {
+ _queryParams.custom_topic = customTopic.toString();
+ }
+
+ if (deployment != null) {
+ _queryParams.deployment = deployment;
+ }
+
+ if (detectEntities != null) {
+ _queryParams.detect_entities = detectEntities.toString();
+ }
+
+ if (detectLanguage != null) {
+ _queryParams.detect_language = detectLanguage.toString();
+ }
+
+ if (diarize != null) {
+ _queryParams.diarize = diarize.toString();
+ }
+
+ if (dictation != null) {
+ _queryParams.dictation = dictation.toString();
+ }
+
+ if (encoding != null) {
+ _queryParams.encoding = encoding.toString();
+ }
+
+ if (endpoint != null) {
+ _queryParams.endpoint = endpoint;
+ }
+
+ if (extra != null) {
+ _queryParams.extra = extra.toString();
+ }
+
+ if (fillerWords != null) {
+ _queryParams.filler_words = fillerWords.toString();
+ }
+
+ if (intents != null) {
+ _queryParams.intents = intents.toString();
+ }
+
+ if (keyterm != null) {
+ _queryParams.keyterm = keyterm.toString();
+ }
+
+ if (keywords != null) {
+ _queryParams.keywords = keywords.toString();
+ }
+
+ if (language != null) {
+ _queryParams.language = language.toString();
+ }
+
+ if (measurements != null) {
+ _queryParams.measurements = measurements.toString();
+ }
+
+ if (method != null) {
+ _queryParams.method = method;
+ }
+
+ if (model != null) {
+ _queryParams.model = model;
+ }
+
+ if (multichannel != null) {
+ _queryParams.multichannel = multichannel.toString();
+ }
+
+ if (numerals != null) {
+ _queryParams.numerals = numerals.toString();
+ }
+
+ if (paragraphs != null) {
+ _queryParams.paragraphs = paragraphs.toString();
+ }
+
+ if (profanityFilter != null) {
+ _queryParams.profanity_filter = profanityFilter.toString();
+ }
+
+ if (punctuate != null) {
+ _queryParams.punctuate = punctuate.toString();
+ }
+
+ if (redact != null) {
+ _queryParams.redact = redact.toString();
+ }
+
+ if (replace != null) {
+ _queryParams.replace = replace.toString();
+ }
+
+ if (sampleRate != null) {
+ _queryParams.sample_rate = sampleRate.toString();
+ }
+
+ if (search != null) {
+ _queryParams.search = search.toString();
+ }
+
+ if (sentiment != null) {
+ _queryParams.sentiment = sentiment.toString();
+ }
+
+ if (smartFormat != null) {
+ _queryParams.smart_format = smartFormat.toString();
+ }
+
+ if (summarize != null) {
+ _queryParams.summarize = summarize.toString();
+ }
+
+ if (tag != null) {
+ _queryParams.tag = tag;
+ }
+
+ if (topics != null) {
+ _queryParams.topics = topics.toString();
+ }
+
+ if (uttSplit != null) {
+ _queryParams.utt_split = uttSplit.toString();
+ }
+
+ if (utterances != null) {
+ _queryParams.utterances = utterances.toString();
+ }
+
+ if (version != null) {
+ _queryParams.version = version.toString();
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/usage`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.UsageV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/usage.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/requests/UsageGetRequest.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/requests/UsageGetRequest.ts
new file mode 100644
index 00000000..492709d3
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/requests/UsageGetRequest.ts
@@ -0,0 +1,143 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../../../../../../index.js";
+
+/**
+ * @example
+ * {
+ * start: "start",
+ * end: "end",
+ * accessor: "12345678-1234-1234-1234-123456789012",
+ * alternatives: true,
+ * callback_method: true,
+ * callback: true,
+ * channels: true,
+ * custom_intent_mode: true,
+ * custom_intent: true,
+ * custom_topic_mode: true,
+ * custom_topic: true,
+ * deployment: "hosted",
+ * detect_entities: true,
+ * detect_language: true,
+ * diarize: true,
+ * dictation: true,
+ * encoding: true,
+ * endpoint: "listen",
+ * extra: true,
+ * filler_words: true,
+ * intents: true,
+ * keyterm: true,
+ * keywords: true,
+ * language: true,
+ * measurements: true,
+ * method: "sync",
+ * model: "6f548761-c9c0-429a-9315-11a1d28499c8",
+ * multichannel: true,
+ * numerals: true,
+ * paragraphs: true,
+ * profanity_filter: true,
+ * punctuate: true,
+ * redact: true,
+ * replace: true,
+ * sample_rate: true,
+ * search: true,
+ * sentiment: true,
+ * smart_format: true,
+ * summarize: true,
+ * tag: "tag1",
+ * topics: true,
+ * utt_split: true,
+ * utterances: true,
+ * version: true
+ * }
+ */
+export interface UsageGetRequest {
+ /** Start date of the requested date range. Format accepted is YYYY-MM-DD */
+ start?: string;
+ /** End date of the requested date range. Format accepted is YYYY-MM-DD */
+ end?: string;
+ /** Filter for requests where a specific accessor was used */
+ accessor?: string;
+ /** Filter for requests where alternatives were used */
+ alternatives?: boolean;
+ /** Filter for requests where callback method was used */
+ callback_method?: boolean;
+ /** Filter for requests where callback was used */
+ callback?: boolean;
+ /** Filter for requests where channels were used */
+ channels?: boolean;
+ /** Filter for requests where custom intent mode was used */
+ custom_intent_mode?: boolean;
+ /** Filter for requests where custom intent was used */
+ custom_intent?: boolean;
+ /** Filter for requests where custom topic mode was used */
+ custom_topic_mode?: boolean;
+ /** Filter for requests where custom topic was used */
+ custom_topic?: boolean;
+ /** Filter for requests where a specific deployment was used */
+ deployment?: Deepgram.manage.v1.projects.UsageGetRequestDeployment;
+ /** Filter for requests where detect entities was used */
+ detect_entities?: boolean;
+ /** Filter for requests where detect language was used */
+ detect_language?: boolean;
+ /** Filter for requests where diarize was used */
+ diarize?: boolean;
+ /** Filter for requests where dictation was used */
+ dictation?: boolean;
+ /** Filter for requests where encoding was used */
+ encoding?: boolean;
+ /** Filter for requests where a specific endpoint was used */
+ endpoint?: Deepgram.manage.v1.projects.UsageGetRequestEndpoint;
+ /** Filter for requests where extra was used */
+ extra?: boolean;
+ /** Filter for requests where filler words was used */
+ filler_words?: boolean;
+ /** Filter for requests where intents was used */
+ intents?: boolean;
+ /** Filter for requests where keyterm was used */
+ keyterm?: boolean;
+ /** Filter for requests where keywords was used */
+ keywords?: boolean;
+ /** Filter for requests where language was used */
+ language?: boolean;
+ /** Filter for requests where measurements were used */
+ measurements?: boolean;
+ /** Filter for requests where a specific method was used */
+ method?: Deepgram.manage.v1.projects.UsageGetRequestMethod;
+ /** Filter for requests where a specific model uuid was used */
+ model?: string;
+ /** Filter for requests where multichannel was used */
+ multichannel?: boolean;
+ /** Filter for requests where numerals were used */
+ numerals?: boolean;
+ /** Filter for requests where paragraphs were used */
+ paragraphs?: boolean;
+ /** Filter for requests where profanity filter was used */
+ profanity_filter?: boolean;
+ /** Filter for requests where punctuate was used */
+ punctuate?: boolean;
+ /** Filter for requests where redact was used */
+ redact?: boolean;
+ /** Filter for requests where replace was used */
+ replace?: boolean;
+ /** Filter for requests where sample rate was used */
+ sample_rate?: boolean;
+ /** Filter for requests where search was used */
+ search?: boolean;
+ /** Filter for requests where sentiment was used */
+ sentiment?: boolean;
+ /** Filter for requests where smart format was used */
+ smart_format?: boolean;
+ /** Filter for requests where summarize was used */
+ summarize?: boolean;
+ /** Filter for requests where a specific tag was used */
+ tag?: string;
+ /** Filter for requests where topics was used */
+ topics?: boolean;
+ /** Filter for requests where utt split was used */
+ utt_split?: boolean;
+ /** Filter for requests where utterances was used */
+ utterances?: boolean;
+ /** Filter for requests where version was used */
+ version?: boolean;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/requests/index.ts
new file mode 100644
index 00000000..6a2dfd92
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/client/requests/index.ts
@@ -0,0 +1 @@
+export type { UsageGetRequest } from "./UsageGetRequest.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/index.ts
new file mode 100644
index 00000000..0ef16e76
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/index.ts
@@ -0,0 +1,3 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/Client.ts
new file mode 100644
index 00000000..1c96660a
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/Client.ts
@@ -0,0 +1,386 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../../../index.js";
+
+export declare namespace BreakdownClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class BreakdownClient {
+ protected readonly _options: BreakdownClient.Options;
+
+ constructor(options: BreakdownClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Retrieves the usage breakdown for a specific project, with various filter options by API feature or by groupings. Setting a feature (e.g. diarize) to true includes requests that used that feature, while false excludes requests that used it. Multiple true filters are combined with OR logic, while false filters use AND logic.
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.projects.usage.BreakdownGetRequest} request
+ * @param {BreakdownClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.usage.breakdown.get("123456-7890-1234-5678-901234", {
+ * start: "start",
+ * end: "end",
+ * grouping: "accessor",
+ * accessor: "12345678-1234-1234-1234-123456789012",
+ * alternatives: true,
+ * callback_method: true,
+ * callback: true,
+ * channels: true,
+ * custom_intent_mode: true,
+ * custom_intent: true,
+ * custom_topic_mode: true,
+ * custom_topic: true,
+ * deployment: "hosted",
+ * detect_entities: true,
+ * detect_language: true,
+ * diarize: true,
+ * dictation: true,
+ * encoding: true,
+ * endpoint: "listen",
+ * extra: true,
+ * filler_words: true,
+ * intents: true,
+ * keyterm: true,
+ * keywords: true,
+ * language: true,
+ * measurements: true,
+ * method: "sync",
+ * model: "6f548761-c9c0-429a-9315-11a1d28499c8",
+ * multichannel: true,
+ * numerals: true,
+ * paragraphs: true,
+ * profanity_filter: true,
+ * punctuate: true,
+ * redact: true,
+ * replace: true,
+ * sample_rate: true,
+ * search: true,
+ * sentiment: true,
+ * smart_format: true,
+ * summarize: true,
+ * tag: "tag1",
+ * topics: true,
+ * utt_split: true,
+ * utterances: true,
+ * version: true
+ * })
+ */
+ public get(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.usage.BreakdownGetRequest = {},
+ requestOptions?: BreakdownClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__get(project_id, request, requestOptions));
+ }
+
+ private async __get(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.usage.BreakdownGetRequest = {},
+ requestOptions?: BreakdownClient.RequestOptions,
+ ): Promise> {
+ const {
+ start,
+ end,
+ grouping,
+ accessor,
+ alternatives,
+ callback_method: callbackMethod,
+ callback,
+ channels,
+ custom_intent_mode: customIntentMode,
+ custom_intent: customIntent,
+ custom_topic_mode: customTopicMode,
+ custom_topic: customTopic,
+ deployment,
+ detect_entities: detectEntities,
+ detect_language: detectLanguage,
+ diarize,
+ dictation,
+ encoding,
+ endpoint,
+ extra,
+ filler_words: fillerWords,
+ intents,
+ keyterm,
+ keywords,
+ language,
+ measurements,
+ method,
+ model,
+ multichannel,
+ numerals,
+ paragraphs,
+ profanity_filter: profanityFilter,
+ punctuate,
+ redact,
+ replace,
+ sample_rate: sampleRate,
+ search,
+ sentiment,
+ smart_format: smartFormat,
+ summarize,
+ tag,
+ topics,
+ utt_split: uttSplit,
+ utterances,
+ version,
+ } = request;
+ const _queryParams: Record = {};
+ if (start != null) {
+ _queryParams.start = start;
+ }
+
+ if (end != null) {
+ _queryParams.end = end;
+ }
+
+ if (grouping != null) {
+ _queryParams.grouping = grouping;
+ }
+
+ if (accessor != null) {
+ _queryParams.accessor = accessor;
+ }
+
+ if (alternatives != null) {
+ _queryParams.alternatives = alternatives.toString();
+ }
+
+ if (callbackMethod != null) {
+ _queryParams.callback_method = callbackMethod.toString();
+ }
+
+ if (callback != null) {
+ _queryParams.callback = callback.toString();
+ }
+
+ if (channels != null) {
+ _queryParams.channels = channels.toString();
+ }
+
+ if (customIntentMode != null) {
+ _queryParams.custom_intent_mode = customIntentMode.toString();
+ }
+
+ if (customIntent != null) {
+ _queryParams.custom_intent = customIntent.toString();
+ }
+
+ if (customTopicMode != null) {
+ _queryParams.custom_topic_mode = customTopicMode.toString();
+ }
+
+ if (customTopic != null) {
+ _queryParams.custom_topic = customTopic.toString();
+ }
+
+ if (deployment != null) {
+ _queryParams.deployment = deployment;
+ }
+
+ if (detectEntities != null) {
+ _queryParams.detect_entities = detectEntities.toString();
+ }
+
+ if (detectLanguage != null) {
+ _queryParams.detect_language = detectLanguage.toString();
+ }
+
+ if (diarize != null) {
+ _queryParams.diarize = diarize.toString();
+ }
+
+ if (dictation != null) {
+ _queryParams.dictation = dictation.toString();
+ }
+
+ if (encoding != null) {
+ _queryParams.encoding = encoding.toString();
+ }
+
+ if (endpoint != null) {
+ _queryParams.endpoint = endpoint;
+ }
+
+ if (extra != null) {
+ _queryParams.extra = extra.toString();
+ }
+
+ if (fillerWords != null) {
+ _queryParams.filler_words = fillerWords.toString();
+ }
+
+ if (intents != null) {
+ _queryParams.intents = intents.toString();
+ }
+
+ if (keyterm != null) {
+ _queryParams.keyterm = keyterm.toString();
+ }
+
+ if (keywords != null) {
+ _queryParams.keywords = keywords.toString();
+ }
+
+ if (language != null) {
+ _queryParams.language = language.toString();
+ }
+
+ if (measurements != null) {
+ _queryParams.measurements = measurements.toString();
+ }
+
+ if (method != null) {
+ _queryParams.method = method;
+ }
+
+ if (model != null) {
+ _queryParams.model = model;
+ }
+
+ if (multichannel != null) {
+ _queryParams.multichannel = multichannel.toString();
+ }
+
+ if (numerals != null) {
+ _queryParams.numerals = numerals.toString();
+ }
+
+ if (paragraphs != null) {
+ _queryParams.paragraphs = paragraphs.toString();
+ }
+
+ if (profanityFilter != null) {
+ _queryParams.profanity_filter = profanityFilter.toString();
+ }
+
+ if (punctuate != null) {
+ _queryParams.punctuate = punctuate.toString();
+ }
+
+ if (redact != null) {
+ _queryParams.redact = redact.toString();
+ }
+
+ if (replace != null) {
+ _queryParams.replace = replace.toString();
+ }
+
+ if (sampleRate != null) {
+ _queryParams.sample_rate = sampleRate.toString();
+ }
+
+ if (search != null) {
+ _queryParams.search = search.toString();
+ }
+
+ if (sentiment != null) {
+ _queryParams.sentiment = sentiment.toString();
+ }
+
+ if (smartFormat != null) {
+ _queryParams.smart_format = smartFormat.toString();
+ }
+
+ if (summarize != null) {
+ _queryParams.summarize = summarize.toString();
+ }
+
+ if (tag != null) {
+ _queryParams.tag = tag;
+ }
+
+ if (topics != null) {
+ _queryParams.topics = topics.toString();
+ }
+
+ if (uttSplit != null) {
+ _queryParams.utt_split = uttSplit.toString();
+ }
+
+ if (utterances != null) {
+ _queryParams.utterances = utterances.toString();
+ }
+
+ if (version != null) {
+ _queryParams.version = version.toString();
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/usage/breakdown`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.UsageBreakdownV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/usage/breakdown.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/requests/BreakdownGetRequest.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/requests/BreakdownGetRequest.ts
new file mode 100644
index 00000000..9e300981
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/requests/BreakdownGetRequest.ts
@@ -0,0 +1,146 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../../../../../../../../index.js";
+
+/**
+ * @example
+ * {
+ * start: "start",
+ * end: "end",
+ * grouping: "accessor",
+ * accessor: "12345678-1234-1234-1234-123456789012",
+ * alternatives: true,
+ * callback_method: true,
+ * callback: true,
+ * channels: true,
+ * custom_intent_mode: true,
+ * custom_intent: true,
+ * custom_topic_mode: true,
+ * custom_topic: true,
+ * deployment: "hosted",
+ * detect_entities: true,
+ * detect_language: true,
+ * diarize: true,
+ * dictation: true,
+ * encoding: true,
+ * endpoint: "listen",
+ * extra: true,
+ * filler_words: true,
+ * intents: true,
+ * keyterm: true,
+ * keywords: true,
+ * language: true,
+ * measurements: true,
+ * method: "sync",
+ * model: "6f548761-c9c0-429a-9315-11a1d28499c8",
+ * multichannel: true,
+ * numerals: true,
+ * paragraphs: true,
+ * profanity_filter: true,
+ * punctuate: true,
+ * redact: true,
+ * replace: true,
+ * sample_rate: true,
+ * search: true,
+ * sentiment: true,
+ * smart_format: true,
+ * summarize: true,
+ * tag: "tag1",
+ * topics: true,
+ * utt_split: true,
+ * utterances: true,
+ * version: true
+ * }
+ */
+export interface BreakdownGetRequest {
+ /** Start date of the requested date range. Format accepted is YYYY-MM-DD */
+ start?: string;
+ /** End date of the requested date range. Format accepted is YYYY-MM-DD */
+ end?: string;
+ /** Common usage grouping parameters */
+ grouping?: Deepgram.manage.v1.projects.usage.BreakdownGetRequestGrouping;
+ /** Filter for requests where a specific accessor was used */
+ accessor?: string;
+ /** Filter for requests where alternatives were used */
+ alternatives?: boolean;
+ /** Filter for requests where callback method was used */
+ callback_method?: boolean;
+ /** Filter for requests where callback was used */
+ callback?: boolean;
+ /** Filter for requests where channels were used */
+ channels?: boolean;
+ /** Filter for requests where custom intent mode was used */
+ custom_intent_mode?: boolean;
+ /** Filter for requests where custom intent was used */
+ custom_intent?: boolean;
+ /** Filter for requests where custom topic mode was used */
+ custom_topic_mode?: boolean;
+ /** Filter for requests where custom topic was used */
+ custom_topic?: boolean;
+ /** Filter for requests where a specific deployment was used */
+ deployment?: Deepgram.manage.v1.projects.usage.BreakdownGetRequestDeployment;
+ /** Filter for requests where detect entities was used */
+ detect_entities?: boolean;
+ /** Filter for requests where detect language was used */
+ detect_language?: boolean;
+ /** Filter for requests where diarize was used */
+ diarize?: boolean;
+ /** Filter for requests where dictation was used */
+ dictation?: boolean;
+ /** Filter for requests where encoding was used */
+ encoding?: boolean;
+ /** Filter for requests where a specific endpoint was used */
+ endpoint?: Deepgram.manage.v1.projects.usage.BreakdownGetRequestEndpoint;
+ /** Filter for requests where extra was used */
+ extra?: boolean;
+ /** Filter for requests where filler words was used */
+ filler_words?: boolean;
+ /** Filter for requests where intents was used */
+ intents?: boolean;
+ /** Filter for requests where keyterm was used */
+ keyterm?: boolean;
+ /** Filter for requests where keywords was used */
+ keywords?: boolean;
+ /** Filter for requests where language was used */
+ language?: boolean;
+ /** Filter for requests where measurements were used */
+ measurements?: boolean;
+ /** Filter for requests where a specific method was used */
+ method?: Deepgram.manage.v1.projects.usage.BreakdownGetRequestMethod;
+ /** Filter for requests where a specific model uuid was used */
+ model?: string;
+ /** Filter for requests where multichannel was used */
+ multichannel?: boolean;
+ /** Filter for requests where numerals were used */
+ numerals?: boolean;
+ /** Filter for requests where paragraphs were used */
+ paragraphs?: boolean;
+ /** Filter for requests where profanity filter was used */
+ profanity_filter?: boolean;
+ /** Filter for requests where punctuate was used */
+ punctuate?: boolean;
+ /** Filter for requests where redact was used */
+ redact?: boolean;
+ /** Filter for requests where replace was used */
+ replace?: boolean;
+ /** Filter for requests where sample rate was used */
+ sample_rate?: boolean;
+ /** Filter for requests where search was used */
+ search?: boolean;
+ /** Filter for requests where sentiment was used */
+ sentiment?: boolean;
+ /** Filter for requests where smart format was used */
+ smart_format?: boolean;
+ /** Filter for requests where summarize was used */
+ summarize?: boolean;
+ /** Filter for requests where a specific tag was used */
+ tag?: string;
+ /** Filter for requests where topics was used */
+ topics?: boolean;
+ /** Filter for requests where utt split was used */
+ utt_split?: boolean;
+ /** Filter for requests where utterances was used */
+ utterances?: boolean;
+ /** Filter for requests where version was used */
+ version?: boolean;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/requests/index.ts
new file mode 100644
index 00000000..3c23886e
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/client/requests/index.ts
@@ -0,0 +1 @@
+export type { BreakdownGetRequest } from "./BreakdownGetRequest.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/index.ts
new file mode 100644
index 00000000..d9adb1af
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestDeployment.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestDeployment.ts
new file mode 100644
index 00000000..fcd546d7
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestDeployment.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Deployment type for the requests */
+export const BreakdownGetRequestDeployment = {
+ Hosted: "hosted",
+ Beta: "beta",
+ SelfHosted: "self-hosted",
+} as const;
+export type BreakdownGetRequestDeployment =
+ (typeof BreakdownGetRequestDeployment)[keyof typeof BreakdownGetRequestDeployment];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestEndpoint.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestEndpoint.ts
new file mode 100644
index 00000000..df20577b
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestEndpoint.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const BreakdownGetRequestEndpoint = {
+ Listen: "listen",
+ Read: "read",
+ Speak: "speak",
+ Agent: "agent",
+} as const;
+export type BreakdownGetRequestEndpoint =
+ (typeof BreakdownGetRequestEndpoint)[keyof typeof BreakdownGetRequestEndpoint];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestGrouping.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestGrouping.ts
new file mode 100644
index 00000000..f5cdb10e
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestGrouping.ts
@@ -0,0 +1,13 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const BreakdownGetRequestGrouping = {
+ Accessor: "accessor",
+ Endpoint: "endpoint",
+ FeatureSet: "feature_set",
+ Models: "models",
+ Method: "method",
+ Tags: "tags",
+ Deployment: "deployment",
+} as const;
+export type BreakdownGetRequestGrouping =
+ (typeof BreakdownGetRequestGrouping)[keyof typeof BreakdownGetRequestGrouping];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestMethod.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestMethod.ts
new file mode 100644
index 00000000..fe955b10
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/BreakdownGetRequestMethod.ts
@@ -0,0 +1,9 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Method type for the request */
+export const BreakdownGetRequestMethod = {
+ Sync: "sync",
+ Async: "async",
+ Streaming: "streaming",
+} as const;
+export type BreakdownGetRequestMethod = (typeof BreakdownGetRequestMethod)[keyof typeof BreakdownGetRequestMethod];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/index.ts
new file mode 100644
index 00000000..56882fb8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/breakdown/types/index.ts
@@ -0,0 +1,4 @@
+export * from "./BreakdownGetRequestDeployment.js";
+export * from "./BreakdownGetRequestEndpoint.js";
+export * from "./BreakdownGetRequestGrouping.js";
+export * from "./BreakdownGetRequestMethod.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/Client.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/Client.ts
new file mode 100644
index 00000000..4565fea2
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/Client.ts
@@ -0,0 +1,125 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../../../../../index.js";
+
+export declare namespace FieldsClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class FieldsClient {
+ protected readonly _options: FieldsClient.Options;
+
+ constructor(options: FieldsClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Lists the features, models, tags, languages, and processing method used for requests in the specified project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.manage.v1.projects.usage.FieldsListRequest} request
+ * @param {FieldsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.manage.v1.projects.usage.fields.list("123456-7890-1234-5678-901234", {
+ * start: "start",
+ * end: "end"
+ * })
+ */
+ public list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.usage.FieldsListRequest = {},
+ requestOptions?: FieldsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, request, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ request: Deepgram.manage.v1.projects.usage.FieldsListRequest = {},
+ requestOptions?: FieldsClient.RequestOptions,
+ ): Promise> {
+ const { start, end } = request;
+ const _queryParams: Record = {};
+ if (start != null) {
+ _queryParams.start = start;
+ }
+
+ if (end != null) {
+ _queryParams.end = end;
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/usage/fields`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.UsageFieldsV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/usage/fields.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/requests/FieldsListRequest.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/requests/FieldsListRequest.ts
new file mode 100644
index 00000000..d72af8d9
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/requests/FieldsListRequest.ts
@@ -0,0 +1,15 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * @example
+ * {
+ * start: "start",
+ * end: "end"
+ * }
+ */
+export interface FieldsListRequest {
+ /** Start date of the requested date range. Format accepted is YYYY-MM-DD */
+ start?: string;
+ /** End date of the requested date range. Format accepted is YYYY-MM-DD */
+ end?: string;
+}
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/requests/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/requests/index.ts
new file mode 100644
index 00000000..35ea45ea
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/client/requests/index.ts
@@ -0,0 +1 @@
+export type { FieldsListRequest } from "./FieldsListRequest.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/index.ts
new file mode 100644
index 00000000..914b8c3c
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/fields/index.ts
@@ -0,0 +1 @@
+export * from "./client/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/index.ts
new file mode 100644
index 00000000..5fd9a9a1
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/resources/index.ts
@@ -0,0 +1,5 @@
+export * from "./breakdown/client/requests/index.js";
+export * as breakdown from "./breakdown/index.js";
+export * from "./breakdown/types/index.js";
+export * from "./fields/client/requests/index.js";
+export * as fields from "./fields/index.js";
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/UsageGetRequestDeployment.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/UsageGetRequestDeployment.ts
new file mode 100644
index 00000000..759a85f2
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/UsageGetRequestDeployment.ts
@@ -0,0 +1,9 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Deployment type for the requests */
+export const UsageGetRequestDeployment = {
+ Hosted: "hosted",
+ Beta: "beta",
+ SelfHosted: "self-hosted",
+} as const;
+export type UsageGetRequestDeployment = (typeof UsageGetRequestDeployment)[keyof typeof UsageGetRequestDeployment];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/UsageGetRequestEndpoint.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/UsageGetRequestEndpoint.ts
new file mode 100644
index 00000000..46975809
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/UsageGetRequestEndpoint.ts
@@ -0,0 +1,9 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const UsageGetRequestEndpoint = {
+ Listen: "listen",
+ Read: "read",
+ Speak: "speak",
+ Agent: "agent",
+} as const;
+export type UsageGetRequestEndpoint = (typeof UsageGetRequestEndpoint)[keyof typeof UsageGetRequestEndpoint];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/UsageGetRequestMethod.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/UsageGetRequestMethod.ts
new file mode 100644
index 00000000..5739ceb2
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/UsageGetRequestMethod.ts
@@ -0,0 +1,9 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Method type for the request */
+export const UsageGetRequestMethod = {
+ Sync: "sync",
+ Async: "async",
+ Streaming: "streaming",
+} as const;
+export type UsageGetRequestMethod = (typeof UsageGetRequestMethod)[keyof typeof UsageGetRequestMethod];
diff --git a/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/index.ts b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/index.ts
new file mode 100644
index 00000000..57208132
--- /dev/null
+++ b/src/api/resources/manage/resources/v1/resources/projects/resources/usage/types/index.ts
@@ -0,0 +1,3 @@
+export * from "./UsageGetRequestDeployment.js";
+export * from "./UsageGetRequestEndpoint.js";
+export * from "./UsageGetRequestMethod.js";
diff --git a/src/api/resources/read/client/Client.ts b/src/api/resources/read/client/Client.ts
new file mode 100644
index 00000000..d10fdc4c
--- /dev/null
+++ b/src/api/resources/read/client/Client.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../BaseClient.js";
+import { V1Client } from "../resources/v1/client/Client.js";
+
+export declare namespace ReadClient {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class ReadClient {
+ protected readonly _options: ReadClient.Options;
+ protected _v1: V1Client | undefined;
+
+ constructor(options: ReadClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get v1(): V1Client {
+ return (this._v1 ??= new V1Client(this._options));
+ }
+}
diff --git a/src/api/resources/read/client/index.ts b/src/api/resources/read/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/read/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/read/index.ts b/src/api/resources/read/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/read/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/read/resources/index.ts b/src/api/resources/read/resources/index.ts
new file mode 100644
index 00000000..c6b56d24
--- /dev/null
+++ b/src/api/resources/read/resources/index.ts
@@ -0,0 +1 @@
+export * as v1 from "./v1/index.js";
diff --git a/src/api/resources/read/resources/v1/client/Client.ts b/src/api/resources/read/resources/v1/client/Client.ts
new file mode 100644
index 00000000..057dcec2
--- /dev/null
+++ b/src/api/resources/read/resources/v1/client/Client.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../BaseClient.js";
+import { TextClient } from "../resources/text/client/Client.js";
+
+export declare namespace V1Client {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class V1Client {
+ protected readonly _options: V1Client.Options;
+ protected _text: TextClient | undefined;
+
+ constructor(options: V1Client.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get text(): TextClient {
+ return (this._text ??= new TextClient(this._options));
+ }
+}
diff --git a/src/api/resources/read/resources/v1/client/index.ts b/src/api/resources/read/resources/v1/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/read/resources/v1/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/read/resources/v1/index.ts b/src/api/resources/read/resources/v1/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/read/resources/v1/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/read/resources/v1/resources/index.ts b/src/api/resources/read/resources/v1/resources/index.ts
new file mode 100644
index 00000000..dfe1bfa0
--- /dev/null
+++ b/src/api/resources/read/resources/v1/resources/index.ts
@@ -0,0 +1,3 @@
+export * from "./text/client/requests/index.js";
+export * as text from "./text/index.js";
+export * from "./text/types/index.js";
diff --git a/src/api/resources/read/resources/v1/resources/text/client/Client.ts b/src/api/resources/read/resources/v1/resources/text/client/Client.ts
new file mode 100644
index 00000000..03c32bb6
--- /dev/null
+++ b/src/api/resources/read/resources/v1/resources/text/client/Client.ts
@@ -0,0 +1,202 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../index.js";
+
+export declare namespace TextClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class TextClient {
+ protected readonly _options: TextClient.Options;
+
+ constructor(options: TextClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Analyze text content using Deepgrams text analysis API
+ *
+ * @param {Deepgram.read.v1.TextAnalyzeRequest} request
+ * @param {TextClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.read.v1.text.analyze({
+ * callback: "callback",
+ * callback_method: "POST",
+ * sentiment: true,
+ * summarize: "v2",
+ * tag: "tag",
+ * topics: true,
+ * custom_topic: "custom_topic",
+ * custom_topic_mode: "extended",
+ * intents: true,
+ * custom_intent: "custom_intent",
+ * custom_intent_mode: "extended",
+ * language: "language",
+ * body: {
+ * url: "url"
+ * }
+ * })
+ */
+ public analyze(
+ request: Deepgram.read.v1.TextAnalyzeRequest,
+ requestOptions?: TextClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__analyze(request, requestOptions));
+ }
+
+ private async __analyze(
+ request: Deepgram.read.v1.TextAnalyzeRequest,
+ requestOptions?: TextClient.RequestOptions,
+ ): Promise> {
+ const {
+ callback,
+ callback_method: callbackMethod,
+ sentiment,
+ summarize,
+ tag,
+ topics,
+ custom_topic: customTopic,
+ custom_topic_mode: customTopicMode,
+ intents,
+ custom_intent: customIntent,
+ custom_intent_mode: customIntentMode,
+ language,
+ body: _body,
+ } = request;
+ const _queryParams: Record = {};
+ if (callback != null) {
+ _queryParams.callback = callback;
+ }
+
+ if (callbackMethod != null) {
+ _queryParams.callback_method = callbackMethod;
+ }
+
+ if (sentiment != null) {
+ _queryParams.sentiment = sentiment.toString();
+ }
+
+ if (summarize != null) {
+ _queryParams.summarize = summarize;
+ }
+
+ if (tag != null) {
+ if (Array.isArray(tag)) {
+ _queryParams.tag = tag.map((item) => item);
+ } else {
+ _queryParams.tag = tag;
+ }
+ }
+
+ if (topics != null) {
+ _queryParams.topics = topics.toString();
+ }
+
+ if (customTopic != null) {
+ if (Array.isArray(customTopic)) {
+ _queryParams.custom_topic = customTopic.map((item) => item);
+ } else {
+ _queryParams.custom_topic = customTopic;
+ }
+ }
+
+ if (customTopicMode != null) {
+ _queryParams.custom_topic_mode = customTopicMode;
+ }
+
+ if (intents != null) {
+ _queryParams.intents = intents.toString();
+ }
+
+ if (customIntent != null) {
+ if (Array.isArray(customIntent)) {
+ _queryParams.custom_intent = customIntent.map((item) => item);
+ } else {
+ _queryParams.custom_intent = customIntent;
+ }
+ }
+
+ if (customIntentMode != null) {
+ _queryParams.custom_intent_mode = customIntentMode;
+ }
+
+ if (language != null) {
+ _queryParams.language = language;
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ "v1/read",
+ ),
+ method: "POST",
+ headers: _headers,
+ contentType: "application/json",
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ requestType: "json",
+ body: _body,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body as Deepgram.ReadV1Response, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError("Timeout exceeded when calling POST /v1/read.");
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/read/resources/v1/resources/text/client/index.ts b/src/api/resources/read/resources/v1/resources/text/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/read/resources/v1/resources/text/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/read/resources/v1/resources/text/client/requests/TextAnalyzeRequest.ts b/src/api/resources/read/resources/v1/resources/text/client/requests/TextAnalyzeRequest.ts
new file mode 100644
index 00000000..7f099725
--- /dev/null
+++ b/src/api/resources/read/resources/v1/resources/text/client/requests/TextAnalyzeRequest.ts
@@ -0,0 +1,51 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../../../../index.js";
+
+/**
+ * @example
+ * {
+ * callback: "callback",
+ * callback_method: "POST",
+ * sentiment: true,
+ * summarize: "v2",
+ * tag: "tag",
+ * topics: true,
+ * custom_topic: "custom_topic",
+ * custom_topic_mode: "extended",
+ * intents: true,
+ * custom_intent: "custom_intent",
+ * custom_intent_mode: "extended",
+ * language: "language",
+ * body: {
+ * url: "url"
+ * }
+ * }
+ */
+export interface TextAnalyzeRequest {
+ /** URL to which we'll make the callback request */
+ callback?: string;
+ /** HTTP method by which the callback request will be made */
+ callback_method?: Deepgram.read.v1.TextAnalyzeRequestCallbackMethod;
+ /** Recognizes the sentiment throughout a transcript or text */
+ sentiment?: boolean;
+ /** Summarize content. For Listen API, supports string version option. For Read API, accepts boolean only. */
+ summarize?: Deepgram.read.v1.TextAnalyzeRequestSummarize;
+ /** Label your requests for the purpose of identification during usage reporting */
+ tag?: string | string[];
+ /** Detect topics throughout a transcript or text */
+ topics?: boolean;
+ /** Custom topics you want the model to detect within your input audio or text if present Submit up to `100`. */
+ custom_topic?: string | string[];
+ /** Sets how the model will interpret strings submitted to the `custom_topic` param. When `strict`, the model will only return topics submitted using the `custom_topic` param. When `extended`, the model will return its own detected topics in addition to those submitted using the `custom_topic` param */
+ custom_topic_mode?: Deepgram.read.v1.TextAnalyzeRequestCustomTopicMode;
+ /** Recognizes speaker intent throughout a transcript or text */
+ intents?: boolean;
+ /** Custom intents you want the model to detect within your input audio if present */
+ custom_intent?: string | string[];
+ /** Sets how the model will interpret intents submitted to the `custom_intent` param. When `strict`, the model will only return intents submitted using the `custom_intent` param. When `extended`, the model will return its own detected intents in the `custom_intent` param. */
+ custom_intent_mode?: Deepgram.read.v1.TextAnalyzeRequestCustomIntentMode;
+ /** The [BCP-47 language tag](https://tools.ietf.org/html/bcp47) that hints at the primary spoken language. Depending on the Model and API endpoint you choose only certain languages are available */
+ language?: string;
+ body: Deepgram.ReadV1Request;
+}
diff --git a/src/api/resources/read/resources/v1/resources/text/client/requests/index.ts b/src/api/resources/read/resources/v1/resources/text/client/requests/index.ts
new file mode 100644
index 00000000..ab8756ec
--- /dev/null
+++ b/src/api/resources/read/resources/v1/resources/text/client/requests/index.ts
@@ -0,0 +1 @@
+export type { TextAnalyzeRequest } from "./TextAnalyzeRequest.js";
diff --git a/src/api/resources/read/resources/v1/resources/text/index.ts b/src/api/resources/read/resources/v1/resources/text/index.ts
new file mode 100644
index 00000000..d9adb1af
--- /dev/null
+++ b/src/api/resources/read/resources/v1/resources/text/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestCallbackMethod.ts b/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestCallbackMethod.ts
new file mode 100644
index 00000000..843a58e4
--- /dev/null
+++ b/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestCallbackMethod.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const TextAnalyzeRequestCallbackMethod = {
+ Post: "POST",
+ Put: "PUT",
+} as const;
+export type TextAnalyzeRequestCallbackMethod =
+ (typeof TextAnalyzeRequestCallbackMethod)[keyof typeof TextAnalyzeRequestCallbackMethod];
diff --git a/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestCustomIntentMode.ts b/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestCustomIntentMode.ts
new file mode 100644
index 00000000..3806ccd4
--- /dev/null
+++ b/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestCustomIntentMode.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const TextAnalyzeRequestCustomIntentMode = {
+ Extended: "extended",
+ Strict: "strict",
+} as const;
+export type TextAnalyzeRequestCustomIntentMode =
+ (typeof TextAnalyzeRequestCustomIntentMode)[keyof typeof TextAnalyzeRequestCustomIntentMode];
diff --git a/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestCustomTopicMode.ts b/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestCustomTopicMode.ts
new file mode 100644
index 00000000..2f26f070
--- /dev/null
+++ b/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestCustomTopicMode.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const TextAnalyzeRequestCustomTopicMode = {
+ Extended: "extended",
+ Strict: "strict",
+} as const;
+export type TextAnalyzeRequestCustomTopicMode =
+ (typeof TextAnalyzeRequestCustomTopicMode)[keyof typeof TextAnalyzeRequestCustomTopicMode];
diff --git a/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestSummarize.ts b/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestSummarize.ts
new file mode 100644
index 00000000..72f2412c
--- /dev/null
+++ b/src/api/resources/read/resources/v1/resources/text/types/TextAnalyzeRequestSummarize.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const TextAnalyzeRequestSummarize = {
+ V2: "v2",
+ V1: "v1",
+} as const;
+export type TextAnalyzeRequestSummarize =
+ (typeof TextAnalyzeRequestSummarize)[keyof typeof TextAnalyzeRequestSummarize];
diff --git a/src/api/resources/read/resources/v1/resources/text/types/index.ts b/src/api/resources/read/resources/v1/resources/text/types/index.ts
new file mode 100644
index 00000000..4d03536a
--- /dev/null
+++ b/src/api/resources/read/resources/v1/resources/text/types/index.ts
@@ -0,0 +1,4 @@
+export * from "./TextAnalyzeRequestCallbackMethod.js";
+export * from "./TextAnalyzeRequestCustomIntentMode.js";
+export * from "./TextAnalyzeRequestCustomTopicMode.js";
+export * from "./TextAnalyzeRequestSummarize.js";
diff --git a/src/api/resources/selfHosted/client/Client.ts b/src/api/resources/selfHosted/client/Client.ts
new file mode 100644
index 00000000..1eba4eb0
--- /dev/null
+++ b/src/api/resources/selfHosted/client/Client.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../BaseClient.js";
+import { V1Client } from "../resources/v1/client/Client.js";
+
+export declare namespace SelfHostedClient {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class SelfHostedClient {
+ protected readonly _options: SelfHostedClient.Options;
+ protected _v1: V1Client | undefined;
+
+ constructor(options: SelfHostedClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get v1(): V1Client {
+ return (this._v1 ??= new V1Client(this._options));
+ }
+}
diff --git a/src/api/resources/selfHosted/client/index.ts b/src/api/resources/selfHosted/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/selfHosted/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/selfHosted/index.ts b/src/api/resources/selfHosted/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/selfHosted/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/selfHosted/resources/index.ts b/src/api/resources/selfHosted/resources/index.ts
new file mode 100644
index 00000000..c6b56d24
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/index.ts
@@ -0,0 +1 @@
+export * as v1 from "./v1/index.js";
diff --git a/src/api/resources/selfHosted/resources/v1/client/Client.ts b/src/api/resources/selfHosted/resources/v1/client/Client.ts
new file mode 100644
index 00000000..b1c31ac5
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/v1/client/Client.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../BaseClient.js";
+import { DistributionCredentialsClient } from "../resources/distributionCredentials/client/Client.js";
+
+export declare namespace V1Client {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class V1Client {
+ protected readonly _options: V1Client.Options;
+ protected _distributionCredentials: DistributionCredentialsClient | undefined;
+
+ constructor(options: V1Client.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get distributionCredentials(): DistributionCredentialsClient {
+ return (this._distributionCredentials ??= new DistributionCredentialsClient(this._options));
+ }
+}
diff --git a/src/api/resources/selfHosted/resources/v1/client/index.ts b/src/api/resources/selfHosted/resources/v1/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/v1/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/selfHosted/resources/v1/index.ts b/src/api/resources/selfHosted/resources/v1/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/v1/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/Client.ts b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/Client.ts
new file mode 100644
index 00000000..0b654ac6
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/Client.ts
@@ -0,0 +1,396 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../index.js";
+
+export declare namespace DistributionCredentialsClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class DistributionCredentialsClient {
+ protected readonly _options: DistributionCredentialsClient.Options;
+
+ constructor(options: DistributionCredentialsClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Lists sets of distribution credentials for the specified project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {DistributionCredentialsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.selfHosted.v1.distributionCredentials.list("123456-7890-1234-5678-901234")
+ */
+ public list(
+ project_id: string,
+ requestOptions?: DistributionCredentialsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__list(project_id, requestOptions));
+ }
+
+ private async __list(
+ project_id: string,
+ requestOptions?: DistributionCredentialsClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/self-hosted/distribution/credentials`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.ListProjectDistributionCredentialsV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/self-hosted/distribution/credentials.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Creates a set of distribution credentials for the specified project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {Deepgram.selfHosted.v1.CreateProjectDistributionCredentialsV1Request} request
+ * @param {DistributionCredentialsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.selfHosted.v1.distributionCredentials.create("123456-7890-1234-5678-901234", {
+ * provider: "quay"
+ * })
+ */
+ public create(
+ project_id: string,
+ request: Deepgram.selfHosted.v1.CreateProjectDistributionCredentialsV1Request = {},
+ requestOptions?: DistributionCredentialsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__create(project_id, request, requestOptions));
+ }
+
+ private async __create(
+ project_id: string,
+ request: Deepgram.selfHosted.v1.CreateProjectDistributionCredentialsV1Request = {},
+ requestOptions?: DistributionCredentialsClient.RequestOptions,
+ ): Promise> {
+ const { scopes, provider, ..._body } = request;
+ const _queryParams: Record = {};
+ if (scopes != null) {
+ if (Array.isArray(scopes)) {
+ _queryParams.scopes = scopes.map((item) => item);
+ } else {
+ _queryParams.scopes = scopes;
+ }
+ }
+
+ if (provider != null) {
+ _queryParams.provider = provider;
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/self-hosted/distribution/credentials`,
+ ),
+ method: "POST",
+ headers: _headers,
+ contentType: "application/json",
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ requestType: "json",
+ body: _body,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.CreateProjectDistributionCredentialsV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling POST /v1/projects/{project_id}/self-hosted/distribution/credentials.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Returns a set of distribution credentials for the specified project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {string} distribution_credentials_id - The UUID of the distribution credentials
+ * @param {DistributionCredentialsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.selfHosted.v1.distributionCredentials.get("123456-7890-1234-5678-901234", "8b36cfd0-472f-4a21-833f-2d6343c3a2f3")
+ */
+ public get(
+ project_id: string,
+ distribution_credentials_id: string,
+ requestOptions?: DistributionCredentialsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(
+ this.__get(project_id, distribution_credentials_id, requestOptions),
+ );
+ }
+
+ private async __get(
+ project_id: string,
+ distribution_credentials_id: string,
+ requestOptions?: DistributionCredentialsClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/self-hosted/distribution/credentials/${core.url.encodePathParam(distribution_credentials_id)}`,
+ ),
+ method: "GET",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.GetProjectDistributionCredentialsV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling GET /v1/projects/{project_id}/self-hosted/distribution/credentials/{distribution_credentials_id}.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ /**
+ * Deletes a set of distribution credentials for the specified project
+ *
+ * @param {string} project_id - The unique identifier of the project
+ * @param {string} distribution_credentials_id - The UUID of the distribution credentials
+ * @param {DistributionCredentialsClient.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Deepgram.BadRequestError}
+ *
+ * @example
+ * await client.selfHosted.v1.distributionCredentials.delete("123456-7890-1234-5678-901234", "8b36cfd0-472f-4a21-833f-2d6343c3a2f3")
+ */
+ public delete(
+ project_id: string,
+ distribution_credentials_id: string,
+ requestOptions?: DistributionCredentialsClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(
+ this.__delete(project_id, distribution_credentials_id, requestOptions),
+ );
+ }
+
+ private async __delete(
+ project_id: string,
+ distribution_credentials_id: string,
+ requestOptions?: DistributionCredentialsClient.RequestOptions,
+ ): Promise> {
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ `v1/projects/${core.url.encodePathParam(project_id)}/self-hosted/distribution/credentials/${core.url.encodePathParam(distribution_credentials_id)}`,
+ ),
+ method: "DELETE",
+ headers: _headers,
+ queryParameters: requestOptions?.queryParams,
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return {
+ data: _response.body as Deepgram.GetProjectDistributionCredentialsV1Response,
+ rawResponse: _response.rawResponse,
+ };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError(
+ "Timeout exceeded when calling DELETE /v1/projects/{project_id}/self-hosted/distribution/credentials/{distribution_credentials_id}.",
+ );
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/index.ts b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/requests/CreateProjectDistributionCredentialsV1Request.ts b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/requests/CreateProjectDistributionCredentialsV1Request.ts
new file mode 100644
index 00000000..84b12016
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/requests/CreateProjectDistributionCredentialsV1Request.ts
@@ -0,0 +1,20 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../../../../index.js";
+
+/**
+ * @example
+ * {
+ * provider: "quay"
+ * }
+ */
+export interface CreateProjectDistributionCredentialsV1Request {
+ /** List of permission scopes for the credentials */
+ scopes?:
+ | Deepgram.selfHosted.v1.DistributionCredentialsCreateRequestScopesItem
+ | Deepgram.selfHosted.v1.DistributionCredentialsCreateRequestScopesItem[];
+ /** The provider of the distribution service */
+ provider?: "quay";
+ /** Optional comment about the credentials */
+ comment?: string;
+}
diff --git a/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/requests/index.ts b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/requests/index.ts
new file mode 100644
index 00000000..efbfebad
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/client/requests/index.ts
@@ -0,0 +1 @@
+export type { CreateProjectDistributionCredentialsV1Request } from "./CreateProjectDistributionCredentialsV1Request.js";
diff --git a/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/index.ts b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/index.ts
new file mode 100644
index 00000000..d9adb1af
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/types/DistributionCredentialsCreateRequestScopesItem.ts b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/types/DistributionCredentialsCreateRequestScopesItem.ts
new file mode 100644
index 00000000..7c3218af
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/types/DistributionCredentialsCreateRequestScopesItem.ts
@@ -0,0 +1,14 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const DistributionCredentialsCreateRequestScopesItem = {
+ SelfHostedProducts: "self-hosted:products",
+ SelfHostedProductApi: "self-hosted:product:api",
+ SelfHostedProductEngine: "self-hosted:product:engine",
+ SelfHostedProductLicenseProxy: "self-hosted:product:license-proxy",
+ SelfHostedProductDgtools: "self-hosted:product:dgtools",
+ SelfHostedProductBilling: "self-hosted:product:billing",
+ SelfHostedProductHotpepper: "self-hosted:product:hotpepper",
+ SelfHostedProductMetricsServer: "self-hosted:product:metrics-server",
+} as const;
+export type DistributionCredentialsCreateRequestScopesItem =
+ (typeof DistributionCredentialsCreateRequestScopesItem)[keyof typeof DistributionCredentialsCreateRequestScopesItem];
diff --git a/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/types/index.ts b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/types/index.ts
new file mode 100644
index 00000000..74d8a642
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/v1/resources/distributionCredentials/types/index.ts
@@ -0,0 +1 @@
+export * from "./DistributionCredentialsCreateRequestScopesItem.js";
diff --git a/src/api/resources/selfHosted/resources/v1/resources/index.ts b/src/api/resources/selfHosted/resources/v1/resources/index.ts
new file mode 100644
index 00000000..3a018695
--- /dev/null
+++ b/src/api/resources/selfHosted/resources/v1/resources/index.ts
@@ -0,0 +1,3 @@
+export * from "./distributionCredentials/client/requests/index.js";
+export * as distributionCredentials from "./distributionCredentials/index.js";
+export * from "./distributionCredentials/types/index.js";
diff --git a/src/api/resources/speak/client/Client.ts b/src/api/resources/speak/client/Client.ts
new file mode 100644
index 00000000..ea436dc0
--- /dev/null
+++ b/src/api/resources/speak/client/Client.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../BaseClient.js";
+import { V1Client } from "../resources/v1/client/Client.js";
+
+export declare namespace SpeakClient {
+ export interface Options extends BaseClientOptions {}
+}
+
+export class SpeakClient {
+ protected readonly _options: SpeakClient.Options;
+ protected _v1: V1Client | undefined;
+
+ constructor(options: SpeakClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get v1(): V1Client {
+ return (this._v1 ??= new V1Client(this._options));
+ }
+}
diff --git a/src/api/resources/speak/client/index.ts b/src/api/resources/speak/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/speak/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/speak/index.ts b/src/api/resources/speak/index.ts
new file mode 100644
index 00000000..9eb1192d
--- /dev/null
+++ b/src/api/resources/speak/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
diff --git a/src/api/resources/speak/resources/index.ts b/src/api/resources/speak/resources/index.ts
new file mode 100644
index 00000000..96368d86
--- /dev/null
+++ b/src/api/resources/speak/resources/index.ts
@@ -0,0 +1,2 @@
+export * as v1 from "./v1/index.js";
+export * from "./v1/types/index.js";
diff --git a/src/api/resources/speak/resources/v1/client/Client.ts b/src/api/resources/speak/resources/v1/client/Client.ts
new file mode 100644
index 00000000..668161cd
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/client/Client.ts
@@ -0,0 +1,88 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions } from "../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../core/headers.js";
+import * as core from "../../../../../../core/index.js";
+import * as environments from "../../../../../../environments.js";
+import { AudioClient } from "../resources/audio/client/Client.js";
+import { V1Socket } from "./Socket.js";
+
+export declare namespace V1Client {
+ export interface Options extends BaseClientOptions {}
+
+ export interface ConnectArgs {
+ encoding?: string | undefined;
+ mip_opt_out?: string | undefined;
+ model?: string | undefined;
+ sample_rate?: string | undefined;
+ Authorization: string;
+ /** Arbitrary headers to send with the websocket connect request. */
+ headers?: Record;
+ /** Enable debug mode on the websocket. Defaults to false. */
+ debug?: boolean;
+ /** Number of reconnect attempts. Defaults to 30. */
+ reconnectAttempts?: number;
+ }
+}
+
+export class V1Client {
+ protected readonly _options: V1Client.Options;
+ protected _audio: AudioClient | undefined;
+
+ constructor(options: V1Client.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ public get audio(): AudioClient {
+ return (this._audio ??= new AudioClient(this._options));
+ }
+
+ public async connect(args: V1Client.ConnectArgs): Promise {
+ const { encoding, mip_opt_out, model, sample_rate, headers, debug, reconnectAttempts } = args;
+ const _queryParams: Record = {};
+ if (encoding != null) {
+ _queryParams.encoding = encoding;
+ }
+
+ if (mip_opt_out != null) {
+ _queryParams.mip_opt_out = mip_opt_out;
+ }
+
+ if (model != null) {
+ _queryParams.model = model;
+ }
+
+ if (sample_rate != null) {
+ _queryParams.sample_rate = sample_rate;
+ }
+
+ const _headers: Record = mergeHeaders(
+ mergeOnlyDefinedHeaders({
+ ...(await this._getCustomAuthorizationHeaders()),
+ Authorization: args.Authorization,
+ }),
+ headers,
+ );
+ const socket = new core.ReconnectingWebSocket({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).production,
+ "/v1/speak",
+ ),
+ protocols: [],
+ queryParameters: _queryParams,
+ headers: _headers,
+ options: { debug: debug ?? false, maxRetries: reconnectAttempts ?? 30 },
+ });
+ return new V1Socket({ socket });
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/speak/resources/v1/client/Socket.ts b/src/api/resources/speak/resources/v1/client/Socket.ts
new file mode 100644
index 00000000..300afda1
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/client/Socket.ts
@@ -0,0 +1,160 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import * as core from "../../../../../../core/index.js";
+import { fromJson, toJson } from "../../../../../../core/json.js";
+import type * as Deepgram from "../../../../../index.js";
+
+export declare namespace V1Socket {
+ export interface Args {
+ socket: core.ReconnectingWebSocket;
+ }
+
+ export type Response =
+ | string
+ | Deepgram.speak.SpeakV1Metadata
+ | Deepgram.speak.SpeakV1Flushed
+ | Deepgram.speak.SpeakV1Cleared
+ | Deepgram.speak.SpeakV1Warning;
+ type EventHandlers = {
+ open?: () => void;
+ message?: (message: Response) => void;
+ close?: (event: core.CloseEvent) => void;
+ error?: (error: Error) => void;
+ };
+}
+
+export class V1Socket {
+ public readonly socket: core.ReconnectingWebSocket;
+ protected readonly eventHandlers: V1Socket.EventHandlers = {};
+ private handleOpen: () => void = () => {
+ this.eventHandlers.open?.();
+ };
+ private handleMessage: (event: { data: string }) => void = (event) => {
+ const data = fromJson(event.data);
+
+ this.eventHandlers.message?.(data as V1Socket.Response);
+ };
+ private handleClose: (event: core.CloseEvent) => void = (event) => {
+ this.eventHandlers.close?.(event);
+ };
+ private handleError: (event: core.ErrorEvent) => void = (event) => {
+ const message = event.message;
+ this.eventHandlers.error?.(new Error(message));
+ };
+
+ constructor(args: V1Socket.Args) {
+ this.socket = args.socket;
+ this.socket.addEventListener("open", this.handleOpen);
+ this.socket.addEventListener("message", this.handleMessage);
+ this.socket.addEventListener("close", this.handleClose);
+ this.socket.addEventListener("error", this.handleError);
+ }
+
+ /** The current state of the connection; this is one of the readyState constants. */
+ get readyState(): number {
+ return this.socket.readyState;
+ }
+
+ /**
+ * @param event - The event to attach to.
+ * @param callback - The callback to run when the event is triggered.
+ * Usage:
+ * ```typescript
+ * this.on('open', () => {
+ * console.log('The websocket is open');
+ * });
+ * ```
+ */
+ public on(event: T, callback: V1Socket.EventHandlers[T]): void {
+ this.eventHandlers[event] = callback;
+ }
+
+ public sendSpeakV1Text(message: Deepgram.speak.SpeakV1Text): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendSpeakV1Flush(message: Deepgram.speak.SpeakV1Flush): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendSpeakV1Clear(message: Deepgram.speak.SpeakV1Clear): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ public sendSpeakV1Close(message: Deepgram.speak.SpeakV1Close): void {
+ this.assertSocketIsOpen();
+ this.sendJson(message);
+ }
+
+ /** Connect to the websocket and register event handlers. */
+ public connect(): V1Socket {
+ this.socket.reconnect();
+
+ this.socket.addEventListener("open", this.handleOpen);
+ this.socket.addEventListener("message", this.handleMessage);
+ this.socket.addEventListener("close", this.handleClose);
+ this.socket.addEventListener("error", this.handleError);
+
+ return this;
+ }
+
+ /** Close the websocket and unregister event handlers. */
+ public close(): void {
+ this.socket.close();
+
+ this.handleClose({ code: 1000 } as CloseEvent);
+
+ this.socket.removeEventListener("open", this.handleOpen);
+ this.socket.removeEventListener("message", this.handleMessage);
+ this.socket.removeEventListener("close", this.handleClose);
+ this.socket.removeEventListener("error", this.handleError);
+ }
+
+ /** Returns a promise that resolves when the websocket is open. */
+ public async waitForOpen(): Promise {
+ if (this.socket.readyState === core.ReconnectingWebSocket.OPEN) {
+ return this.socket;
+ }
+
+ return new Promise((resolve, reject) => {
+ this.socket.addEventListener("open", () => {
+ resolve(this.socket);
+ });
+
+ this.socket.addEventListener("error", (event: unknown) => {
+ reject(event);
+ });
+ });
+ }
+
+ /** Asserts that the websocket is open. */
+ private assertSocketIsOpen(): void {
+ if (!this.socket) {
+ throw new Error("Socket is not connected.");
+ }
+
+ if (this.socket.readyState !== core.ReconnectingWebSocket.OPEN) {
+ throw new Error("Socket is not open.");
+ }
+ }
+
+ /** Send a binary payload to the websocket. */
+ protected sendBinary(payload: ArrayBufferLike | Blob | ArrayBufferView): void {
+ this.socket.send(payload);
+ }
+
+ /** Send a JSON payload to the websocket. */
+ protected sendJson(
+ payload:
+ | Deepgram.speak.SpeakV1Text
+ | Deepgram.speak.SpeakV1Flush
+ | Deepgram.speak.SpeakV1Clear
+ | Deepgram.speak.SpeakV1Close,
+ ): void {
+ const jsonPayload = toJson(payload);
+ this.socket.send(jsonPayload);
+ }
+}
diff --git a/src/api/resources/speak/resources/v1/client/index.ts b/src/api/resources/speak/resources/v1/client/index.ts
new file mode 100644
index 00000000..cb0ff5c3
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/client/index.ts
@@ -0,0 +1 @@
+export {};
diff --git a/src/api/resources/speak/resources/v1/index.ts b/src/api/resources/speak/resources/v1/index.ts
new file mode 100644
index 00000000..0ef16e76
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/index.ts
@@ -0,0 +1,3 @@
+export * from "./client/index.js";
+export * from "./resources/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/speak/resources/v1/resources/audio/client/Client.ts b/src/api/resources/speak/resources/v1/resources/audio/client/Client.ts
new file mode 100644
index 00000000..ef5e19d2
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/resources/audio/client/Client.ts
@@ -0,0 +1,157 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type { BaseClientOptions, BaseRequestOptions } from "../../../../../../../../BaseClient.js";
+import { normalizeClientOptions } from "../../../../../../../../BaseClient.js";
+import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../../../../../core/headers.js";
+import * as core from "../../../../../../../../core/index.js";
+import * as environments from "../../../../../../../../environments.js";
+import * as errors from "../../../../../../../../errors/index.js";
+import * as Deepgram from "../../../../../../../index.js";
+
+export declare namespace AudioClient {
+ export interface Options extends BaseClientOptions {}
+
+ export interface RequestOptions extends BaseRequestOptions {}
+}
+
+export class AudioClient {
+ protected readonly _options: AudioClient.Options;
+
+ constructor(options: AudioClient.Options = {}) {
+ this._options = normalizeClientOptions(options);
+ }
+
+ /**
+ * Convert text into natural-sounding speech using Deepgram's TTS REST API
+ * @throws {@link Deepgram.BadRequestError}
+ */
+ public generate(
+ request: Deepgram.speak.v1.SpeakV1Request,
+ requestOptions?: AudioClient.RequestOptions,
+ ): core.HttpResponsePromise {
+ return core.HttpResponsePromise.fromPromise(this.__generate(request, requestOptions));
+ }
+
+ private async __generate(
+ request: Deepgram.speak.v1.SpeakV1Request,
+ requestOptions?: AudioClient.RequestOptions,
+ ): Promise> {
+ const {
+ callback,
+ callback_method: callbackMethod,
+ mip_opt_out: mipOptOut,
+ tag,
+ bit_rate: bitRate,
+ container,
+ encoding,
+ model,
+ sample_rate: sampleRate,
+ ..._body
+ } = request;
+ const _queryParams: Record = {};
+ if (callback != null) {
+ _queryParams.callback = callback;
+ }
+
+ if (callbackMethod != null) {
+ _queryParams.callback_method = callbackMethod;
+ }
+
+ if (mipOptOut != null) {
+ _queryParams.mip_opt_out = mipOptOut.toString();
+ }
+
+ if (tag != null) {
+ if (Array.isArray(tag)) {
+ _queryParams.tag = tag.map((item) => item);
+ } else {
+ _queryParams.tag = tag;
+ }
+ }
+
+ if (bitRate != null) {
+ _queryParams.bit_rate = bitRate.toString();
+ }
+
+ if (container != null) {
+ _queryParams.container = container;
+ }
+
+ if (encoding != null) {
+ _queryParams.encoding = encoding;
+ }
+
+ if (model != null) {
+ _queryParams.model = model;
+ }
+
+ if (sampleRate != null) {
+ _queryParams.sample_rate = sampleRate.toString();
+ }
+
+ const _headers: core.Fetcher.Args["headers"] = mergeHeaders(
+ this._options?.headers,
+ mergeOnlyDefinedHeaders({ ...(await this._getCustomAuthorizationHeaders()) }),
+ requestOptions?.headers,
+ );
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: core.url.join(
+ (await core.Supplier.get(this._options.baseUrl)) ??
+ (
+ (await core.Supplier.get(this._options.environment)) ??
+ environments.DeepgramEnvironment.Production
+ ).base,
+ "v1/speak",
+ ),
+ method: "POST",
+ headers: _headers,
+ contentType: "application/json",
+ queryParameters: { ..._queryParams, ...requestOptions?.queryParams },
+ requestType: "json",
+ body: _body,
+ responseType: "binary-response",
+ timeoutMs: (requestOptions?.timeoutInSeconds ?? this._options?.timeoutInSeconds ?? 60) * 1000,
+ maxRetries: requestOptions?.maxRetries ?? this._options?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ fetchFn: this._options?.fetch,
+ logging: this._options.logging,
+ });
+ if (_response.ok) {
+ return { data: _response.body, rawResponse: _response.rawResponse };
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 400:
+ throw new Deepgram.BadRequestError(_response.error.body as unknown, _response.rawResponse);
+ default:
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.DeepgramError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ rawResponse: _response.rawResponse,
+ });
+ case "timeout":
+ throw new errors.DeepgramTimeoutError("Timeout exceeded when calling POST /v1/speak.");
+ case "unknown":
+ throw new errors.DeepgramError({
+ message: _response.error.errorMessage,
+ rawResponse: _response.rawResponse,
+ });
+ }
+ }
+
+ protected async _getCustomAuthorizationHeaders(): Promise> {
+ const apiKeyValue = (await core.Supplier.get(this._options.apiKey)) ?? process?.env.DEEPGRAM_API_KEY;
+ return { Authorization: `Token ${apiKeyValue}` };
+ }
+}
diff --git a/src/api/resources/speak/resources/v1/resources/audio/client/index.ts b/src/api/resources/speak/resources/v1/resources/audio/client/index.ts
new file mode 100644
index 00000000..195f9aa8
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/resources/audio/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests/index.js";
diff --git a/src/api/resources/speak/resources/v1/resources/audio/client/requests/SpeakV1Request.ts b/src/api/resources/speak/resources/v1/resources/audio/client/requests/SpeakV1Request.ts
new file mode 100644
index 00000000..9a2e399e
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/resources/audio/client/requests/SpeakV1Request.ts
@@ -0,0 +1,32 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../../../../../../../../index.js";
+
+/**
+ * @example
+ * {
+ * text: "text"
+ * }
+ */
+export interface SpeakV1Request {
+ /** URL to which we'll make the callback request */
+ callback?: string;
+ /** HTTP method by which the callback request will be made */
+ callback_method?: Deepgram.speak.v1.AudioGenerateRequestCallbackMethod;
+ /** Opts out requests from the Deepgram Model Improvement Program. Refer to our Docs for pricing impacts before setting this to true. https://dpgr.am/deepgram-mip */
+ mip_opt_out?: boolean;
+ /** Label your requests for the purpose of identification during usage reporting */
+ tag?: string | string[];
+ /** The bitrate of the audio in bits per second. Choose from predefined ranges or specific values based on the encoding type. */
+ bit_rate?: number;
+ /** Container specifies the file format wrapper for the output audio. The available options depend on the encoding type. */
+ container?: Deepgram.speak.v1.AudioGenerateRequestContainer;
+ /** Encoding allows you to specify the expected encoding of your audio output */
+ encoding?: Deepgram.speak.v1.AudioGenerateRequestEncoding;
+ /** AI model used to process submitted text */
+ model?: Deepgram.speak.v1.AudioGenerateRequestModel;
+ /** Sample Rate specifies the sample rate for the output audio. Based on the encoding, different sample rates are supported. For some encodings, the sample rate is not configurable */
+ sample_rate?: number;
+ /** The text content to be converted to speech */
+ text: string;
+}
diff --git a/src/api/resources/speak/resources/v1/resources/audio/client/requests/index.ts b/src/api/resources/speak/resources/v1/resources/audio/client/requests/index.ts
new file mode 100644
index 00000000..9ac2ca0f
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/resources/audio/client/requests/index.ts
@@ -0,0 +1 @@
+export type { SpeakV1Request } from "./SpeakV1Request.js";
diff --git a/src/api/resources/speak/resources/v1/resources/audio/index.ts b/src/api/resources/speak/resources/v1/resources/audio/index.ts
new file mode 100644
index 00000000..d9adb1af
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/resources/audio/index.ts
@@ -0,0 +1,2 @@
+export * from "./client/index.js";
+export * from "./types/index.js";
diff --git a/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestCallbackMethod.ts b/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestCallbackMethod.ts
new file mode 100644
index 00000000..f3cf56c1
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestCallbackMethod.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const AudioGenerateRequestCallbackMethod = {
+ Post: "POST",
+ Put: "PUT",
+} as const;
+export type AudioGenerateRequestCallbackMethod =
+ (typeof AudioGenerateRequestCallbackMethod)[keyof typeof AudioGenerateRequestCallbackMethod];
diff --git a/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestContainer.ts b/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestContainer.ts
new file mode 100644
index 00000000..ff855e72
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestContainer.ts
@@ -0,0 +1,9 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const AudioGenerateRequestContainer = {
+ None: "none",
+ Wav: "wav",
+ Ogg: "ogg",
+} as const;
+export type AudioGenerateRequestContainer =
+ (typeof AudioGenerateRequestContainer)[keyof typeof AudioGenerateRequestContainer];
diff --git a/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestEncoding.ts b/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestEncoding.ts
new file mode 100644
index 00000000..2e500cd9
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestEncoding.ts
@@ -0,0 +1,13 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const AudioGenerateRequestEncoding = {
+ Linear16: "linear16",
+ Flac: "flac",
+ Mulaw: "mulaw",
+ Alaw: "alaw",
+ Mp3: "mp3",
+ Opus: "opus",
+ Aac: "aac",
+} as const;
+export type AudioGenerateRequestEncoding =
+ (typeof AudioGenerateRequestEncoding)[keyof typeof AudioGenerateRequestEncoding];
diff --git a/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestModel.ts b/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestModel.ts
new file mode 100644
index 00000000..4ac480c0
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/resources/audio/types/AudioGenerateRequestModel.ts
@@ -0,0 +1,68 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export const AudioGenerateRequestModel = {
+ AuraAsteriaEn: "aura-asteria-en",
+ AuraLunaEn: "aura-luna-en",
+ AuraStellaEn: "aura-stella-en",
+ AuraAthenaEn: "aura-athena-en",
+ AuraHeraEn: "aura-hera-en",
+ AuraOrionEn: "aura-orion-en",
+ AuraArcasEn: "aura-arcas-en",
+ AuraPerseusEn: "aura-perseus-en",
+ AuraAngusEn: "aura-angus-en",
+ AuraOrpheusEn: "aura-orpheus-en",
+ AuraHeliosEn: "aura-helios-en",
+ AuraZeusEn: "aura-zeus-en",
+ Aura2AmaltheaEn: "aura-2-amalthea-en",
+ Aura2AndromedaEn: "aura-2-andromeda-en",
+ Aura2ApolloEn: "aura-2-apollo-en",
+ Aura2ArcasEn: "aura-2-arcas-en",
+ Aura2AriesEn: "aura-2-aries-en",
+ Aura2AsteriaEn: "aura-2-asteria-en",
+ Aura2AthenaEn: "aura-2-athena-en",
+ Aura2AtlasEn: "aura-2-atlas-en",
+ Aura2AuroraEn: "aura-2-aurora-en",
+ Aura2CallistaEn: "aura-2-callista-en",
+ Aura2CordeliaEn: "aura-2-cordelia-en",
+ Aura2CoraEn: "aura-2-cora-en",
+ Aura2DeliaEn: "aura-2-delia-en",
+ Aura2DracoEn: "aura-2-draco-en",
+ Aura2ElectraEn: "aura-2-electra-en",
+ Aura2HarmoniaEn: "aura-2-harmonia-en",
+ Aura2HelenaEn: "aura-2-helena-en",
+ Aura2HeraEn: "aura-2-hera-en",
+ Aura2HermesEn: "aura-2-hermes-en",
+ Aura2HyperionEn: "aura-2-hyperion-en",
+ Aura2IrisEn: "aura-2-iris-en",
+ Aura2JanusEn: "aura-2-janus-en",
+ Aura2JunoEn: "aura-2-juno-en",
+ Aura2JupiterEn: "aura-2-jupiter-en",
+ Aura2LunaEn: "aura-2-luna-en",
+ Aura2MarsEn: "aura-2-mars-en",
+ Aura2MinervaEn: "aura-2-minerva-en",
+ Aura2NeptuneEn: "aura-2-neptune-en",
+ Aura2OdysseusEn: "aura-2-odysseus-en",
+ Aura2OpheliaEn: "aura-2-ophelia-en",
+ Aura2OrionEn: "aura-2-orion-en",
+ Aura2OrpheusEn: "aura-2-orpheus-en",
+ Aura2PandoraEn: "aura-2-pandora-en",
+ Aura2PhoebeEn: "aura-2-phoebe-en",
+ Aura2PlutoEn: "aura-2-pluto-en",
+ Aura2SaturnEn: "aura-2-saturn-en",
+ Aura2SeleneEn: "aura-2-selene-en",
+ Aura2ThaliaEn: "aura-2-thalia-en",
+ Aura2TheiaEn: "aura-2-theia-en",
+ Aura2VestaEn: "aura-2-vesta-en",
+ Aura2ZeusEn: "aura-2-zeus-en",
+ Aura2SirioEs: "aura-2-sirio-es",
+ Aura2NestorEs: "aura-2-nestor-es",
+ Aura2CarinaEs: "aura-2-carina-es",
+ Aura2CelesteEs: "aura-2-celeste-es",
+ Aura2AlvaroEs: "aura-2-alvaro-es",
+ Aura2DianaEs: "aura-2-diana-es",
+ Aura2AquilaEs: "aura-2-aquila-es",
+ Aura2SelenaEs: "aura-2-selena-es",
+ Aura2EstrellaEs: "aura-2-estrella-es",
+ Aura2JavierEs: "aura-2-javier-es",
+} as const;
+export type AudioGenerateRequestModel = (typeof AudioGenerateRequestModel)[keyof typeof AudioGenerateRequestModel];
diff --git a/src/api/resources/speak/resources/v1/resources/audio/types/index.ts b/src/api/resources/speak/resources/v1/resources/audio/types/index.ts
new file mode 100644
index 00000000..f62341ab
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/resources/audio/types/index.ts
@@ -0,0 +1,4 @@
+export * from "./AudioGenerateRequestCallbackMethod.js";
+export * from "./AudioGenerateRequestContainer.js";
+export * from "./AudioGenerateRequestEncoding.js";
+export * from "./AudioGenerateRequestModel.js";
diff --git a/src/api/resources/speak/resources/v1/resources/index.ts b/src/api/resources/speak/resources/v1/resources/index.ts
new file mode 100644
index 00000000..d1047f1a
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/resources/index.ts
@@ -0,0 +1,3 @@
+export * from "./audio/client/requests/index.js";
+export * as audio from "./audio/index.js";
+export * from "./audio/types/index.js";
diff --git a/src/api/resources/speak/resources/v1/types/SpeakV1Clear.ts b/src/api/resources/speak/resources/v1/types/SpeakV1Clear.ts
new file mode 100644
index 00000000..37bc5670
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/types/SpeakV1Clear.ts
@@ -0,0 +1,16 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface SpeakV1Clear {
+ /** Message type identifier */
+ type: SpeakV1Clear.Type;
+}
+
+export namespace SpeakV1Clear {
+ /** Message type identifier */
+ export const Type = {
+ Flush: "Flush",
+ Clear: "Clear",
+ Close: "Close",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+}
diff --git a/src/api/resources/speak/resources/v1/types/SpeakV1Cleared.ts b/src/api/resources/speak/resources/v1/types/SpeakV1Cleared.ts
new file mode 100644
index 00000000..5d9ecb2c
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/types/SpeakV1Cleared.ts
@@ -0,0 +1,17 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface SpeakV1Cleared {
+ /** Message type identifier */
+ type: SpeakV1Cleared.Type;
+ /** The sequence ID of the response */
+ sequence_id: number;
+}
+
+export namespace SpeakV1Cleared {
+ /** Message type identifier */
+ export const Type = {
+ Flushed: "Flushed",
+ Cleared: "Cleared",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+}
diff --git a/src/api/resources/speak/resources/v1/types/SpeakV1Close.ts b/src/api/resources/speak/resources/v1/types/SpeakV1Close.ts
new file mode 100644
index 00000000..375800c8
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/types/SpeakV1Close.ts
@@ -0,0 +1,16 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface SpeakV1Close {
+ /** Message type identifier */
+ type: SpeakV1Close.Type;
+}
+
+export namespace SpeakV1Close {
+ /** Message type identifier */
+ export const Type = {
+ Flush: "Flush",
+ Clear: "Clear",
+ Close: "Close",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+}
diff --git a/src/api/resources/speak/resources/v1/types/SpeakV1Flush.ts b/src/api/resources/speak/resources/v1/types/SpeakV1Flush.ts
new file mode 100644
index 00000000..dd872220
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/types/SpeakV1Flush.ts
@@ -0,0 +1,16 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface SpeakV1Flush {
+ /** Message type identifier */
+ type: SpeakV1Flush.Type;
+}
+
+export namespace SpeakV1Flush {
+ /** Message type identifier */
+ export const Type = {
+ Flush: "Flush",
+ Clear: "Clear",
+ Close: "Close",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+}
diff --git a/src/api/resources/speak/resources/v1/types/SpeakV1Flushed.ts b/src/api/resources/speak/resources/v1/types/SpeakV1Flushed.ts
new file mode 100644
index 00000000..5e70ccb6
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/types/SpeakV1Flushed.ts
@@ -0,0 +1,17 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface SpeakV1Flushed {
+ /** Message type identifier */
+ type: SpeakV1Flushed.Type;
+ /** The sequence ID of the response */
+ sequence_id: number;
+}
+
+export namespace SpeakV1Flushed {
+ /** Message type identifier */
+ export const Type = {
+ Flushed: "Flushed",
+ Cleared: "Cleared",
+ } as const;
+ export type Type = (typeof Type)[keyof typeof Type];
+}
diff --git a/src/api/resources/speak/resources/v1/types/SpeakV1Metadata.ts b/src/api/resources/speak/resources/v1/types/SpeakV1Metadata.ts
new file mode 100644
index 00000000..20576eab
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/types/SpeakV1Metadata.ts
@@ -0,0 +1,14 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface SpeakV1Metadata {
+ /** Message type identifier */
+ type: "Metadata";
+ /** Unique identifier for the request */
+ request_id: string;
+ /** Name of the model being used */
+ model_name: string;
+ /** Version of the model being used */
+ model_version: string;
+ /** Unique identifier for the model */
+ model_uuid: string;
+}
diff --git a/src/api/resources/speak/resources/v1/types/SpeakV1Text.ts b/src/api/resources/speak/resources/v1/types/SpeakV1Text.ts
new file mode 100644
index 00000000..65fb3b6a
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/types/SpeakV1Text.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface SpeakV1Text {
+ /** Message type identifier */
+ type: "Speak";
+ /** The input text to be converted to speech */
+ text: string;
+}
diff --git a/src/api/resources/speak/resources/v1/types/SpeakV1Warning.ts b/src/api/resources/speak/resources/v1/types/SpeakV1Warning.ts
new file mode 100644
index 00000000..ead60ff8
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/types/SpeakV1Warning.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface SpeakV1Warning {
+ /** Message type identifier */
+ type: "Warning";
+ /** A description of what went wrong */
+ description: string;
+ /** Error code identifying the type of error */
+ code: string;
+}
diff --git a/src/api/resources/speak/resources/v1/types/index.ts b/src/api/resources/speak/resources/v1/types/index.ts
new file mode 100644
index 00000000..0f1783b8
--- /dev/null
+++ b/src/api/resources/speak/resources/v1/types/index.ts
@@ -0,0 +1,8 @@
+export * from "./SpeakV1Clear.js";
+export * from "./SpeakV1Cleared.js";
+export * from "./SpeakV1Close.js";
+export * from "./SpeakV1Flush.js";
+export * from "./SpeakV1Flushed.js";
+export * from "./SpeakV1Metadata.js";
+export * from "./SpeakV1Text.js";
+export * from "./SpeakV1Warning.js";
diff --git a/src/api/types/AgentThinkModelsV1Response.ts b/src/api/types/AgentThinkModelsV1Response.ts
new file mode 100644
index 00000000..c5b9f47e
--- /dev/null
+++ b/src/api/types/AgentThinkModelsV1Response.ts
@@ -0,0 +1,56 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface AgentThinkModelsV1Response {
+ models: AgentThinkModelsV1Response.Models.Item[];
+}
+
+export namespace AgentThinkModelsV1Response {
+ export type Models = Models.Item[];
+
+ export namespace Models {
+ export type Item =
+ /**
+ * OpenAI models */
+ | {
+ id:
+ | "gpt-5"
+ | "gpt-5-mini"
+ | "gpt-5-nano"
+ | "gpt-4.1"
+ | "gpt-4.1-mini"
+ | "gpt-4.1-nano"
+ | "gpt-4o"
+ | "gpt-4o-mini";
+ name: string;
+ provider: "open_ai";
+ }
+ /**
+ * Anthropic models */
+ | {
+ id: "claude-3-5-haiku-latest" | "claude-sonnet-4-20250514";
+ name: string;
+ provider: "anthropic";
+ }
+ /**
+ * Google models */
+ | {
+ id: "gemini-2.5-flash" | "gemini-2.0-flash" | "gemini-2.0-flash-lite";
+ name: string;
+ provider: "google";
+ }
+ /**
+ * Groq models */
+ | {
+ id: "openai/gpt-oss-20b";
+ name: string;
+ provider: "groq";
+ }
+ /**
+ * AWS Bedrock models (custom models accepted) */
+ | {
+ id: string;
+ name: string;
+ provider: "aws_bedrock";
+ };
+ }
+}
diff --git a/src/api/types/BillingBreakdownV1Response.ts b/src/api/types/BillingBreakdownV1Response.ts
new file mode 100644
index 00000000..2560c5c9
--- /dev/null
+++ b/src/api/types/BillingBreakdownV1Response.ts
@@ -0,0 +1,46 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface BillingBreakdownV1Response {
+ /** Start date of the billing summmary period */
+ start: string;
+ /** End date of the billing summary period */
+ end: string;
+ resolution: BillingBreakdownV1Response.Resolution;
+ results: BillingBreakdownV1Response.Results.Item[];
+}
+
+export namespace BillingBreakdownV1Response {
+ export interface Resolution {
+ /** Time unit for the resolution */
+ units: string;
+ /** Amount of units */
+ amount: number;
+ }
+
+ export type Results = Results.Item[];
+
+ export namespace Results {
+ export interface Item {
+ /** USD cost of the billing for this grouping */
+ dollars: number;
+ grouping: Item.Grouping;
+ }
+
+ export namespace Item {
+ export interface Grouping {
+ /** Start date for this group */
+ start?: string;
+ /** End date for this group */
+ end?: string;
+ /** Optional accessor identifier, null unless grouped by accessor. */
+ accessor?: string;
+ /** Optional deployment identifier, null unless grouped by deployment. */
+ deployment?: string;
+ /** Optional line item identifier, null unless grouped by line item. */
+ line_item?: string;
+ /** Optional list of tags, null unless grouped by tags. */
+ tags?: string[];
+ }
+ }
+ }
+}
diff --git a/src/api/types/CreateKeyV1RequestOne.ts b/src/api/types/CreateKeyV1RequestOne.ts
new file mode 100644
index 00000000..d4d79107
--- /dev/null
+++ b/src/api/types/CreateKeyV1RequestOne.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type CreateKeyV1RequestOne = unknown;
diff --git a/src/api/types/CreateKeyV1Response.ts b/src/api/types/CreateKeyV1Response.ts
new file mode 100644
index 00000000..6b4dfce1
--- /dev/null
+++ b/src/api/types/CreateKeyV1Response.ts
@@ -0,0 +1,19 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * API key created
+ */
+export interface CreateKeyV1Response {
+ /** The unique identifier of the API key */
+ api_key_id?: string;
+ /** The API key */
+ key?: string;
+ /** A comment for the API key */
+ comment?: string;
+ /** The scopes for the API key */
+ scopes?: string[];
+ /** The tags for the API key */
+ tags?: string[];
+ /** The expiration date of the API key */
+ expiration_date?: string;
+}
diff --git a/src/api/types/CreateProjectDistributionCredentialsV1Response.ts b/src/api/types/CreateProjectDistributionCredentialsV1Response.ts
new file mode 100644
index 00000000..116662a1
--- /dev/null
+++ b/src/api/types/CreateProjectDistributionCredentialsV1Response.ts
@@ -0,0 +1,28 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface CreateProjectDistributionCredentialsV1Response {
+ member: CreateProjectDistributionCredentialsV1Response.Member;
+ distribution_credentials: CreateProjectDistributionCredentialsV1Response.DistributionCredentials;
+}
+
+export namespace CreateProjectDistributionCredentialsV1Response {
+ export interface Member {
+ /** Unique identifier for the member */
+ member_id: string;
+ /** Email address of the member */
+ email: string;
+ }
+
+ export interface DistributionCredentials {
+ /** Unique identifier for the distribution credentials */
+ distribution_credentials_id: string;
+ /** The provider of the distribution service */
+ provider: string;
+ /** Optional comment about the credentials */
+ comment?: string;
+ /** List of permission scopes for the credentials */
+ scopes: string[];
+ /** Timestamp when the credentials were created */
+ created: string;
+ }
+}
diff --git a/src/api/types/CreateProjectInviteV1Response.ts b/src/api/types/CreateProjectInviteV1Response.ts
new file mode 100644
index 00000000..95fbfbea
--- /dev/null
+++ b/src/api/types/CreateProjectInviteV1Response.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface CreateProjectInviteV1Response {
+ /** confirmation message */
+ message?: string;
+}
diff --git a/src/api/types/DeleteProjectInviteV1Response.ts b/src/api/types/DeleteProjectInviteV1Response.ts
new file mode 100644
index 00000000..6efceff0
--- /dev/null
+++ b/src/api/types/DeleteProjectInviteV1Response.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface DeleteProjectInviteV1Response {
+ /** confirmation message */
+ message?: string;
+}
diff --git a/src/api/types/DeleteProjectKeyV1Response.ts b/src/api/types/DeleteProjectKeyV1Response.ts
new file mode 100644
index 00000000..a2cd0864
--- /dev/null
+++ b/src/api/types/DeleteProjectKeyV1Response.ts
@@ -0,0 +1,5 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface DeleteProjectKeyV1Response {
+ message?: string;
+}
diff --git a/src/api/types/DeleteProjectMemberV1Response.ts b/src/api/types/DeleteProjectMemberV1Response.ts
new file mode 100644
index 00000000..686ec2a0
--- /dev/null
+++ b/src/api/types/DeleteProjectMemberV1Response.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface DeleteProjectMemberV1Response {
+ /** confirmation message */
+ message?: string;
+}
diff --git a/src/api/types/DeleteProjectV1Response.ts b/src/api/types/DeleteProjectV1Response.ts
new file mode 100644
index 00000000..40b89594
--- /dev/null
+++ b/src/api/types/DeleteProjectV1Response.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface DeleteProjectV1Response {
+ /** Confirmation message */
+ message?: string;
+}
diff --git a/src/api/types/ErrorResponse.ts b/src/api/types/ErrorResponse.ts
new file mode 100644
index 00000000..dfddd4c4
--- /dev/null
+++ b/src/api/types/ErrorResponse.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../index.js";
+
+export type ErrorResponse =
+ | Deepgram.ErrorResponseTextError
+ | Deepgram.ErrorResponseLegacyError
+ | Deepgram.ErrorResponseModernError;
diff --git a/src/api/types/ErrorResponseLegacyError.ts b/src/api/types/ErrorResponseLegacyError.ts
new file mode 100644
index 00000000..eff1a6f9
--- /dev/null
+++ b/src/api/types/ErrorResponseLegacyError.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ErrorResponseLegacyError {
+ /** The error code */
+ err_code?: string;
+ /** The error message */
+ err_msg?: string;
+ /** The request ID */
+ request_id?: string;
+}
diff --git a/src/api/types/ErrorResponseModernError.ts b/src/api/types/ErrorResponseModernError.ts
new file mode 100644
index 00000000..e000b42a
--- /dev/null
+++ b/src/api/types/ErrorResponseModernError.ts
@@ -0,0 +1,12 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ErrorResponseModernError {
+ /** The category of the error */
+ category?: string;
+ /** A message about the error */
+ message?: string;
+ /** A description of the error */
+ details?: string;
+ /** The unique identifier of the request */
+ request_id?: string;
+}
diff --git a/src/api/types/ErrorResponseTextError.ts b/src/api/types/ErrorResponseTextError.ts
new file mode 100644
index 00000000..c7d34a39
--- /dev/null
+++ b/src/api/types/ErrorResponseTextError.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ErrorResponseTextError = string;
diff --git a/src/api/types/GetModelV1Response.ts b/src/api/types/GetModelV1Response.ts
new file mode 100644
index 00000000..835ff0c1
--- /dev/null
+++ b/src/api/types/GetModelV1Response.ts
@@ -0,0 +1,33 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type GetModelV1Response =
+ | {
+ name?: string | undefined;
+ canonical_name?: string | undefined;
+ architecture?: string | undefined;
+ languages?: string[] | undefined;
+ version?: string | undefined;
+ uuid?: string | undefined;
+ batch?: boolean | undefined;
+ streaming?: boolean | undefined;
+ formatted_output?: boolean | undefined;
+ }
+ | {
+ name?: string | undefined;
+ canonical_name?: string | undefined;
+ architecture?: string | undefined;
+ languages?: string[] | undefined;
+ version?: string | undefined;
+ uuid?: string | undefined;
+ metadata?:
+ | {
+ accent?: string | undefined;
+ age?: string | undefined;
+ color?: string | undefined;
+ image?: string | undefined;
+ sample?: string | undefined;
+ tags?: string[] | undefined;
+ use_cases?: string[] | undefined;
+ }
+ | undefined;
+ };
diff --git a/src/api/types/GetProjectBalanceV1Response.ts b/src/api/types/GetProjectBalanceV1Response.ts
new file mode 100644
index 00000000..41a923a2
--- /dev/null
+++ b/src/api/types/GetProjectBalanceV1Response.ts
@@ -0,0 +1,12 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface GetProjectBalanceV1Response {
+ /** The unique identifier of the balance */
+ balance_id?: string;
+ /** The amount of the balance */
+ amount?: number;
+ /** The units of the balance, such as "USD" */
+ units?: string;
+ /** Description or reference of the purchase */
+ purchase_order_id?: string;
+}
diff --git a/src/api/types/GetProjectDistributionCredentialsV1Response.ts b/src/api/types/GetProjectDistributionCredentialsV1Response.ts
new file mode 100644
index 00000000..b3a727dc
--- /dev/null
+++ b/src/api/types/GetProjectDistributionCredentialsV1Response.ts
@@ -0,0 +1,28 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface GetProjectDistributionCredentialsV1Response {
+ member: GetProjectDistributionCredentialsV1Response.Member;
+ distribution_credentials: GetProjectDistributionCredentialsV1Response.DistributionCredentials;
+}
+
+export namespace GetProjectDistributionCredentialsV1Response {
+ export interface Member {
+ /** Unique identifier for the member */
+ member_id: string;
+ /** Email address of the member */
+ email: string;
+ }
+
+ export interface DistributionCredentials {
+ /** Unique identifier for the distribution credentials */
+ distribution_credentials_id: string;
+ /** The provider of the distribution service */
+ provider: string;
+ /** Optional comment about the credentials */
+ comment?: string;
+ /** List of permission scopes for the credentials */
+ scopes: string[];
+ /** Timestamp when the credentials were created */
+ created: string;
+ }
+}
diff --git a/src/api/types/GetProjectKeyV1Response.ts b/src/api/types/GetProjectKeyV1Response.ts
new file mode 100644
index 00000000..2043f3f5
--- /dev/null
+++ b/src/api/types/GetProjectKeyV1Response.ts
@@ -0,0 +1,32 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface GetProjectKeyV1Response {
+ item?: GetProjectKeyV1Response.Item;
+}
+
+export namespace GetProjectKeyV1Response {
+ export interface Item {
+ member?: Item.Member;
+ }
+
+ export namespace Item {
+ export interface Member {
+ member_id?: string;
+ email?: string;
+ first_name?: string;
+ last_name?: string;
+ api_key?: Member.ApiKey;
+ }
+
+ export namespace Member {
+ export interface ApiKey {
+ api_key_id?: string;
+ comment?: string;
+ scopes?: string[];
+ tags?: string[];
+ expiration_date?: string;
+ created?: string;
+ }
+ }
+ }
+}
diff --git a/src/api/types/GetProjectRequestV1Response.ts b/src/api/types/GetProjectRequestV1Response.ts
new file mode 100644
index 00000000..440ef178
--- /dev/null
+++ b/src/api/types/GetProjectRequestV1Response.ts
@@ -0,0 +1,7 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../index.js";
+
+export interface GetProjectRequestV1Response {
+ request?: Deepgram.ProjectRequestResponse;
+}
diff --git a/src/api/types/GetProjectV1Response.ts b/src/api/types/GetProjectV1Response.ts
new file mode 100644
index 00000000..1d91da68
--- /dev/null
+++ b/src/api/types/GetProjectV1Response.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface GetProjectV1Response {
+ /** The unique identifier of the project */
+ project_id?: string;
+ /** Model Improvement Program opt-out */
+ mip_opt_out?: boolean;
+ /** The name of the project */
+ name?: string;
+}
diff --git a/src/api/types/GrantV1Response.ts b/src/api/types/GrantV1Response.ts
new file mode 100644
index 00000000..4e91adaa
--- /dev/null
+++ b/src/api/types/GrantV1Response.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface GrantV1Response {
+ /** JSON Web Token (JWT) */
+ access_token: string;
+ /** Time in seconds until the JWT expires */
+ expires_in?: number;
+}
diff --git a/src/api/types/LeaveProjectV1Response.ts b/src/api/types/LeaveProjectV1Response.ts
new file mode 100644
index 00000000..9d6f18a5
--- /dev/null
+++ b/src/api/types/LeaveProjectV1Response.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface LeaveProjectV1Response {
+ /** confirmation message */
+ message?: string;
+}
diff --git a/src/api/types/ListBillingFieldsV1Response.ts b/src/api/types/ListBillingFieldsV1Response.ts
new file mode 100644
index 00000000..72e4dca4
--- /dev/null
+++ b/src/api/types/ListBillingFieldsV1Response.ts
@@ -0,0 +1,26 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListBillingFieldsV1Response {
+ /** List of accessor UUIDs for the time period */
+ accessors?: string[];
+ /** List of deployment types for the time period */
+ deployments?: ListBillingFieldsV1Response.Deployments.Item[];
+ /** List of tags for the time period */
+ tags?: string[];
+ /** Map of line item names to human-readable descriptions for the time period */
+ line_items?: Record;
+}
+
+export namespace ListBillingFieldsV1Response {
+ export type Deployments = Deployments.Item[];
+
+ export namespace Deployments {
+ export const Item = {
+ Hosted: "hosted",
+ Beta: "beta",
+ SelfHosted: "self-hosted",
+ Dedicated: "dedicated",
+ } as const;
+ export type Item = (typeof Item)[keyof typeof Item];
+ }
+}
diff --git a/src/api/types/ListModelsV1Response.ts b/src/api/types/ListModelsV1Response.ts
new file mode 100644
index 00000000..115e3dee
--- /dev/null
+++ b/src/api/types/ListModelsV1Response.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../index.js";
+
+export interface ListModelsV1Response {
+ stt?: Deepgram.ListModelsV1ResponseSttModels[];
+ tts?: Deepgram.ListModelsV1ResponseTtsModels[];
+}
diff --git a/src/api/types/ListModelsV1ResponseSttModels.ts b/src/api/types/ListModelsV1ResponseSttModels.ts
new file mode 100644
index 00000000..247b34a8
--- /dev/null
+++ b/src/api/types/ListModelsV1ResponseSttModels.ts
@@ -0,0 +1,13 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListModelsV1ResponseSttModels {
+ name?: string;
+ canonical_name?: string;
+ architecture?: string;
+ languages?: string[];
+ version?: string;
+ uuid?: string;
+ batch?: boolean;
+ streaming?: boolean;
+ formatted_output?: boolean;
+}
diff --git a/src/api/types/ListModelsV1ResponseTtsModels.ts b/src/api/types/ListModelsV1ResponseTtsModels.ts
new file mode 100644
index 00000000..688c99ce
--- /dev/null
+++ b/src/api/types/ListModelsV1ResponseTtsModels.ts
@@ -0,0 +1,23 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListModelsV1ResponseTtsModels {
+ name?: string;
+ canonical_name?: string;
+ architecture?: string;
+ languages?: string[];
+ version?: string;
+ uuid?: string;
+ metadata?: ListModelsV1ResponseTtsModels.Metadata;
+}
+
+export namespace ListModelsV1ResponseTtsModels {
+ export interface Metadata {
+ accent?: string;
+ age?: string;
+ color?: string;
+ image?: string;
+ sample?: string;
+ tags?: string[];
+ use_cases?: string[];
+ }
+}
diff --git a/src/api/types/ListProjectBalancesV1Response.ts b/src/api/types/ListProjectBalancesV1Response.ts
new file mode 100644
index 00000000..a16a2cfe
--- /dev/null
+++ b/src/api/types/ListProjectBalancesV1Response.ts
@@ -0,0 +1,22 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListProjectBalancesV1Response {
+ balances?: ListProjectBalancesV1Response.Balances.Item[];
+}
+
+export namespace ListProjectBalancesV1Response {
+ export type Balances = Balances.Item[];
+
+ export namespace Balances {
+ export interface Item {
+ /** The unique identifier of the balance */
+ balance_id?: string;
+ /** The amount of the balance */
+ amount?: number;
+ /** The units of the balance, such as "USD" */
+ units?: string;
+ /** Description or reference of the purchase */
+ purchase_order_id?: string;
+ }
+ }
+}
diff --git a/src/api/types/ListProjectDistributionCredentialsV1Response.ts b/src/api/types/ListProjectDistributionCredentialsV1Response.ts
new file mode 100644
index 00000000..9244388a
--- /dev/null
+++ b/src/api/types/ListProjectDistributionCredentialsV1Response.ts
@@ -0,0 +1,39 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListProjectDistributionCredentialsV1Response {
+ /** Array of distribution credentials with associated member information */
+ distribution_credentials?: ListProjectDistributionCredentialsV1Response.DistributionCredentials.Item[];
+}
+
+export namespace ListProjectDistributionCredentialsV1Response {
+ export type DistributionCredentials = DistributionCredentials.Item[];
+
+ export namespace DistributionCredentials {
+ export interface Item {
+ member: Item.Member;
+ distribution_credentials: Item.DistributionCredentials;
+ }
+
+ export namespace Item {
+ export interface Member {
+ /** Unique identifier for the member */
+ member_id: string;
+ /** Email address of the member */
+ email: string;
+ }
+
+ export interface DistributionCredentials {
+ /** Unique identifier for the distribution credentials */
+ distribution_credentials_id: string;
+ /** The provider of the distribution service */
+ provider: string;
+ /** Optional comment about the credentials */
+ comment?: string;
+ /** List of permission scopes for the credentials */
+ scopes: string[];
+ /** Timestamp when the credentials were created */
+ created: string;
+ }
+ }
+ }
+}
diff --git a/src/api/types/ListProjectInvitesV1Response.ts b/src/api/types/ListProjectInvitesV1Response.ts
new file mode 100644
index 00000000..f7b69603
--- /dev/null
+++ b/src/api/types/ListProjectInvitesV1Response.ts
@@ -0,0 +1,18 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListProjectInvitesV1Response {
+ invites?: ListProjectInvitesV1Response.Invites.Item[];
+}
+
+export namespace ListProjectInvitesV1Response {
+ export type Invites = Invites.Item[];
+
+ export namespace Invites {
+ export interface Item {
+ /** The email address of the invitee */
+ email?: string;
+ /** The scope of the invitee */
+ scope?: string;
+ }
+ }
+}
diff --git a/src/api/types/ListProjectKeysV1Response.ts b/src/api/types/ListProjectKeysV1Response.ts
new file mode 100644
index 00000000..843b630a
--- /dev/null
+++ b/src/api/types/ListProjectKeysV1Response.ts
@@ -0,0 +1,30 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListProjectKeysV1Response {
+ api_keys?: ListProjectKeysV1Response.ApiKeys.Item[];
+}
+
+export namespace ListProjectKeysV1Response {
+ export type ApiKeys = ApiKeys.Item[];
+
+ export namespace ApiKeys {
+ export interface Item {
+ member?: Item.Member;
+ api_key?: Item.ApiKey;
+ }
+
+ export namespace Item {
+ export interface Member {
+ member_id?: string;
+ email?: string;
+ }
+
+ export interface ApiKey {
+ api_key_id?: string;
+ comment?: string;
+ scopes?: string[];
+ created?: string;
+ }
+ }
+ }
+}
diff --git a/src/api/types/ListProjectMemberScopesV1Response.ts b/src/api/types/ListProjectMemberScopesV1Response.ts
new file mode 100644
index 00000000..372766ef
--- /dev/null
+++ b/src/api/types/ListProjectMemberScopesV1Response.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListProjectMemberScopesV1Response {
+ /** The API scopes of the member */
+ scopes?: string[];
+}
diff --git a/src/api/types/ListProjectMembersV1Response.ts b/src/api/types/ListProjectMembersV1Response.ts
new file mode 100644
index 00000000..34ca0079
--- /dev/null
+++ b/src/api/types/ListProjectMembersV1Response.ts
@@ -0,0 +1,17 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListProjectMembersV1Response {
+ members?: ListProjectMembersV1Response.Members.Item[];
+}
+
+export namespace ListProjectMembersV1Response {
+ export type Members = Members.Item[];
+
+ export namespace Members {
+ export interface Item {
+ /** The unique identifier of the member */
+ member_id?: string;
+ email?: string;
+ }
+ }
+}
diff --git a/src/api/types/ListProjectPurchasesV1Response.ts b/src/api/types/ListProjectPurchasesV1Response.ts
new file mode 100644
index 00000000..6788fa35
--- /dev/null
+++ b/src/api/types/ListProjectPurchasesV1Response.ts
@@ -0,0 +1,20 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListProjectPurchasesV1Response {
+ orders?: ListProjectPurchasesV1Response.Orders.Item[];
+}
+
+export namespace ListProjectPurchasesV1Response {
+ export type Orders = Orders.Item[];
+
+ export namespace Orders {
+ export interface Item {
+ order_id?: string;
+ expiration?: string;
+ created?: string;
+ amount?: number;
+ units?: string;
+ order_type?: string;
+ }
+ }
+}
diff --git a/src/api/types/ListProjectRequestsV1Response.ts b/src/api/types/ListProjectRequestsV1Response.ts
new file mode 100644
index 00000000..37578d36
--- /dev/null
+++ b/src/api/types/ListProjectRequestsV1Response.ts
@@ -0,0 +1,11 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../index.js";
+
+export interface ListProjectRequestsV1Response {
+ /** The page number of the paginated response */
+ page?: number;
+ /** The number of results per page */
+ limit?: number;
+ requests?: Deepgram.ProjectRequestResponse[];
+}
diff --git a/src/api/types/ListProjectsV1Response.ts b/src/api/types/ListProjectsV1Response.ts
new file mode 100644
index 00000000..7374b20c
--- /dev/null
+++ b/src/api/types/ListProjectsV1Response.ts
@@ -0,0 +1,18 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListProjectsV1Response {
+ projects?: ListProjectsV1Response.Projects.Item[];
+}
+
+export namespace ListProjectsV1Response {
+ export type Projects = Projects.Item[];
+
+ export namespace Projects {
+ export interface Item {
+ /** The unique identifier of the project */
+ project_id?: string;
+ /** The name of the project */
+ name?: string;
+ }
+ }
+}
diff --git a/src/api/types/ListenV1AcceptedResponse.ts b/src/api/types/ListenV1AcceptedResponse.ts
new file mode 100644
index 00000000..eee13ab6
--- /dev/null
+++ b/src/api/types/ListenV1AcceptedResponse.ts
@@ -0,0 +1,9 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Accepted response for asynchronous transcription requests
+ */
+export interface ListenV1AcceptedResponse {
+ /** Unique identifier for tracking the asynchronous request */
+ request_id: string;
+}
diff --git a/src/api/types/ListenV1Callback.ts b/src/api/types/ListenV1Callback.ts
new file mode 100644
index 00000000..d9046700
--- /dev/null
+++ b/src/api/types/ListenV1Callback.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1Callback = unknown;
diff --git a/src/api/types/ListenV1CallbackMethod.ts b/src/api/types/ListenV1CallbackMethod.ts
new file mode 100644
index 00000000..337f0475
--- /dev/null
+++ b/src/api/types/ListenV1CallbackMethod.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** HTTP method by which the callback request will be made */
+export const ListenV1CallbackMethod = {
+ Post: "POST",
+ Get: "GET",
+ Put: "PUT",
+ Delete: "DELETE",
+} as const;
+export type ListenV1CallbackMethod = (typeof ListenV1CallbackMethod)[keyof typeof ListenV1CallbackMethod];
diff --git a/src/api/types/ListenV1Channels.ts b/src/api/types/ListenV1Channels.ts
new file mode 100644
index 00000000..362953e4
--- /dev/null
+++ b/src/api/types/ListenV1Channels.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1Channels = unknown;
diff --git a/src/api/types/ListenV1Diarize.ts b/src/api/types/ListenV1Diarize.ts
new file mode 100644
index 00000000..feddf67c
--- /dev/null
+++ b/src/api/types/ListenV1Diarize.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Defaults to `false`. Recognize speaker changes. Each word in the transcript will be assigned a speaker number starting at 0 */
+export const ListenV1Diarize = {
+ True: "true",
+ False: "false",
+} as const;
+export type ListenV1Diarize = (typeof ListenV1Diarize)[keyof typeof ListenV1Diarize];
diff --git a/src/api/types/ListenV1Dictation.ts b/src/api/types/ListenV1Dictation.ts
new file mode 100644
index 00000000..eee20e68
--- /dev/null
+++ b/src/api/types/ListenV1Dictation.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Identify and extract key entities from content in submitted audio */
+export const ListenV1Dictation = {
+ True: "true",
+ False: "false",
+} as const;
+export type ListenV1Dictation = (typeof ListenV1Dictation)[keyof typeof ListenV1Dictation];
diff --git a/src/api/types/ListenV1Encoding.ts b/src/api/types/ListenV1Encoding.ts
new file mode 100644
index 00000000..689c33ed
--- /dev/null
+++ b/src/api/types/ListenV1Encoding.ts
@@ -0,0 +1,17 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Specify the expected encoding of your submitted audio */
+export const ListenV1Encoding = {
+ Linear16: "linear16",
+ Linear32: "linear32",
+ Flac: "flac",
+ Alaw: "alaw",
+ Mulaw: "mulaw",
+ AmrNb: "amr-nb",
+ AmrWb: "amr-wb",
+ Opus: "opus",
+ OggOpus: "ogg-opus",
+ Speex: "speex",
+ G729: "g729",
+} as const;
+export type ListenV1Encoding = (typeof ListenV1Encoding)[keyof typeof ListenV1Encoding];
diff --git a/src/api/types/ListenV1Endpointing.ts b/src/api/types/ListenV1Endpointing.ts
new file mode 100644
index 00000000..2b313a03
--- /dev/null
+++ b/src/api/types/ListenV1Endpointing.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1Endpointing = unknown;
diff --git a/src/api/types/ListenV1Extra.ts b/src/api/types/ListenV1Extra.ts
new file mode 100644
index 00000000..8457e361
--- /dev/null
+++ b/src/api/types/ListenV1Extra.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1Extra = unknown;
diff --git a/src/api/types/ListenV1InterimResults.ts b/src/api/types/ListenV1InterimResults.ts
new file mode 100644
index 00000000..ae6fd8d3
--- /dev/null
+++ b/src/api/types/ListenV1InterimResults.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Specifies whether the streaming endpoint should provide ongoing transcription updates as more audio is received. When set to true, the endpoint sends continuous updates, meaning transcription results may evolve over time */
+export const ListenV1InterimResults = {
+ True: "true",
+ False: "false",
+} as const;
+export type ListenV1InterimResults = (typeof ListenV1InterimResults)[keyof typeof ListenV1InterimResults];
diff --git a/src/api/types/ListenV1Keyterm.ts b/src/api/types/ListenV1Keyterm.ts
new file mode 100644
index 00000000..6446ffc3
--- /dev/null
+++ b/src/api/types/ListenV1Keyterm.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1Keyterm = unknown;
diff --git a/src/api/types/ListenV1Keywords.ts b/src/api/types/ListenV1Keywords.ts
new file mode 100644
index 00000000..0d88bed7
--- /dev/null
+++ b/src/api/types/ListenV1Keywords.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1Keywords = unknown;
diff --git a/src/api/types/ListenV1Language.ts b/src/api/types/ListenV1Language.ts
new file mode 100644
index 00000000..1f614f5a
--- /dev/null
+++ b/src/api/types/ListenV1Language.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1Language = unknown;
diff --git a/src/api/types/ListenV1MipOptOut.ts b/src/api/types/ListenV1MipOptOut.ts
new file mode 100644
index 00000000..8d86f80a
--- /dev/null
+++ b/src/api/types/ListenV1MipOptOut.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1MipOptOut = unknown;
diff --git a/src/api/types/ListenV1Model.ts b/src/api/types/ListenV1Model.ts
new file mode 100644
index 00000000..32b63261
--- /dev/null
+++ b/src/api/types/ListenV1Model.ts
@@ -0,0 +1,36 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** AI model to use for the transcription */
+export const ListenV1Model = {
+ Nova3: "nova-3",
+ Nova3General: "nova-3-general",
+ Nova3Medical: "nova-3-medical",
+ Nova2: "nova-2",
+ Nova2General: "nova-2-general",
+ Nova2Meeting: "nova-2-meeting",
+ Nova2Finance: "nova-2-finance",
+ Nova2Conversationalai: "nova-2-conversationalai",
+ Nova2Voicemail: "nova-2-voicemail",
+ Nova2Video: "nova-2-video",
+ Nova2Medical: "nova-2-medical",
+ Nova2Drivethru: "nova-2-drivethru",
+ Nova2Automotive: "nova-2-automotive",
+ Nova: "nova",
+ NovaGeneral: "nova-general",
+ NovaPhonecall: "nova-phonecall",
+ NovaMedical: "nova-medical",
+ Enhanced: "enhanced",
+ EnhancedGeneral: "enhanced-general",
+ EnhancedMeeting: "enhanced-meeting",
+ EnhancedPhonecall: "enhanced-phonecall",
+ EnhancedFinance: "enhanced-finance",
+ Base: "base",
+ Meeting: "meeting",
+ Phonecall: "phonecall",
+ Finance: "finance",
+ Conversationalai: "conversationalai",
+ Voicemail: "voicemail",
+ Video: "video",
+ Custom: "custom",
+} as const;
+export type ListenV1Model = (typeof ListenV1Model)[keyof typeof ListenV1Model];
diff --git a/src/api/types/ListenV1Multichannel.ts b/src/api/types/ListenV1Multichannel.ts
new file mode 100644
index 00000000..18249907
--- /dev/null
+++ b/src/api/types/ListenV1Multichannel.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Transcribe each audio channel independently */
+export const ListenV1Multichannel = {
+ True: "true",
+ False: "false",
+} as const;
+export type ListenV1Multichannel = (typeof ListenV1Multichannel)[keyof typeof ListenV1Multichannel];
diff --git a/src/api/types/ListenV1Numerals.ts b/src/api/types/ListenV1Numerals.ts
new file mode 100644
index 00000000..4a87e0df
--- /dev/null
+++ b/src/api/types/ListenV1Numerals.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Convert numbers from written format to numerical format */
+export const ListenV1Numerals = {
+ True: "true",
+ False: "false",
+} as const;
+export type ListenV1Numerals = (typeof ListenV1Numerals)[keyof typeof ListenV1Numerals];
diff --git a/src/api/types/ListenV1ProfanityFilter.ts b/src/api/types/ListenV1ProfanityFilter.ts
new file mode 100644
index 00000000..8cc210cd
--- /dev/null
+++ b/src/api/types/ListenV1ProfanityFilter.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Profanity Filter looks for recognized profanity and converts it to the nearest recognized non-profane word or removes it from the transcript completely */
+export const ListenV1ProfanityFilter = {
+ True: "true",
+ False: "false",
+} as const;
+export type ListenV1ProfanityFilter = (typeof ListenV1ProfanityFilter)[keyof typeof ListenV1ProfanityFilter];
diff --git a/src/api/types/ListenV1Punctuate.ts b/src/api/types/ListenV1Punctuate.ts
new file mode 100644
index 00000000..5433633c
--- /dev/null
+++ b/src/api/types/ListenV1Punctuate.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Add punctuation and capitalization to the transcript */
+export const ListenV1Punctuate = {
+ True: "true",
+ False: "false",
+} as const;
+export type ListenV1Punctuate = (typeof ListenV1Punctuate)[keyof typeof ListenV1Punctuate];
diff --git a/src/api/types/ListenV1Redact.ts b/src/api/types/ListenV1Redact.ts
new file mode 100644
index 00000000..9b2f4ec6
--- /dev/null
+++ b/src/api/types/ListenV1Redact.ts
@@ -0,0 +1,12 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Redaction removes sensitive information from your transcripts */
+export const ListenV1Redact = {
+ True: "true",
+ False: "false",
+ Pci: "pci",
+ Numbers: "numbers",
+ AggressiveNumbers: "aggressive_numbers",
+ Ssn: "ssn",
+} as const;
+export type ListenV1Redact = (typeof ListenV1Redact)[keyof typeof ListenV1Redact];
diff --git a/src/api/types/ListenV1Replace.ts b/src/api/types/ListenV1Replace.ts
new file mode 100644
index 00000000..9acccf5b
--- /dev/null
+++ b/src/api/types/ListenV1Replace.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1Replace = unknown;
diff --git a/src/api/types/ListenV1RequestFile.ts b/src/api/types/ListenV1RequestFile.ts
new file mode 100644
index 00000000..aa2ce973
--- /dev/null
+++ b/src/api/types/ListenV1RequestFile.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Binary audio file to transcribe
+ */
+export type ListenV1RequestFile = string;
diff --git a/src/api/types/ListenV1Response.ts b/src/api/types/ListenV1Response.ts
new file mode 100644
index 00000000..d1c0bfc1
--- /dev/null
+++ b/src/api/types/ListenV1Response.ts
@@ -0,0 +1,11 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../index.js";
+
+/**
+ * The standard transcription response
+ */
+export interface ListenV1Response {
+ metadata: Deepgram.ListenV1ResponseMetadata;
+ results: Deepgram.ListenV1ResponseResults;
+}
diff --git a/src/api/types/ListenV1ResponseMetadata.ts b/src/api/types/ListenV1ResponseMetadata.ts
new file mode 100644
index 00000000..679eff32
--- /dev/null
+++ b/src/api/types/ListenV1ResponseMetadata.ts
@@ -0,0 +1,43 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV1ResponseMetadata {
+ transaction_key?: string;
+ request_id: string;
+ sha256: string;
+ created: string;
+ duration: number;
+ channels: number;
+ models: string[];
+ model_info: Record;
+ summary_info?: ListenV1ResponseMetadata.SummaryInfo;
+ sentiment_info?: ListenV1ResponseMetadata.SentimentInfo;
+ topics_info?: ListenV1ResponseMetadata.TopicsInfo;
+ intents_info?: ListenV1ResponseMetadata.IntentsInfo;
+ tags?: string[];
+}
+
+export namespace ListenV1ResponseMetadata {
+ export interface SummaryInfo {
+ model_uuid?: string;
+ input_tokens?: number;
+ output_tokens?: number;
+ }
+
+ export interface SentimentInfo {
+ model_uuid?: string;
+ input_tokens?: number;
+ output_tokens?: number;
+ }
+
+ export interface TopicsInfo {
+ model_uuid?: string;
+ input_tokens?: number;
+ output_tokens?: number;
+ }
+
+ export interface IntentsInfo {
+ model_uuid?: string;
+ input_tokens?: number;
+ output_tokens?: number;
+ }
+}
diff --git a/src/api/types/ListenV1ResponseResults.ts b/src/api/types/ListenV1ResponseResults.ts
new file mode 100644
index 00000000..9b82901e
--- /dev/null
+++ b/src/api/types/ListenV1ResponseResults.ts
@@ -0,0 +1,12 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../index.js";
+
+export interface ListenV1ResponseResults {
+ channels: Deepgram.ListenV1ResponseResultsChannels;
+ utterances?: Deepgram.ListenV1ResponseResultsUtterances;
+ summary?: Deepgram.ListenV1ResponseResultsSummary;
+ topics?: Deepgram.SharedTopics;
+ intents?: Deepgram.SharedIntents;
+ sentiments?: Deepgram.SharedSentiments;
+}
diff --git a/src/api/types/ListenV1ResponseResultsChannels.ts b/src/api/types/ListenV1ResponseResultsChannels.ts
new file mode 100644
index 00000000..3c74d6f3
--- /dev/null
+++ b/src/api/types/ListenV1ResponseResultsChannels.ts
@@ -0,0 +1,5 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../index.js";
+
+export type ListenV1ResponseResultsChannels = Deepgram.ListenV1ResponseResultsChannelsItem[];
diff --git a/src/api/types/ListenV1ResponseResultsChannelsItem.ts b/src/api/types/ListenV1ResponseResultsChannelsItem.ts
new file mode 100644
index 00000000..a2e45e66
--- /dev/null
+++ b/src/api/types/ListenV1ResponseResultsChannelsItem.ts
@@ -0,0 +1,109 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV1ResponseResultsChannelsItem {
+ search?: ListenV1ResponseResultsChannelsItem.Search.Item[];
+ alternatives?: ListenV1ResponseResultsChannelsItem.Alternatives.Item[];
+ detected_language?: string;
+}
+
+export namespace ListenV1ResponseResultsChannelsItem {
+ export type Search = Search.Item[];
+
+ export namespace Search {
+ export interface Item {
+ query?: string;
+ hits?: Item.Hits.Item[];
+ }
+
+ export namespace Item {
+ export type Hits = Hits.Item[];
+
+ export namespace Hits {
+ export interface Item {
+ confidence?: number;
+ start?: number;
+ end?: number;
+ snippet?: string;
+ }
+ }
+ }
+ }
+
+ export type Alternatives = Alternatives.Item[];
+
+ export namespace Alternatives {
+ export interface Item {
+ transcript?: string;
+ confidence?: number;
+ words?: Item.Words.Item[];
+ paragraphs?: Item.Paragraphs;
+ summaries?: Item.Summaries.Item[];
+ topics?: Item.Topics.Item[];
+ }
+
+ export namespace Item {
+ export type Words = Words.Item[];
+
+ export namespace Words {
+ export interface Item {
+ word?: string;
+ start?: number;
+ end?: number;
+ confidence?: number;
+ }
+ }
+
+ export interface Paragraphs {
+ transcript?: string;
+ paragraphs?: Paragraphs.Paragraphs.Item[];
+ }
+
+ export namespace Paragraphs {
+ export type Paragraphs = Paragraphs.Item[];
+
+ export namespace Paragraphs {
+ export interface Item {
+ sentences?: Item.Sentences.Item[];
+ speaker?: number;
+ num_words?: number;
+ start?: number;
+ end?: number;
+ }
+
+ export namespace Item {
+ export type Sentences = Sentences.Item[];
+
+ export namespace Sentences {
+ export interface Item {
+ text?: string;
+ start?: number;
+ end?: number;
+ }
+ }
+ }
+ }
+ }
+
+ export type Summaries = Summaries.Item[];
+
+ export namespace Summaries {
+ export interface Item {
+ summary?: string;
+ start_word?: number;
+ end_word?: number;
+ }
+ }
+
+ export type Topics = Topics.Item[];
+
+ export namespace Topics {
+ export interface Item {
+ text?: string;
+ start_word?: number;
+ end_word?: number;
+ topics?: string[];
+ }
+ }
+ }
+ }
+}
diff --git a/src/api/types/ListenV1ResponseResultsSummary.ts b/src/api/types/ListenV1ResponseResultsSummary.ts
new file mode 100644
index 00000000..33bb678b
--- /dev/null
+++ b/src/api/types/ListenV1ResponseResultsSummary.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV1ResponseResultsSummary {
+ result?: string;
+ short?: string;
+}
diff --git a/src/api/types/ListenV1ResponseResultsUtterances.ts b/src/api/types/ListenV1ResponseResultsUtterances.ts
new file mode 100644
index 00000000..2d035379
--- /dev/null
+++ b/src/api/types/ListenV1ResponseResultsUtterances.ts
@@ -0,0 +1,5 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../index.js";
+
+export type ListenV1ResponseResultsUtterances = Deepgram.ListenV1ResponseResultsUtterancesItem[];
diff --git a/src/api/types/ListenV1ResponseResultsUtterancesItem.ts b/src/api/types/ListenV1ResponseResultsUtterancesItem.ts
new file mode 100644
index 00000000..787a32f4
--- /dev/null
+++ b/src/api/types/ListenV1ResponseResultsUtterancesItem.ts
@@ -0,0 +1,28 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ListenV1ResponseResultsUtterancesItem {
+ start?: number;
+ end?: number;
+ confidence?: number;
+ channel?: number;
+ transcript?: string;
+ words?: ListenV1ResponseResultsUtterancesItem.Words.Item[];
+ speaker?: number;
+ id?: string;
+}
+
+export namespace ListenV1ResponseResultsUtterancesItem {
+ export type Words = Words.Item[];
+
+ export namespace Words {
+ export interface Item {
+ word?: string;
+ start?: number;
+ end?: number;
+ confidence?: number;
+ speaker?: number;
+ speaker_confidence?: number;
+ punctuated_word?: string;
+ }
+ }
+}
diff --git a/src/api/types/ListenV1SampleRate.ts b/src/api/types/ListenV1SampleRate.ts
new file mode 100644
index 00000000..d37e86c8
--- /dev/null
+++ b/src/api/types/ListenV1SampleRate.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1SampleRate = unknown;
diff --git a/src/api/types/ListenV1Search.ts b/src/api/types/ListenV1Search.ts
new file mode 100644
index 00000000..3383114d
--- /dev/null
+++ b/src/api/types/ListenV1Search.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1Search = unknown;
diff --git a/src/api/types/ListenV1SmartFormat.ts b/src/api/types/ListenV1SmartFormat.ts
new file mode 100644
index 00000000..30c7e3f8
--- /dev/null
+++ b/src/api/types/ListenV1SmartFormat.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Apply formatting to transcript output. When set to true, additional formatting will be applied to transcripts to improve readability */
+export const ListenV1SmartFormat = {
+ True: "true",
+ False: "false",
+} as const;
+export type ListenV1SmartFormat = (typeof ListenV1SmartFormat)[keyof typeof ListenV1SmartFormat];
diff --git a/src/api/types/ListenV1Tag.ts b/src/api/types/ListenV1Tag.ts
new file mode 100644
index 00000000..b1adf7c5
--- /dev/null
+++ b/src/api/types/ListenV1Tag.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1Tag = unknown;
diff --git a/src/api/types/ListenV1UtteranceEndMs.ts b/src/api/types/ListenV1UtteranceEndMs.ts
new file mode 100644
index 00000000..31dcad6f
--- /dev/null
+++ b/src/api/types/ListenV1UtteranceEndMs.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1UtteranceEndMs = unknown;
diff --git a/src/api/types/ListenV1VadEvents.ts b/src/api/types/ListenV1VadEvents.ts
new file mode 100644
index 00000000..3819893a
--- /dev/null
+++ b/src/api/types/ListenV1VadEvents.ts
@@ -0,0 +1,8 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Indicates that speech has started. You'll begin receiving Speech Started messages upon speech starting */
+export const ListenV1VadEvents = {
+ True: "true",
+ False: "false",
+} as const;
+export type ListenV1VadEvents = (typeof ListenV1VadEvents)[keyof typeof ListenV1VadEvents];
diff --git a/src/api/types/ListenV1Version.ts b/src/api/types/ListenV1Version.ts
new file mode 100644
index 00000000..5a11acdd
--- /dev/null
+++ b/src/api/types/ListenV1Version.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV1Version = unknown;
diff --git a/src/api/types/ListenV2EagerEotThreshold.ts b/src/api/types/ListenV2EagerEotThreshold.ts
new file mode 100644
index 00000000..ebb8480a
--- /dev/null
+++ b/src/api/types/ListenV2EagerEotThreshold.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV2EagerEotThreshold = unknown;
diff --git a/src/api/types/ListenV2Encoding.ts b/src/api/types/ListenV2Encoding.ts
new file mode 100644
index 00000000..3424ccf3
--- /dev/null
+++ b/src/api/types/ListenV2Encoding.ts
@@ -0,0 +1,12 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Encoding of the audio stream. Required if sending non-containerized/raw audio. If sending containerized audio, this parameter should be omitted. */
+export const ListenV2Encoding = {
+ Linear16: "linear16",
+ Linear32: "linear32",
+ Mulaw: "mulaw",
+ Alaw: "alaw",
+ Opus: "opus",
+ OggOpus: "ogg-opus",
+} as const;
+export type ListenV2Encoding = (typeof ListenV2Encoding)[keyof typeof ListenV2Encoding];
diff --git a/src/api/types/ListenV2EotThreshold.ts b/src/api/types/ListenV2EotThreshold.ts
new file mode 100644
index 00000000..272c229c
--- /dev/null
+++ b/src/api/types/ListenV2EotThreshold.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV2EotThreshold = unknown;
diff --git a/src/api/types/ListenV2EotTimeoutMs.ts b/src/api/types/ListenV2EotTimeoutMs.ts
new file mode 100644
index 00000000..f61e2e56
--- /dev/null
+++ b/src/api/types/ListenV2EotTimeoutMs.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV2EotTimeoutMs = unknown;
diff --git a/src/api/types/ListenV2Keyterm.ts b/src/api/types/ListenV2Keyterm.ts
new file mode 100644
index 00000000..02d00009
--- /dev/null
+++ b/src/api/types/ListenV2Keyterm.ts
@@ -0,0 +1,7 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Keyterm prompting can improve recognition of specialized terminology.
+ * Pass multiple keyterm query parameters to boost multiple keyterms.
+ */
+export type ListenV2Keyterm = string | string[];
diff --git a/src/api/types/ListenV2MipOptOut.ts b/src/api/types/ListenV2MipOptOut.ts
new file mode 100644
index 00000000..75085a59
--- /dev/null
+++ b/src/api/types/ListenV2MipOptOut.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV2MipOptOut = unknown;
diff --git a/src/api/types/ListenV2Model.ts b/src/api/types/ListenV2Model.ts
new file mode 100644
index 00000000..1b3431c8
--- /dev/null
+++ b/src/api/types/ListenV2Model.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Defines the AI model used to process submitted audio.
+ */
+export type ListenV2Model = "flux-general-en";
diff --git a/src/api/types/ListenV2SampleRate.ts b/src/api/types/ListenV2SampleRate.ts
new file mode 100644
index 00000000..178ecdf6
--- /dev/null
+++ b/src/api/types/ListenV2SampleRate.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV2SampleRate = unknown;
diff --git a/src/api/types/ListenV2Tag.ts b/src/api/types/ListenV2Tag.ts
new file mode 100644
index 00000000..18aee426
--- /dev/null
+++ b/src/api/types/ListenV2Tag.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type ListenV2Tag = unknown;
diff --git a/src/api/types/ProjectRequestResponse.ts b/src/api/types/ProjectRequestResponse.ts
new file mode 100644
index 00000000..93e5ec82
--- /dev/null
+++ b/src/api/types/ProjectRequestResponse.ts
@@ -0,0 +1,25 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * A single request
+ */
+export interface ProjectRequestResponse {
+ /** The unique identifier of the request */
+ request_id?: string;
+ /** The unique identifier of the project */
+ project_uuid?: string;
+ /** The date and time the request was created */
+ created?: string;
+ /** The API path of the request */
+ path?: string;
+ /** The unique identifier of the API key */
+ api_key_id?: string;
+ /** The response of the request */
+ response?: Record;
+ /** The response code of the request */
+ code?: number;
+ /** The deployment type */
+ deployment?: string;
+ /** The callback URL for the request */
+ callback?: string;
+}
diff --git a/src/api/types/ReadV1Request.ts b/src/api/types/ReadV1Request.ts
new file mode 100644
index 00000000..10a5ce0f
--- /dev/null
+++ b/src/api/types/ReadV1Request.ts
@@ -0,0 +1,5 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../index.js";
+
+export type ReadV1Request = Deepgram.ReadV1RequestUrl | Deepgram.ReadV1RequestText;
diff --git a/src/api/types/ReadV1RequestText.ts b/src/api/types/ReadV1RequestText.ts
new file mode 100644
index 00000000..8a9e95ad
--- /dev/null
+++ b/src/api/types/ReadV1RequestText.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ReadV1RequestText {
+ /** The plain text to analyze */
+ text: string;
+}
diff --git a/src/api/types/ReadV1RequestUrl.ts b/src/api/types/ReadV1RequestUrl.ts
new file mode 100644
index 00000000..a63420ee
--- /dev/null
+++ b/src/api/types/ReadV1RequestUrl.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ReadV1RequestUrl {
+ /** A URL pointing to the text source */
+ url: string;
+}
diff --git a/src/api/types/ReadV1Response.ts b/src/api/types/ReadV1Response.ts
new file mode 100644
index 00000000..44ea32a0
--- /dev/null
+++ b/src/api/types/ReadV1Response.ts
@@ -0,0 +1,11 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../index.js";
+
+/**
+ * The standard text response
+ */
+export interface ReadV1Response {
+ metadata: Deepgram.ReadV1ResponseMetadata;
+ results: Deepgram.ReadV1ResponseResults;
+}
diff --git a/src/api/types/ReadV1ResponseMetadata.ts b/src/api/types/ReadV1ResponseMetadata.ts
new file mode 100644
index 00000000..58e778f3
--- /dev/null
+++ b/src/api/types/ReadV1ResponseMetadata.ts
@@ -0,0 +1,43 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface ReadV1ResponseMetadata {
+ metadata?: ReadV1ResponseMetadata.Metadata;
+}
+
+export namespace ReadV1ResponseMetadata {
+ export interface Metadata {
+ request_id?: string;
+ created?: string;
+ language?: string;
+ summary_info?: Metadata.SummaryInfo;
+ sentiment_info?: Metadata.SentimentInfo;
+ topics_info?: Metadata.TopicsInfo;
+ intents_info?: Metadata.IntentsInfo;
+ }
+
+ export namespace Metadata {
+ export interface SummaryInfo {
+ model_uuid?: string;
+ input_tokens?: number;
+ output_tokens?: number;
+ }
+
+ export interface SentimentInfo {
+ model_uuid?: string;
+ input_tokens?: number;
+ output_tokens?: number;
+ }
+
+ export interface TopicsInfo {
+ model_uuid?: string;
+ input_tokens?: number;
+ output_tokens?: number;
+ }
+
+ export interface IntentsInfo {
+ model_uuid?: string;
+ input_tokens?: number;
+ output_tokens?: number;
+ }
+ }
+}
diff --git a/src/api/types/ReadV1ResponseResults.ts b/src/api/types/ReadV1ResponseResults.ts
new file mode 100644
index 00000000..f20b1f0e
--- /dev/null
+++ b/src/api/types/ReadV1ResponseResults.ts
@@ -0,0 +1,10 @@
+// This file was auto-generated by Fern from our API Definition.
+
+import type * as Deepgram from "../index.js";
+
+export interface ReadV1ResponseResults {
+ summary?: Deepgram.ReadV1ResponseResultsSummary;
+ topics?: Deepgram.SharedTopics;
+ intents?: Deepgram.SharedIntents;
+ sentiments?: Deepgram.SharedSentiments;
+}
diff --git a/src/api/types/ReadV1ResponseResultsSummary.ts b/src/api/types/ReadV1ResponseResultsSummary.ts
new file mode 100644
index 00000000..5085cfc7
--- /dev/null
+++ b/src/api/types/ReadV1ResponseResultsSummary.ts
@@ -0,0 +1,20 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Output whenever `summary=true` is used
+ */
+export interface ReadV1ResponseResultsSummary {
+ results?: ReadV1ResponseResultsSummary.Results;
+}
+
+export namespace ReadV1ResponseResultsSummary {
+ export interface Results {
+ summary?: Results.Summary;
+ }
+
+ export namespace Results {
+ export interface Summary {
+ text?: string;
+ }
+ }
+}
diff --git a/src/api/types/SharedIntents.ts b/src/api/types/SharedIntents.ts
new file mode 100644
index 00000000..a8a4d32a
--- /dev/null
+++ b/src/api/types/SharedIntents.ts
@@ -0,0 +1,44 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Output whenever `intents=true` is used
+ */
+export interface SharedIntents {
+ results?: SharedIntents.Results;
+}
+
+export namespace SharedIntents {
+ export interface Results {
+ intents?: Results.Intents;
+ }
+
+ export namespace Results {
+ export interface Intents {
+ segments?: Intents.Segments.Item[];
+ }
+
+ export namespace Intents {
+ export type Segments = Segments.Item[];
+
+ export namespace Segments {
+ export interface Item {
+ text?: string;
+ start_word?: number;
+ end_word?: number;
+ intents?: Item.Intents.Item[];
+ }
+
+ export namespace Item {
+ export type Intents = Intents.Item[];
+
+ export namespace Intents {
+ export interface Item {
+ intent?: string;
+ confidence_score?: number;
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/src/api/types/SharedSentiments.ts b/src/api/types/SharedSentiments.ts
new file mode 100644
index 00000000..4cd332d7
--- /dev/null
+++ b/src/api/types/SharedSentiments.ts
@@ -0,0 +1,28 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Output whenever `sentiment=true` is used
+ */
+export interface SharedSentiments {
+ segments?: SharedSentiments.Segments.Item[];
+ average?: SharedSentiments.Average;
+}
+
+export namespace SharedSentiments {
+ export type Segments = Segments.Item[];
+
+ export namespace Segments {
+ export interface Item {
+ text?: string;
+ start_word?: number;
+ end_word?: number;
+ sentiment?: string;
+ sentiment_score?: number;
+ }
+ }
+
+ export interface Average {
+ sentiment?: string;
+ sentiment_score?: number;
+ }
+}
diff --git a/src/api/types/SharedTopics.ts b/src/api/types/SharedTopics.ts
new file mode 100644
index 00000000..d5631a5b
--- /dev/null
+++ b/src/api/types/SharedTopics.ts
@@ -0,0 +1,44 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/**
+ * Output whenever `topics=true` is used
+ */
+export interface SharedTopics {
+ results?: SharedTopics.Results;
+}
+
+export namespace SharedTopics {
+ export interface Results {
+ topics?: Results.Topics;
+ }
+
+ export namespace Results {
+ export interface Topics {
+ segments?: Topics.Segments.Item[];
+ }
+
+ export namespace Topics {
+ export type Segments = Segments.Item[];
+
+ export namespace Segments {
+ export interface Item {
+ text?: string;
+ start_word?: number;
+ end_word?: number;
+ topics?: Item.Topics.Item[];
+ }
+
+ export namespace Item {
+ export type Topics = Topics.Item[];
+
+ export namespace Topics {
+ export interface Item {
+ topic?: string;
+ confidence_score?: number;
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/src/api/types/SpeakV1Encoding.ts b/src/api/types/SpeakV1Encoding.ts
new file mode 100644
index 00000000..4c1ff0ab
--- /dev/null
+++ b/src/api/types/SpeakV1Encoding.ts
@@ -0,0 +1,9 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Encoding allows you to specify the expected encoding of your audio output for streaming TTS. Only streaming-compatible encodings are supported. */
+export const SpeakV1Encoding = {
+ Linear16: "linear16",
+ Mulaw: "mulaw",
+ Alaw: "alaw",
+} as const;
+export type SpeakV1Encoding = (typeof SpeakV1Encoding)[keyof typeof SpeakV1Encoding];
diff --git a/src/api/types/SpeakV1MipOptOut.ts b/src/api/types/SpeakV1MipOptOut.ts
new file mode 100644
index 00000000..51bda46f
--- /dev/null
+++ b/src/api/types/SpeakV1MipOptOut.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type SpeakV1MipOptOut = unknown;
diff --git a/src/api/types/SpeakV1Model.ts b/src/api/types/SpeakV1Model.ts
new file mode 100644
index 00000000..f1531d95
--- /dev/null
+++ b/src/api/types/SpeakV1Model.ts
@@ -0,0 +1,69 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** AI model used to process submitted text */
+export const SpeakV1Model = {
+ AuraAsteriaEn: "aura-asteria-en",
+ AuraLunaEn: "aura-luna-en",
+ AuraStellaEn: "aura-stella-en",
+ AuraAthenaEn: "aura-athena-en",
+ AuraHeraEn: "aura-hera-en",
+ AuraOrionEn: "aura-orion-en",
+ AuraArcasEn: "aura-arcas-en",
+ AuraPerseusEn: "aura-perseus-en",
+ AuraAngusEn: "aura-angus-en",
+ AuraOrpheusEn: "aura-orpheus-en",
+ AuraHeliosEn: "aura-helios-en",
+ AuraZeusEn: "aura-zeus-en",
+ Aura2AmaltheaEn: "aura-2-amalthea-en",
+ Aura2AndromedaEn: "aura-2-andromeda-en",
+ Aura2ApolloEn: "aura-2-apollo-en",
+ Aura2ArcasEn: "aura-2-arcas-en",
+ Aura2AriesEn: "aura-2-aries-en",
+ Aura2AsteriaEn: "aura-2-asteria-en",
+ Aura2AthenaEn: "aura-2-athena-en",
+ Aura2AtlasEn: "aura-2-atlas-en",
+ Aura2AuroraEn: "aura-2-aurora-en",
+ Aura2CallistaEn: "aura-2-callista-en",
+ Aura2CordeliaEn: "aura-2-cordelia-en",
+ Aura2CoraEn: "aura-2-cora-en",
+ Aura2DeliaEn: "aura-2-delia-en",
+ Aura2DracoEn: "aura-2-draco-en",
+ Aura2ElectraEn: "aura-2-electra-en",
+ Aura2HarmoniaEn: "aura-2-harmonia-en",
+ Aura2HelenaEn: "aura-2-helena-en",
+ Aura2HeraEn: "aura-2-hera-en",
+ Aura2HermesEn: "aura-2-hermes-en",
+ Aura2HyperionEn: "aura-2-hyperion-en",
+ Aura2IrisEn: "aura-2-iris-en",
+ Aura2JanusEn: "aura-2-janus-en",
+ Aura2JunoEn: "aura-2-juno-en",
+ Aura2JupiterEn: "aura-2-jupiter-en",
+ Aura2LunaEn: "aura-2-luna-en",
+ Aura2MarsEn: "aura-2-mars-en",
+ Aura2MinervaEn: "aura-2-minerva-en",
+ Aura2NeptuneEn: "aura-2-neptune-en",
+ Aura2OdysseusEn: "aura-2-odysseus-en",
+ Aura2OpheliaEn: "aura-2-ophelia-en",
+ Aura2OrionEn: "aura-2-orion-en",
+ Aura2OrpheusEn: "aura-2-orpheus-en",
+ Aura2PandoraEn: "aura-2-pandora-en",
+ Aura2PhoebeEn: "aura-2-phoebe-en",
+ Aura2PlutoEn: "aura-2-pluto-en",
+ Aura2SaturnEn: "aura-2-saturn-en",
+ Aura2SeleneEn: "aura-2-selene-en",
+ Aura2ThaliaEn: "aura-2-thalia-en",
+ Aura2TheiaEn: "aura-2-theia-en",
+ Aura2VestaEn: "aura-2-vesta-en",
+ Aura2ZeusEn: "aura-2-zeus-en",
+ Aura2SirioEs: "aura-2-sirio-es",
+ Aura2NestorEs: "aura-2-nestor-es",
+ Aura2CarinaEs: "aura-2-carina-es",
+ Aura2CelesteEs: "aura-2-celeste-es",
+ Aura2AlvaroEs: "aura-2-alvaro-es",
+ Aura2DianaEs: "aura-2-diana-es",
+ Aura2AquilaEs: "aura-2-aquila-es",
+ Aura2SelenaEs: "aura-2-selena-es",
+ Aura2EstrellaEs: "aura-2-estrella-es",
+ Aura2JavierEs: "aura-2-javier-es",
+} as const;
+export type SpeakV1Model = (typeof SpeakV1Model)[keyof typeof SpeakV1Model];
diff --git a/src/api/types/SpeakV1Response.ts b/src/api/types/SpeakV1Response.ts
new file mode 100644
index 00000000..2370db46
--- /dev/null
+++ b/src/api/types/SpeakV1Response.ts
@@ -0,0 +1,3 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export type SpeakV1Response = string;
diff --git a/src/api/types/SpeakV1SampleRate.ts b/src/api/types/SpeakV1SampleRate.ts
new file mode 100644
index 00000000..464d7ff9
--- /dev/null
+++ b/src/api/types/SpeakV1SampleRate.ts
@@ -0,0 +1,11 @@
+// This file was auto-generated by Fern from our API Definition.
+
+/** Sample Rate specifies the sample rate for the output audio. Based on encoding 8000 or 24000 are possible defaults. For some encodings sample rate is not configurable. */
+export const SpeakV1SampleRate = {
+ EightThousand: "8000",
+ SixteenThousand: "16000",
+ TwentyFourThousand: "24000",
+ FortyFourThousandOneHundred: "44100",
+ FortyEightThousand: "48000",
+} as const;
+export type SpeakV1SampleRate = (typeof SpeakV1SampleRate)[keyof typeof SpeakV1SampleRate];
diff --git a/src/api/types/UpdateProjectMemberScopesV1Response.ts b/src/api/types/UpdateProjectMemberScopesV1Response.ts
new file mode 100644
index 00000000..9a756e86
--- /dev/null
+++ b/src/api/types/UpdateProjectMemberScopesV1Response.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface UpdateProjectMemberScopesV1Response {
+ /** confirmation message */
+ message?: string;
+}
diff --git a/src/api/types/UpdateProjectV1Response.ts b/src/api/types/UpdateProjectV1Response.ts
new file mode 100644
index 00000000..3a011162
--- /dev/null
+++ b/src/api/types/UpdateProjectV1Response.ts
@@ -0,0 +1,6 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface UpdateProjectV1Response {
+ /** confirmation message */
+ message?: string;
+}
diff --git a/src/api/types/UsageBreakdownV1Response.ts b/src/api/types/UsageBreakdownV1Response.ts
new file mode 100644
index 00000000..5f95dc8b
--- /dev/null
+++ b/src/api/types/UsageBreakdownV1Response.ts
@@ -0,0 +1,64 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface UsageBreakdownV1Response {
+ /** Start date of the usage period */
+ start: string;
+ /** End date of the usage period */
+ end: string;
+ resolution: UsageBreakdownV1Response.Resolution;
+ results: UsageBreakdownV1Response.Results.Item[];
+}
+
+export namespace UsageBreakdownV1Response {
+ export interface Resolution {
+ /** Time unit for the resolution */
+ units: string;
+ /** Amount of units */
+ amount: number;
+ }
+
+ export type Results = Results.Item[];
+
+ export namespace Results {
+ export interface Item {
+ /** Audio hours processed */
+ hours: number;
+ /** Total hours including all processing */
+ total_hours: number;
+ /** Agent hours used */
+ agent_hours: number;
+ /** Number of input tokens */
+ tokens_in: number;
+ /** Number of output tokens */
+ tokens_out: number;
+ /** Number of text-to-speech characters processed */
+ tts_characters: number;
+ /** Number of requests */
+ requests: number;
+ grouping: Item.Grouping;
+ }
+
+ export namespace Item {
+ export interface Grouping {
+ /** Start date for this group */
+ start?: string;
+ /** End date for this group */
+ end?: string;
+ /** Optional accessor identifier */
+ accessor?: string;
+ /** Optional endpoint identifier */
+ endpoint?: string;
+ /** Optional feature set identifier */
+ feature_set?: string;
+ /** Optional models identifier */
+ models?: string;
+ /** Optional method identifier */
+ method?: string;
+ /** Optional tags */
+ tags?: string;
+ /** Optional deployment identifier */
+ deployment?: string;
+ }
+ }
+ }
+}
diff --git a/src/api/types/UsageFieldsV1Response.ts b/src/api/types/UsageFieldsV1Response.ts
new file mode 100644
index 00000000..d5487abb
--- /dev/null
+++ b/src/api/types/UsageFieldsV1Response.ts
@@ -0,0 +1,29 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface UsageFieldsV1Response {
+ /** List of tags associated with the project */
+ tags?: string[];
+ /** List of models available for the project. */
+ models?: UsageFieldsV1Response.Models.Item[];
+ /** Processing methods supported by the API */
+ processing_methods?: string[];
+ /** API features available to the project */
+ features?: string[];
+}
+
+export namespace UsageFieldsV1Response {
+ export type Models = Models.Item[];
+
+ export namespace Models {
+ export interface Item {
+ /** Name of the model. */
+ name?: string;
+ /** The language supported by the model (IETF language tag). */
+ language?: string;
+ /** Version identifier of the model, typically with a date and a revision number. */
+ version?: string;
+ /** Unique identifier for the model. */
+ model_id?: string;
+ }
+ }
+}
diff --git a/src/api/types/UsageV1Response.ts b/src/api/types/UsageV1Response.ts
new file mode 100644
index 00000000..bee029aa
--- /dev/null
+++ b/src/api/types/UsageV1Response.ts
@@ -0,0 +1,14 @@
+// This file was auto-generated by Fern from our API Definition.
+
+export interface UsageV1Response {
+ start?: string;
+ end?: string;
+ resolution?: UsageV1Response.Resolution;
+}
+
+export namespace UsageV1Response {
+ export interface Resolution {
+ units?: string;
+ amount?: number;
+ }
+}
diff --git a/src/api/types/index.ts b/src/api/types/index.ts
new file mode 100644
index 00000000..d2aadffd
--- /dev/null
+++ b/src/api/types/index.ts
@@ -0,0 +1,102 @@
+export * from "./AgentThinkModelsV1Response.js";
+export * from "./BillingBreakdownV1Response.js";
+export * from "./CreateKeyV1RequestOne.js";
+export * from "./CreateKeyV1Response.js";
+export * from "./CreateProjectDistributionCredentialsV1Response.js";
+export * from "./CreateProjectInviteV1Response.js";
+export * from "./DeleteProjectInviteV1Response.js";
+export * from "./DeleteProjectKeyV1Response.js";
+export * from "./DeleteProjectMemberV1Response.js";
+export * from "./DeleteProjectV1Response.js";
+export * from "./ErrorResponse.js";
+export * from "./ErrorResponseLegacyError.js";
+export * from "./ErrorResponseModernError.js";
+export * from "./ErrorResponseTextError.js";
+export * from "./GetModelV1Response.js";
+export * from "./GetProjectBalanceV1Response.js";
+export * from "./GetProjectDistributionCredentialsV1Response.js";
+export * from "./GetProjectKeyV1Response.js";
+export * from "./GetProjectRequestV1Response.js";
+export * from "./GetProjectV1Response.js";
+export * from "./GrantV1Response.js";
+export * from "./LeaveProjectV1Response.js";
+export * from "./ListBillingFieldsV1Response.js";
+export * from "./ListenV1AcceptedResponse.js";
+export * from "./ListenV1Callback.js";
+export * from "./ListenV1CallbackMethod.js";
+export * from "./ListenV1Channels.js";
+export * from "./ListenV1Diarize.js";
+export * from "./ListenV1Dictation.js";
+export * from "./ListenV1Encoding.js";
+export * from "./ListenV1Endpointing.js";
+export * from "./ListenV1Extra.js";
+export * from "./ListenV1InterimResults.js";
+export * from "./ListenV1Keyterm.js";
+export * from "./ListenV1Keywords.js";
+export * from "./ListenV1Language.js";
+export * from "./ListenV1MipOptOut.js";
+export * from "./ListenV1Model.js";
+export * from "./ListenV1Multichannel.js";
+export * from "./ListenV1Numerals.js";
+export * from "./ListenV1ProfanityFilter.js";
+export * from "./ListenV1Punctuate.js";
+export * from "./ListenV1Redact.js";
+export * from "./ListenV1Replace.js";
+export * from "./ListenV1RequestFile.js";
+export * from "./ListenV1Response.js";
+export * from "./ListenV1ResponseMetadata.js";
+export * from "./ListenV1ResponseResults.js";
+export * from "./ListenV1ResponseResultsChannels.js";
+export * from "./ListenV1ResponseResultsChannelsItem.js";
+export * from "./ListenV1ResponseResultsSummary.js";
+export * from "./ListenV1ResponseResultsUtterances.js";
+export * from "./ListenV1ResponseResultsUtterancesItem.js";
+export * from "./ListenV1SampleRate.js";
+export * from "./ListenV1Search.js";
+export * from "./ListenV1SmartFormat.js";
+export * from "./ListenV1Tag.js";
+export * from "./ListenV1UtteranceEndMs.js";
+export * from "./ListenV1VadEvents.js";
+export * from "./ListenV1Version.js";
+export * from "./ListenV2EagerEotThreshold.js";
+export * from "./ListenV2Encoding.js";
+export * from "./ListenV2EotThreshold.js";
+export * from "./ListenV2EotTimeoutMs.js";
+export * from "./ListenV2Keyterm.js";
+export * from "./ListenV2MipOptOut.js";
+export * from "./ListenV2Model.js";
+export * from "./ListenV2SampleRate.js";
+export * from "./ListenV2Tag.js";
+export * from "./ListModelsV1Response.js";
+export * from "./ListModelsV1ResponseSttModels.js";
+export * from "./ListModelsV1ResponseTtsModels.js";
+export * from "./ListProjectBalancesV1Response.js";
+export * from "./ListProjectDistributionCredentialsV1Response.js";
+export * from "./ListProjectInvitesV1Response.js";
+export * from "./ListProjectKeysV1Response.js";
+export * from "./ListProjectMemberScopesV1Response.js";
+export * from "./ListProjectMembersV1Response.js";
+export * from "./ListProjectPurchasesV1Response.js";
+export * from "./ListProjectRequestsV1Response.js";
+export * from "./ListProjectsV1Response.js";
+export * from "./ProjectRequestResponse.js";
+export * from "./ReadV1Request.js";
+export * from "./ReadV1RequestText.js";
+export * from "./ReadV1RequestUrl.js";
+export * from "./ReadV1Response.js";
+export * from "./ReadV1ResponseMetadata.js";
+export * from "./ReadV1ResponseResults.js";
+export * from "./ReadV1ResponseResultsSummary.js";
+export * from "./SharedIntents.js";
+export * from "./SharedSentiments.js";
+export * from "./SharedTopics.js";
+export * from "./SpeakV1Encoding.js";
+export * from "./SpeakV1MipOptOut.js";
+export * from "./SpeakV1Model.js";
+export * from "./SpeakV1Response.js";
+export * from "./SpeakV1SampleRate.js";
+export * from "./UpdateProjectMemberScopesV1Response.js";
+export * from "./UpdateProjectV1Response.js";
+export * from "./UsageBreakdownV1Response.js";
+export * from "./UsageFieldsV1Response.js";
+export * from "./UsageV1Response.js";
diff --git a/src/core/exports.ts b/src/core/exports.ts
new file mode 100644
index 00000000..43f33fa1
--- /dev/null
+++ b/src/core/exports.ts
@@ -0,0 +1,3 @@
+export * from "./file/exports.js";
+export * from "./logging/exports.js";
+export * from "./websocket/exports.js";
diff --git a/src/core/fetcher/APIResponse.ts b/src/core/fetcher/APIResponse.ts
new file mode 100644
index 00000000..97ab83c2
--- /dev/null
+++ b/src/core/fetcher/APIResponse.ts
@@ -0,0 +1,23 @@
+import type { RawResponse } from "./RawResponse.js";
+
+/**
+ * The response of an API call.
+ * It is a successful response or a failed response.
+ */
+export type APIResponse = SuccessfulResponse | FailedResponse;
+
+export interface SuccessfulResponse {
+ ok: true;
+ body: T;
+ /**
+ * @deprecated Use `rawResponse` instead
+ */
+ headers?: Record;
+ rawResponse: RawResponse;
+}
+
+export interface FailedResponse {
+ ok: false;
+ error: T;
+ rawResponse: RawResponse;
+}
diff --git a/src/core/fetcher/BinaryResponse.ts b/src/core/fetcher/BinaryResponse.ts
new file mode 100644
index 00000000..4b4d0e89
--- /dev/null
+++ b/src/core/fetcher/BinaryResponse.ts
@@ -0,0 +1,36 @@
+import type { ResponseWithBody } from "./ResponseWithBody.js";
+
+export type BinaryResponse = {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/bodyUsed) */
+ bodyUsed: boolean;
+ /**
+ * Returns a ReadableStream of the response body.
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/body)
+ */
+ stream: () => ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/arrayBuffer) */
+ arrayBuffer: () => Promise;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/blob) */
+ blob: () => Promise;
+ /**
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/bytes)
+ * Some versions of the Fetch API may not support this method.
+ */
+ bytes?(): Promise;
+};
+
+export function getBinaryResponse(response: ResponseWithBody): BinaryResponse {
+ const binaryResponse: BinaryResponse = {
+ get bodyUsed() {
+ return response.bodyUsed;
+ },
+ stream: () => response.body,
+ arrayBuffer: response.arrayBuffer.bind(response),
+ blob: response.blob.bind(response),
+ };
+ if ("bytes" in response && typeof response.bytes === "function") {
+ binaryResponse.bytes = response.bytes.bind(response);
+ }
+
+ return binaryResponse;
+}
diff --git a/src/core/fetcher/EndpointMetadata.ts b/src/core/fetcher/EndpointMetadata.ts
new file mode 100644
index 00000000..998d68f5
--- /dev/null
+++ b/src/core/fetcher/EndpointMetadata.ts
@@ -0,0 +1,13 @@
+export type SecuritySchemeKey = string;
+/**
+ * A collection of security schemes, where the key is the name of the security scheme and the value is the list of scopes required for that scheme.
+ * All schemes in the collection must be satisfied for authentication to be successful.
+ */
+export type SecuritySchemeCollection = Record;
+export type AuthScope = string;
+export type EndpointMetadata = {
+ /**
+ * An array of security scheme collections. Each collection represents an alternative way to authenticate.
+ */
+ security?: SecuritySchemeCollection[];
+};
diff --git a/src/core/fetcher/EndpointSupplier.ts b/src/core/fetcher/EndpointSupplier.ts
new file mode 100644
index 00000000..8079841c
--- /dev/null
+++ b/src/core/fetcher/EndpointSupplier.ts
@@ -0,0 +1,14 @@
+import type { EndpointMetadata } from "./EndpointMetadata.js";
+import type { Supplier } from "./Supplier.js";
+
+type EndpointSupplierFn = (arg: { endpointMetadata: EndpointMetadata }) => T | Promise;
+export type EndpointSupplier = Supplier | EndpointSupplierFn;
+export const EndpointSupplier = {
+ get: async (supplier: EndpointSupplier, arg: { endpointMetadata: EndpointMetadata }): Promise => {
+ if (typeof supplier === "function") {
+ return (supplier as EndpointSupplierFn)(arg);
+ } else {
+ return supplier;
+ }
+ },
+};
diff --git a/src/core/fetcher/Fetcher.ts b/src/core/fetcher/Fetcher.ts
new file mode 100644
index 00000000..fedbcd88
--- /dev/null
+++ b/src/core/fetcher/Fetcher.ts
@@ -0,0 +1,385 @@
+import { toJson } from "../json.js";
+import { createLogger, type LogConfig, type Logger } from "../logging/logger.js";
+import type { APIResponse } from "./APIResponse.js";
+import { createRequestUrl } from "./createRequestUrl.js";
+import type { EndpointMetadata } from "./EndpointMetadata.js";
+import { EndpointSupplier } from "./EndpointSupplier.js";
+import { getErrorResponseBody } from "./getErrorResponseBody.js";
+import { getFetchFn } from "./getFetchFn.js";
+import { getRequestBody } from "./getRequestBody.js";
+import { getResponseBody } from "./getResponseBody.js";
+import { Headers } from "./Headers.js";
+import { makeRequest } from "./makeRequest.js";
+import { abortRawResponse, toRawResponse, unknownRawResponse } from "./RawResponse.js";
+import { requestWithRetries } from "./requestWithRetries.js";
+
+export type FetchFunction = (args: Fetcher.Args) => Promise>;
+
+export declare namespace Fetcher {
+ export interface Args {
+ url: string;
+ method: string;
+ contentType?: string;
+ headers?: Record | null | undefined>;
+ queryParameters?: Record;
+ body?: unknown;
+ timeoutMs?: number;
+ maxRetries?: number;
+ withCredentials?: boolean;
+ abortSignal?: AbortSignal;
+ requestType?: "json" | "file" | "bytes" | "form" | "other";
+ responseType?: "json" | "blob" | "sse" | "streaming" | "text" | "arrayBuffer" | "binary-response";
+ duplex?: "half";
+ endpointMetadata?: EndpointMetadata;
+ fetchFn?: typeof fetch;
+ logging?: LogConfig | Logger;
+ }
+
+ export type Error = FailedStatusCodeError | NonJsonError | TimeoutError | UnknownError;
+
+ export interface FailedStatusCodeError {
+ reason: "status-code";
+ statusCode: number;
+ body: unknown;
+ }
+
+ export interface NonJsonError {
+ reason: "non-json";
+ statusCode: number;
+ rawBody: string;
+ }
+
+ export interface TimeoutError {
+ reason: "timeout";
+ }
+
+ export interface UnknownError {
+ reason: "unknown";
+ errorMessage: string;
+ }
+}
+
+const SENSITIVE_HEADERS = new Set([
+ "authorization",
+ "www-authenticate",
+ "x-api-key",
+ "api-key",
+ "apikey",
+ "x-api-token",
+ "x-auth-token",
+ "auth-token",
+ "cookie",
+ "set-cookie",
+ "proxy-authorization",
+ "proxy-authenticate",
+ "x-csrf-token",
+ "x-xsrf-token",
+ "x-session-token",
+ "x-access-token",
+]);
+
+function redactHeaders(headers: Headers | Record): Record {
+ const filtered: Record = {};
+ for (const [key, value] of headers instanceof Headers ? headers.entries() : Object.entries(headers)) {
+ if (SENSITIVE_HEADERS.has(key.toLowerCase())) {
+ filtered[key] = "[REDACTED]";
+ } else {
+ filtered[key] = value;
+ }
+ }
+ return filtered;
+}
+
+const SENSITIVE_QUERY_PARAMS = new Set([
+ "api_key",
+ "api-key",
+ "apikey",
+ "token",
+ "access_token",
+ "access-token",
+ "auth_token",
+ "auth-token",
+ "password",
+ "passwd",
+ "secret",
+ "api_secret",
+ "api-secret",
+ "apisecret",
+ "key",
+ "session",
+ "session_id",
+ "session-id",
+]);
+
+function redactQueryParameters(queryParameters?: Record): Record | undefined {
+ if (queryParameters == null) {
+ return queryParameters;
+ }
+ const redacted: Record = {};
+ for (const [key, value] of Object.entries(queryParameters)) {
+ if (SENSITIVE_QUERY_PARAMS.has(key.toLowerCase())) {
+ redacted[key] = "[REDACTED]";
+ } else {
+ redacted[key] = value;
+ }
+ }
+ return redacted;
+}
+
+function redactUrl(url: string): string {
+ const protocolIndex = url.indexOf("://");
+ if (protocolIndex === -1) return url;
+
+ const afterProtocol = protocolIndex + 3;
+
+ // Find the first delimiter that marks the end of the authority section
+ const pathStart = url.indexOf("/", afterProtocol);
+ let queryStart = url.indexOf("?", afterProtocol);
+ let fragmentStart = url.indexOf("#", afterProtocol);
+
+ const firstDelimiter = Math.min(
+ pathStart === -1 ? url.length : pathStart,
+ queryStart === -1 ? url.length : queryStart,
+ fragmentStart === -1 ? url.length : fragmentStart,
+ );
+
+ // Find the LAST @ before the delimiter (handles multiple @ in credentials)
+ let atIndex = -1;
+ for (let i = afterProtocol; i < firstDelimiter; i++) {
+ if (url[i] === "@") {
+ atIndex = i;
+ }
+ }
+
+ if (atIndex !== -1) {
+ url = `${url.slice(0, afterProtocol)}[REDACTED]@${url.slice(atIndex + 1)}`;
+ }
+
+ // Recalculate queryStart since url might have changed
+ queryStart = url.indexOf("?");
+ if (queryStart === -1) return url;
+
+ fragmentStart = url.indexOf("#", queryStart);
+ const queryEnd = fragmentStart !== -1 ? fragmentStart : url.length;
+ const queryString = url.slice(queryStart + 1, queryEnd);
+
+ if (queryString.length === 0) return url;
+
+ // FAST PATH: Quick check if any sensitive keywords present
+ // Using indexOf is faster than regex for simple substring matching
+ const lower = queryString.toLowerCase();
+ const hasSensitive =
+ lower.includes("token") ||
+ lower.includes("key") ||
+ lower.includes("password") ||
+ lower.includes("passwd") ||
+ lower.includes("secret") ||
+ lower.includes("session") ||
+ lower.includes("auth");
+
+ if (!hasSensitive) {
+ return url;
+ }
+
+ // SLOW PATH: Parse and redact
+ const redactedParams: string[] = [];
+ const params = queryString.split("&");
+
+ for (const param of params) {
+ const equalIndex = param.indexOf("=");
+ if (equalIndex === -1) {
+ redactedParams.push(param);
+ continue;
+ }
+
+ const key = param.slice(0, equalIndex);
+ let shouldRedact = SENSITIVE_QUERY_PARAMS.has(key.toLowerCase());
+
+ if (!shouldRedact && key.includes("%")) {
+ try {
+ const decodedKey = decodeURIComponent(key);
+ shouldRedact = SENSITIVE_QUERY_PARAMS.has(decodedKey.toLowerCase());
+ } catch {}
+ }
+
+ redactedParams.push(shouldRedact ? `${key}=[REDACTED]` : param);
+ }
+
+ return url.slice(0, queryStart + 1) + redactedParams.join("&") + url.slice(queryEnd);
+}
+
+async function getHeaders(args: Fetcher.Args): Promise {
+ const newHeaders: Headers = new Headers();
+
+ newHeaders.set(
+ "Accept",
+ args.responseType === "json" ? "application/json" : args.responseType === "text" ? "text/plain" : "*/*",
+ );
+ if (args.body !== undefined && args.contentType != null) {
+ newHeaders.set("Content-Type", args.contentType);
+ }
+
+ if (args.headers == null) {
+ return newHeaders;
+ }
+
+ for (const [key, value] of Object.entries(args.headers)) {
+ const result = await EndpointSupplier.get(value, { endpointMetadata: args.endpointMetadata ?? {} });
+ if (typeof result === "string") {
+ newHeaders.set(key, result);
+ continue;
+ }
+ if (result == null) {
+ continue;
+ }
+ newHeaders.set(key, `${result}`);
+ }
+ return newHeaders;
+}
+
+export async function fetcherImpl(args: Fetcher.Args): Promise> {
+ const url = createRequestUrl(args.url, args.queryParameters);
+ const requestBody: BodyInit | undefined = await getRequestBody({
+ body: args.body,
+ type: args.requestType ?? "other",
+ });
+ const fetchFn = args.fetchFn ?? (await getFetchFn());
+ const headers = await getHeaders(args);
+ const logger = createLogger(args.logging);
+
+ if (logger.isDebug()) {
+ const metadata = {
+ method: args.method,
+ url: redactUrl(url),
+ headers: redactHeaders(headers),
+ queryParameters: redactQueryParameters(args.queryParameters),
+ hasBody: requestBody != null,
+ };
+ logger.debug("Making HTTP request", metadata);
+ }
+
+ try {
+ const response = await requestWithRetries(
+ async () =>
+ makeRequest(
+ fetchFn,
+ url,
+ args.method,
+ headers,
+ requestBody,
+ args.timeoutMs,
+ args.abortSignal,
+ args.withCredentials,
+ args.duplex,
+ ),
+ args.maxRetries,
+ );
+
+ if (response.status >= 200 && response.status < 400) {
+ if (logger.isDebug()) {
+ const metadata = {
+ method: args.method,
+ url: redactUrl(url),
+ statusCode: response.status,
+ responseHeaders: redactHeaders(response.headers),
+ };
+ logger.debug("HTTP request succeeded", metadata);
+ }
+ return {
+ ok: true,
+ body: (await getResponseBody(response, args.responseType)) as R,
+ headers: response.headers,
+ rawResponse: toRawResponse(response),
+ };
+ } else {
+ if (logger.isError()) {
+ const metadata = {
+ method: args.method,
+ url: redactUrl(url),
+ statusCode: response.status,
+ responseHeaders: redactHeaders(Object.fromEntries(response.headers.entries())),
+ };
+ logger.error("HTTP request failed with error status", metadata);
+ }
+ return {
+ ok: false,
+ error: {
+ reason: "status-code",
+ statusCode: response.status,
+ body: await getErrorResponseBody(response),
+ },
+ rawResponse: toRawResponse(response),
+ };
+ }
+ } catch (error) {
+ if (args.abortSignal?.aborted) {
+ if (logger.isError()) {
+ const metadata = {
+ method: args.method,
+ url: redactUrl(url),
+ };
+ logger.error("HTTP request was aborted", metadata);
+ }
+ return {
+ ok: false,
+ error: {
+ reason: "unknown",
+ errorMessage: "The user aborted a request",
+ },
+ rawResponse: abortRawResponse,
+ };
+ } else if (error instanceof Error && error.name === "AbortError") {
+ if (logger.isError()) {
+ const metadata = {
+ method: args.method,
+ url: redactUrl(url),
+ timeoutMs: args.timeoutMs,
+ };
+ logger.error("HTTP request timed out", metadata);
+ }
+ return {
+ ok: false,
+ error: {
+ reason: "timeout",
+ },
+ rawResponse: abortRawResponse,
+ };
+ } else if (error instanceof Error) {
+ if (logger.isError()) {
+ const metadata = {
+ method: args.method,
+ url: redactUrl(url),
+ errorMessage: error.message,
+ };
+ logger.error("HTTP request failed with error", metadata);
+ }
+ return {
+ ok: false,
+ error: {
+ reason: "unknown",
+ errorMessage: error.message,
+ },
+ rawResponse: unknownRawResponse,
+ };
+ }
+
+ if (logger.isError()) {
+ const metadata = {
+ method: args.method,
+ url: redactUrl(url),
+ error: toJson(error),
+ };
+ logger.error("HTTP request failed with unknown error", metadata);
+ }
+ return {
+ ok: false,
+ error: {
+ reason: "unknown",
+ errorMessage: toJson(error),
+ },
+ rawResponse: unknownRawResponse,
+ };
+ }
+}
+
+export const fetcher: FetchFunction = fetcherImpl;
diff --git a/src/core/fetcher/Headers.ts b/src/core/fetcher/Headers.ts
new file mode 100644
index 00000000..af841aa2
--- /dev/null
+++ b/src/core/fetcher/Headers.ts
@@ -0,0 +1,93 @@
+let Headers: typeof globalThis.Headers;
+
+if (typeof globalThis.Headers !== "undefined") {
+ Headers = globalThis.Headers;
+} else {
+ Headers = class Headers implements Headers {
+ private headers: Map;
+
+ constructor(init?: HeadersInit) {
+ this.headers = new Map();
+
+ if (init) {
+ if (init instanceof Headers) {
+ init.forEach((value, key) => this.append(key, value));
+ } else if (Array.isArray(init)) {
+ for (const [key, value] of init) {
+ if (typeof key === "string" && typeof value === "string") {
+ this.append(key, value);
+ } else {
+ throw new TypeError("Each header entry must be a [string, string] tuple");
+ }
+ }
+ } else {
+ for (const [key, value] of Object.entries(init)) {
+ if (typeof value === "string") {
+ this.append(key, value);
+ } else {
+ throw new TypeError("Header values must be strings");
+ }
+ }
+ }
+ }
+ }
+
+ append(name: string, value: string): void {
+ const key = name.toLowerCase();
+ const existing = this.headers.get(key) || [];
+ this.headers.set(key, [...existing, value]);
+ }
+
+ delete(name: string): void {
+ const key = name.toLowerCase();
+ this.headers.delete(key);
+ }
+
+ get(name: string): string | null {
+ const key = name.toLowerCase();
+ const values = this.headers.get(key);
+ return values ? values.join(", ") : null;
+ }
+
+ has(name: string): boolean {
+ const key = name.toLowerCase();
+ return this.headers.has(key);
+ }
+
+ set(name: string, value: string): void {
+ const key = name.toLowerCase();
+ this.headers.set(key, [value]);
+ }
+
+ forEach(callbackfn: (value: string, key: string, parent: Headers) => void, thisArg?: unknown): void {
+ const boundCallback = thisArg ? callbackfn.bind(thisArg) : callbackfn;
+ this.headers.forEach((values, key) => boundCallback(values.join(", "), key, this));
+ }
+
+ getSetCookie(): string[] {
+ return this.headers.get("set-cookie") || [];
+ }
+
+ *entries(): HeadersIterator<[string, string]> {
+ for (const [key, values] of this.headers.entries()) {
+ yield [key, values.join(", ")];
+ }
+ }
+
+ *keys(): HeadersIterator {
+ yield* this.headers.keys();
+ }
+
+ *values(): HeadersIterator {
+ for (const values of this.headers.values()) {
+ yield values.join(", ");
+ }
+ }
+
+ [Symbol.iterator](): HeadersIterator<[string, string]> {
+ return this.entries();
+ }
+ };
+}
+
+export { Headers };
diff --git a/src/core/fetcher/HttpResponsePromise.ts b/src/core/fetcher/HttpResponsePromise.ts
new file mode 100644
index 00000000..692ca7d7
--- /dev/null
+++ b/src/core/fetcher/HttpResponsePromise.ts
@@ -0,0 +1,116 @@
+import type { WithRawResponse } from "./RawResponse.js";
+
+/**
+ * A promise that returns the parsed response and lets you retrieve the raw response too.
+ */
+export class HttpResponsePromise extends Promise {
+ private innerPromise: Promise>;
+ private unwrappedPromise: Promise | undefined;
+
+ private constructor(promise: Promise>) {
+ // Initialize with a no-op to avoid premature parsing
+ super((resolve) => {
+ resolve(undefined as unknown as T);
+ });
+ this.innerPromise = promise;
+ }
+
+ /**
+ * Creates an `HttpResponsePromise` from a function that returns a promise.
+ *
+ * @param fn - A function that returns a promise resolving to a `WithRawResponse` object.
+ * @param args - Arguments to pass to the function.
+ * @returns An `HttpResponsePromise` instance.
+ */
+ public static fromFunction Promise>, T>(
+ fn: F,
+ ...args: Parameters
+ ): HttpResponsePromise {
+ return new HttpResponsePromise(fn(...args));
+ }
+
+ /**
+ * Creates a function that returns an `HttpResponsePromise` from a function that returns a promise.
+ *
+ * @param fn - A function that returns a promise resolving to a `WithRawResponse` object.
+ * @returns A function that returns an `HttpResponsePromise` instance.
+ */
+ public static interceptFunction<
+ F extends (...args: never[]) => Promise>,
+ T = Awaited>["data"],
+ >(fn: F): (...args: Parameters) => HttpResponsePromise {
+ return (...args: Parameters): HttpResponsePromise => {
+ return HttpResponsePromise.fromPromise(fn(...args));
+ };
+ }
+
+ /**
+ * Creates an `HttpResponsePromise` from an existing promise.
+ *
+ * @param promise - A promise resolving to a `WithRawResponse` object.
+ * @returns An `HttpResponsePromise` instance.
+ */
+ public static fromPromise(promise: Promise>): HttpResponsePromise {
+ return new HttpResponsePromise(promise);
+ }
+
+ /**
+ * Creates an `HttpResponsePromise` from an executor function.
+ *
+ * @param executor - A function that takes resolve and reject callbacks to create a promise.
+ * @returns An `HttpResponsePromise` instance.
+ */
+ public static fromExecutor(
+ executor: (resolve: (value: WithRawResponse) => void, reject: (reason?: unknown) => void) => void,
+ ): HttpResponsePromise {
+ const promise = new Promise>(executor);
+ return new HttpResponsePromise(promise);
+ }
+
+ /**
+ * Creates an `HttpResponsePromise` from a resolved result.
+ *
+ * @param result - A `WithRawResponse` object to resolve immediately.
+ * @returns An `HttpResponsePromise` instance.
+ */
+ public static fromResult(result: WithRawResponse): HttpResponsePromise {
+ const promise = Promise.resolve(result);
+ return new HttpResponsePromise(promise);
+ }
+
+ private unwrap(): Promise {
+ if (!this.unwrappedPromise) {
+ this.unwrappedPromise = this.innerPromise.then(({ data }) => data);
+ }
+ return this.unwrappedPromise;
+ }
+
+ /** @inheritdoc */
+ public override then(
+ onfulfilled?: ((value: T) => TResult1 | PromiseLike) | null,
+ onrejected?: ((reason: unknown) => TResult2 | PromiseLike) | null,
+ ): Promise {
+ return this.unwrap().then(onfulfilled, onrejected);
+ }
+
+ /** @inheritdoc */
+ public override catch(
+ onrejected?: ((reason: unknown) => TResult | PromiseLike) | null,
+ ): Promise {
+ return this.unwrap().catch(onrejected);
+ }
+
+ /** @inheritdoc */
+ public override finally(onfinally?: (() => void) | null): Promise {
+ return this.unwrap().finally(onfinally);
+ }
+
+ /**
+ * Retrieves the data and raw response.
+ *
+ * @returns A promise resolving to a `WithRawResponse` object.
+ */
+ public async withRawResponse(): Promise> {
+ return await this.innerPromise;
+ }
+}
diff --git a/src/core/fetcher/RawResponse.ts b/src/core/fetcher/RawResponse.ts
new file mode 100644
index 00000000..37fb44e2
--- /dev/null
+++ b/src/core/fetcher/RawResponse.ts
@@ -0,0 +1,61 @@
+import { Headers } from "./Headers.js";
+
+/**
+ * The raw response from the fetch call excluding the body.
+ */
+export type RawResponse = Omit<
+ {
+ [K in keyof Response as Response[K] extends Function ? never : K]: Response[K]; // strips out functions
+ },
+ "ok" | "body" | "bodyUsed"
+>; // strips out body and bodyUsed
+
+/**
+ * A raw response indicating that the request was aborted.
+ */
+export const abortRawResponse: RawResponse = {
+ headers: new Headers(),
+ redirected: false,
+ status: 499,
+ statusText: "Client Closed Request",
+ type: "error",
+ url: "",
+} as const;
+
+/**
+ * A raw response indicating an unknown error.
+ */
+export const unknownRawResponse: RawResponse = {
+ headers: new Headers(),
+ redirected: false,
+ status: 0,
+ statusText: "Unknown Error",
+ type: "error",
+ url: "",
+} as const;
+
+/**
+ * Converts a `RawResponse` object into a `RawResponse` by extracting its properties,
+ * excluding the `body` and `bodyUsed` fields.
+ *
+ * @param response - The `RawResponse` object to convert.
+ * @returns A `RawResponse` object containing the extracted properties of the input response.
+ */
+export function toRawResponse(response: Response): RawResponse {
+ return {
+ headers: response.headers,
+ redirected: response.redirected,
+ status: response.status,
+ statusText: response.statusText,
+ type: response.type,
+ url: response.url,
+ };
+}
+
+/**
+ * Creates a `RawResponse` from a standard `Response` object.
+ */
+export interface WithRawResponse {
+ readonly data: T;
+ readonly rawResponse: RawResponse;
+}
diff --git a/src/core/fetcher/ResponseWithBody.ts b/src/core/fetcher/ResponseWithBody.ts
new file mode 100644
index 00000000..445d40f8
--- /dev/null
+++ b/src/core/fetcher/ResponseWithBody.ts
@@ -0,0 +1,7 @@
+export type ResponseWithBody = Response & {
+ body: ReadableStream;
+};
+
+export function isResponseWithBody(response: Response): response is ResponseWithBody {
+ return (response as ResponseWithBody).body != null;
+}
diff --git a/src/core/fetcher/Supplier.ts b/src/core/fetcher/Supplier.ts
new file mode 100644
index 00000000..867c931c
--- /dev/null
+++ b/src/core/fetcher/Supplier.ts
@@ -0,0 +1,11 @@
+export type Supplier = T | Promise | (() => T | Promise);
+
+export const Supplier = {
+ get: async (supplier: Supplier): Promise => {
+ if (typeof supplier === "function") {
+ return (supplier as () => T)();
+ } else {
+ return supplier;
+ }
+ },
+};
diff --git a/src/core/fetcher/createRequestUrl.ts b/src/core/fetcher/createRequestUrl.ts
new file mode 100644
index 00000000..88e13265
--- /dev/null
+++ b/src/core/fetcher/createRequestUrl.ts
@@ -0,0 +1,6 @@
+import { toQueryString } from "../url/qs.js";
+
+export function createRequestUrl(baseUrl: string, queryParameters?: Record): string {
+ const queryString = toQueryString(queryParameters, { arrayFormat: "repeat" });
+ return queryString ? `${baseUrl}?${queryString}` : baseUrl;
+}
diff --git a/src/core/fetcher/getErrorResponseBody.ts b/src/core/fetcher/getErrorResponseBody.ts
new file mode 100644
index 00000000..7cf4e623
--- /dev/null
+++ b/src/core/fetcher/getErrorResponseBody.ts
@@ -0,0 +1,33 @@
+import { fromJson } from "../json.js";
+import { getResponseBody } from "./getResponseBody.js";
+
+export async function getErrorResponseBody(response: Response): Promise {
+ let contentType = response.headers.get("Content-Type")?.toLowerCase();
+ if (contentType == null || contentType.length === 0) {
+ return getResponseBody(response);
+ }
+
+ if (contentType.indexOf(";") !== -1) {
+ contentType = contentType.split(";")[0]?.trim() ?? "";
+ }
+ switch (contentType) {
+ case "application/hal+json":
+ case "application/json":
+ case "application/ld+json":
+ case "application/problem+json":
+ case "application/vnd.api+json":
+ case "text/json": {
+ const text = await response.text();
+ return text.length > 0 ? fromJson(text) : undefined;
+ }
+ default:
+ if (contentType.startsWith("application/vnd.") && contentType.endsWith("+json")) {
+ const text = await response.text();
+ return text.length > 0 ? fromJson(text) : undefined;
+ }
+
+ // Fallback to plain text if content type is not recognized
+ // Even if no body is present, the response will be an empty string
+ return await response.text();
+ }
+}
diff --git a/src/core/fetcher/getFetchFn.ts b/src/core/fetcher/getFetchFn.ts
new file mode 100644
index 00000000..9f845b95
--- /dev/null
+++ b/src/core/fetcher/getFetchFn.ts
@@ -0,0 +1,3 @@
+export async function getFetchFn(): Promise