/* 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 { OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerRefinementLogInner } from "./OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerRefinementLogInner.js";
import {
OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerRefinementLogInnerFromJSON,
OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerRefinementLogInnerToJSON,
} from "./OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerRefinementLogInner.js";
/**
* Requirement data for a product or feature
* @export
* @interface OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
export interface OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner {
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
id: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
systemPrompt: string | null;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
aiProcessingState: OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerAiProcessingStateEnum;
/**
*
* @type {Array<OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerRefinementLogInner>}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
refinementLog: Array<OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerRefinementLogInner>;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
title: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
description: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
feature: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
requirements: string;
/**
*
* @type {boolean}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
hideContent: boolean;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
ownerId?: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
createdAt: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
updatedAt: string;
/**
*
* @type {string}
* @memberof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner
*/
status: OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerStatusEnum;
}
/**
* @export
*/
export const OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerAiProcessingStateEnum =
{
Initial: "INITIAL",
Processing: "PROCESSING",
Finished: "FINISHED",
Error: "ERROR",
} as const;
export type OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerAiProcessingStateEnum =
(typeof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerAiProcessingStateEnum)[keyof typeof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerAiProcessingStateEnum];
/**
* @export
*/
export const OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerStatusEnum =
{
Draft: "draft",
Ready: "ready",
Complete: "complete",
} as const;
export type OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerStatusEnum =
(typeof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerStatusEnum)[keyof typeof OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerStatusEnum];
/**
* Check if a given object implements the OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner interface.
*/
export function instanceOfOrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner(
value: object,
): value is OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner {
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 (!("feature" in value) || value["feature"] === undefined) return false;
if (!("requirements" in value) || value["requirements"] === undefined)
return false;
if (!("hideContent" in value) || value["hideContent"] === undefined)
return false;
if (!("createdAt" in value) || value["createdAt"] === undefined) return false;
if (!("updatedAt" in value) || value["updatedAt"] === undefined) return false;
if (!("status" in value) || value["status"] === undefined) return false;
return true;
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerFromJSON(
json: any,
): OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner {
return OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerFromJSONTyped(
json,
false,
);
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerFromJSONTyped(
json: any,
ignoreDiscriminator: boolean,
): OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner {
if (json == null) {
return json;
}
return {
id: json["id"],
systemPrompt: json["systemPrompt"],
aiProcessingState: json["aiProcessingState"],
refinementLog: (json["refinementLog"] as Array<any>).map(
OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerRefinementLogInnerFromJSON,
),
title: json["title"],
description: json["description"],
feature: json["feature"],
requirements: json["requirements"],
hideContent: json["hideContent"],
ownerId: json["ownerId"] == null ? undefined : json["ownerId"],
createdAt: json["createdAt"],
updatedAt: json["updatedAt"],
status: json["status"],
};
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerToJSON(
json: any,
): OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner {
return OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerToJSONTyped(
json,
false,
);
}
export function OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerToJSONTyped(
value?: OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInner | 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(
OrganisationsOrgIdWorkspacesWorkspaceIdRequirementsGet200ResponseInnerRefinementLogInnerToJSON,
),
title: value["title"],
description: value["description"],
feature: value["feature"],
requirements: value["requirements"],
hideContent: value["hideContent"],
ownerId: value["ownerId"],
createdAt: value["createdAt"],
updatedAt: value["updatedAt"],
status: value["status"],
};
}