/* tslint:disable */
/* eslint-disable */
/**
* Squad API
* API for managing Squad resources
*
* The version of the OpenAPI document: 0.14.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import type { OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseDataInnerRefinementLogInner } from "./OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseDataInnerRefinementLogInner.js";
import {
OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseDataInnerRefinementLogInnerFromJSON,
OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseDataInnerRefinementLogInnerToJSON,
} from "./OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseDataInnerRefinementLogInner.js";
/**
* Solution data for an opportunity
* @export
* @interface OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
export interface OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner {
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
id: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
systemPrompt: string | null;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
aiProcessingState: OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerAiProcessingStateEnum;
/**
*
* @type {Array<OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseDataInnerRefinementLogInner>}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
refinementLog: Array<OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseDataInnerRefinementLogInner>;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
title: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
description: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
status: OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerStatusEnum;
/**
*
* @type {Array<string>}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
pros: Array<string>;
/**
*
* @type {Array<string>}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
cons: Array<string>;
/**
*
* @type {boolean}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
hideContent: boolean;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
createdBy: OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerCreatedByEnum;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
ownerId?: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
createdAt: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner
*/
updatedAt: string;
}
/**
* @export
*/
export const OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerAiProcessingStateEnum =
{
Initial: "INITIAL",
Processing: "PROCESSING",
Finished: "FINISHED",
Error: "ERROR",
} as const;
export type OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerAiProcessingStateEnum =
(typeof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerAiProcessingStateEnum)[keyof typeof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerAiProcessingStateEnum];
/**
* @export
*/
export const OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerStatusEnum =
{
New: "New",
Solved: "Solved",
Planned: "Planned",
InProgress: "InProgress",
} as const;
export type OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerStatusEnum =
(typeof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerStatusEnum)[keyof typeof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerStatusEnum];
/**
* @export
*/
export const OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerCreatedByEnum =
{
User: "user",
Generated: "generated",
} as const;
export type OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerCreatedByEnum =
(typeof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerCreatedByEnum)[keyof typeof OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerCreatedByEnum];
/**
* Check if a given object implements the OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner interface.
*/
export function instanceOfOrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner(
value: object,
): value is OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner {
if (!("id" in value) || value["id"] === undefined) return false;
if (!("systemPrompt" in value) || value["systemPrompt"] === undefined)
return false;
if (
!("aiProcessingState" in value) ||
value["aiProcessingState"] === undefined
)
return false;
if (!("refinementLog" in value) || value["refinementLog"] === undefined)
return false;
if (!("title" in value) || value["title"] === undefined) return false;
if (!("description" in value) || value["description"] === undefined)
return false;
if (!("status" in value) || value["status"] === undefined) return false;
if (!("pros" in value) || value["pros"] === undefined) return false;
if (!("cons" in value) || value["cons"] === undefined) return false;
if (!("hideContent" in value) || value["hideContent"] === undefined)
return false;
if (!("createdBy" in value) || value["createdBy"] === undefined) return false;
if (!("createdAt" in value) || value["createdAt"] === undefined) return false;
if (!("updatedAt" in value) || value["updatedAt"] === undefined) return false;
return true;
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerFromJSON(
json: any,
): OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner {
return OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerFromJSONTyped(
json,
false,
);
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerFromJSONTyped(
json: any,
ignoreDiscriminator: boolean,
): OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner {
if (json == null) {
return json;
}
return {
id: json["id"],
systemPrompt: json["systemPrompt"],
aiProcessingState: json["aiProcessingState"],
refinementLog: (json["refinementLog"] as Array<any>).map(
OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseDataInnerRefinementLogInnerFromJSON,
),
title: json["title"],
description: json["description"],
status: json["status"],
pros: json["pros"],
cons: json["cons"],
hideContent: json["hideContent"],
createdBy: json["createdBy"],
ownerId: json["ownerId"] == null ? undefined : json["ownerId"],
createdAt: json["createdAt"],
updatedAt: json["updatedAt"],
};
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerToJSON(
json: any,
): OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner {
return OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerToJSONTyped(
json,
false,
);
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInnerToJSONTyped(
value?: OrganisationsOrgIdWorkspacesWorkspaceIdSolutionsGet200ResponseDataInner | null,
ignoreDiscriminator: boolean = false,
): any {
if (value == null) {
return value;
}
return {
id: value["id"],
systemPrompt: value["systemPrompt"],
aiProcessingState: value["aiProcessingState"],
refinementLog: (value["refinementLog"] as Array<any>).map(
OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseDataInnerRefinementLogInnerToJSON,
),
title: value["title"],
description: value["description"],
status: value["status"],
pros: value["pros"],
cons: value["cons"],
hideContent: value["hideContent"],
createdBy: value["createdBy"],
ownerId: value["ownerId"],
createdAt: value["createdAt"],
updatedAt: value["updatedAt"],
};
}