/* tslint:disable */
/* eslint-disable */
/**
* Squad API
* API for managing Squad resources
*
* The version of the OpenAPI document: 2.4.1
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime.js';
import type { OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestModelConfig } from './OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestModelConfig.js';
import {
OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestModelConfigFromJSON,
OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestModelConfigFromJSONTyped,
OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestModelConfigToJSON,
OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestModelConfigToJSONTyped,
} from './OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestModelConfig.js';
/**
*
* @export
* @interface OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest
*/
export interface OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest {
/**
* Source of the token usage
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest
*/
source: string;
/**
* Number of input tokens
* @type {number}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest
*/
inputTokens: number;
/**
* Number of output tokens
* @type {number}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest
*/
outputTokens: number;
/**
*
* @type {OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestModelConfig}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest
*/
modelConfig: OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestModelConfig;
/**
* Whether the request is using thinking mode
* @type {boolean}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest
*/
thinking: boolean;
}
/**
* Check if a given object implements the OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest interface.
*/
export function instanceOfOrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest(value: object): value is OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest {
if (!('source' in value) || value['source'] === undefined) return false;
if (!('inputTokens' in value) || value['inputTokens'] === undefined) return false;
if (!('outputTokens' in value) || value['outputTokens'] === undefined) return false;
if (!('modelConfig' in value) || value['modelConfig'] === undefined) return false;
if (!('thinking' in value) || value['thinking'] === undefined) return false;
return true;
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestFromJSON(json: any): OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest {
return OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestFromJSONTyped(json, false);
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest {
if (json == null) {
return json;
}
return {
'source': json['source'],
'inputTokens': json['inputTokens'],
'outputTokens': json['outputTokens'],
'modelConfig': OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestModelConfigFromJSON(json['modelConfig']),
'thinking': json['thinking'],
};
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestToJSON(json: any): OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest {
return OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestToJSONTyped(json, false);
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestToJSONTyped(value?: OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequest | null, ignoreDiscriminator: boolean = false): any {
if (value == null) {
return value;
}
return {
'source': value['source'],
'inputTokens': value['inputTokens'],
'outputTokens': value['outputTokens'],
'modelConfig': OrganisationsOrgIdWorkspacesWorkspaceIdTokenUsagePostRequestModelConfigToJSON(value['modelConfig']),
'thinking': value['thinking'],
};
}