/** * Athena API * REST API for the Athena system * * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface Chat */ export interface Chat { /** * Unique identifier * @type {string} * @memberof Chat */ id: string; /** * Creation timestamp * @type {Date} * @memberof Chat */ createdAt: Date; /** * Chat title * @type {string} * @memberof Chat */ title: string; /** * Type of chat * @type {string} * @memberof Chat */ chatType: string | null; /** * Last viewed timestamp * @type {Date} * @memberof Chat */ lastViewedAt: Date | null; /** * External user ID (matches the X-User-Id header value) * @type {string} * @memberof Chat */ userId: string; /** * Chat visibility * @type {string} * @memberof Chat */ visibility: ChatVisibilityEnum; /** * Optional subject ID * @type {string} * @memberof Chat */ subjectId: string | null; /** * Latest job ID * @type {string} * @memberof Chat */ latestJobId: string | null; /** * Scheduled analysis timestamp * @type {Date} * @memberof Chat */ analysisScheduledFor: Date | null; /** * Chat goal * @type {string} * @memberof Chat */ goal: string | null; /** * Whether the goal has been achieved * @type {boolean} * @memberof Chat */ goalAchieved: boolean | null; /** * Whether the chat is marked for review * @type {boolean} * @memberof Chat */ forReview: boolean; /** * Optional taxonomy ID the chat is scoped to * @type {string} * @memberof Chat */ taxonomyId: string | null; /** * Optional Canvas course id the chat is grounded to. When set, the chat stream injects study-space context pointing the model at the course's Canvas data on every turn. Null for chats without course grounding. * @type {string} * @memberof Chat */ courseId: string | null; /** * Snapshot of the learner's strength (0..1) captured when a learning session chat was created. Only populated for chatType 'level-up' or 'quick-practice'; null otherwise. * @type {number} * @memberof Chat */ initialStrength: number | null; /** * ID of the concept flagged as primary for this chat. Only populated for chatType 'level-up' or 'quick-practice'; null otherwise. * @type {string} * @memberof Chat */ primaryConceptId: string | null; /** * Timestamp when a learning session chat was closed by its completion tool. Null for chats that have not been closed. * @type {Date} * @memberof Chat */ closedAt: Date | null; } /** * @export */ export declare const ChatVisibilityEnum: { readonly Public: "public"; readonly Private: "private"; }; export type ChatVisibilityEnum = typeof ChatVisibilityEnum[keyof typeof ChatVisibilityEnum]; /** * Check if a given object implements the Chat interface. */ export declare function instanceOfChat(value: object): value is Chat; export declare function ChatFromJSON(json: any): Chat; export declare function ChatFromJSONTyped(json: any, ignoreDiscriminator: boolean): Chat; export declare function ChatToJSON(json: any): Chat; export declare function ChatToJSONTyped(value?: Chat | null, ignoreDiscriminator?: boolean): any;