/** * 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. */ import * as runtime from '../runtime'; import type { CreateObjectiveResourceDto, CreateStudyObjectiveDto, ObjectiveResource, PaginatedObjectiveResources, PaginatedQuizzes, PaginatedStudyObjectives, StudyObjective, UpdateStudyObjectiveDto } from '../models/index'; export interface CreateObjectiveResourceRequest { xUserId: string; studyObjectiveId: string; createObjectiveResourceDto: CreateObjectiveResourceDto; } export interface CreateStudyObjectiveRequest { xUserId: string; createStudyObjectiveDto: CreateStudyObjectiveDto; xCanvasDomain?: string; } export interface DeleteObjectiveResourceRequest { xUserId: string; studyObjectiveId: string; resourceId: string; } export interface DeleteStudyObjectiveRequest { xUserId: string; studyObjectiveId: string; } export interface GetStudyObjectiveRequest { xUserId: string; studyObjectiveId: string; } export interface ListObjectiveResourcesRequest { xUserId: string; studyObjectiveId: string; limit?: number; cursor?: string; } export interface ListStudyObjectiveQuizzesRequest { xUserId: string; studyObjectiveId: string; limit?: number; cursor?: string; mode?: ListStudyObjectiveQuizzesModeEnum; } export interface ListStudyObjectivesRequest { xUserId: string; limit?: number; cursor?: string; courseId?: string; studySpaceId?: string; status?: ListStudyObjectivesStatusEnum; } export interface UpdateStudyObjectiveRequest { xUserId: string; studyObjectiveId: string; updateStudyObjectiveDto: UpdateStudyObjectiveDto; } /** * */ export declare class StudyObjectivesApi extends runtime.BaseAPI { /** * Records that a chat (regular chat, quiz, flashcard, or plan activity) is being used in service of a study objective. Pass `studyPlanActivityId` to record which study plan activity the chat was started from — required for `plan-activity` resources — which grounds the chat in that activity and marks it complete. * Attach a chat resource to a study objective */ createObjectiveResourceRaw(requestParameters: CreateObjectiveResourceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Records that a chat (regular chat, quiz, flashcard, or plan activity) is being used in service of a study objective. Pass `studyPlanActivityId` to record which study plan activity the chat was started from — required for `plan-activity` resources — which grounds the chat in that activity and marks it complete. * Attach a chat resource to a study objective */ createObjectiveResource(requestParameters: CreateObjectiveResourceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Creates a study objective in one of the learner\'s study spaces, addressed either by `courseId` (the space for that Canvas course, created on first use) or by `studySpaceId` (an existing space, which is how an objective reaches a space that has no Canvas course). Exactly one of the two is required. An objective filed by `studySpaceId` inherits the space\'s course, so a space with no Canvas course produces an objective with no course id, reachable only through `GET ?studySpaceId=`. When the body includes `canvasObject` metadata, the Canvas object is mirrored into the source-of-truth table (upserted on its Canvas identity) and the objective is upserted on (user, Canvas object): re-syncing the same Canvas item updates the user\'s existing objective rather than inserting a duplicate. `canvasObject` requires `courseId` and the X-Canvas-Domain header. Without `canvasObject`, this always inserts a new custom objective. * Create or upsert a study objective */ createStudyObjectiveRaw(requestParameters: CreateStudyObjectiveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Creates a study objective in one of the learner\'s study spaces, addressed either by `courseId` (the space for that Canvas course, created on first use) or by `studySpaceId` (an existing space, which is how an objective reaches a space that has no Canvas course). Exactly one of the two is required. An objective filed by `studySpaceId` inherits the space\'s course, so a space with no Canvas course produces an objective with no course id, reachable only through `GET ?studySpaceId=`. When the body includes `canvasObject` metadata, the Canvas object is mirrored into the source-of-truth table (upserted on its Canvas identity) and the objective is upserted on (user, Canvas object): re-syncing the same Canvas item updates the user\'s existing objective rather than inserting a duplicate. `canvasObject` requires `courseId` and the X-Canvas-Domain header. Without `canvasObject`, this always inserts a new custom objective. * Create or upsert a study objective */ createStudyObjective(requestParameters: CreateStudyObjectiveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Detach a resource from a study objective */ deleteObjectiveResourceRaw(requestParameters: DeleteObjectiveResourceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Detach a resource from a study objective */ deleteObjectiveResource(requestParameters: DeleteObjectiveResourceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Deletes a study objective. Cascade-deletes any objective resources attached to it. * Delete a study objective */ deleteStudyObjectiveRaw(requestParameters: DeleteStudyObjectiveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Deletes a study objective. Cascade-deletes any objective resources attached to it. * Delete a study objective */ deleteStudyObjective(requestParameters: DeleteStudyObjectiveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Get a study objective by ID */ getStudyObjectiveRaw(requestParameters: GetStudyObjectiveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Get a study objective by ID */ getStudyObjective(requestParameters: GetStudyObjectiveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * List resources attached to a study objective */ listObjectiveResourcesRaw(requestParameters: ListObjectiveResourcesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * List resources attached to a study objective */ listObjectiveResources(requestParameters: ListObjectiveResourcesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Returns the quizzes and flashcard sets attached to a study objective, ordered by creation date (newest first). Each item carries the id of the chat it was generated in, so a client can open the originating conversation. * List quizzes and flashcards for a study objective */ listStudyObjectiveQuizzesRaw(requestParameters: ListStudyObjectiveQuizzesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns the quizzes and flashcard sets attached to a study objective, ordered by creation date (newest first). Each item carries the id of the chat it was generated in, so a client can open the originating conversation. * List quizzes and flashcards for a study objective */ listStudyObjectiveQuizzes(requestParameters: ListStudyObjectiveQuizzesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Returns study objectives for the authenticated user within one scope, ordered by creation date (newest first). Scope is either `courseId` (every objective the learner has for that Canvas course) or `studySpaceId` (every objective filed in that space, which is the only way to reach a space that has no Canvas course). Exactly one of the two is required. * List study objectives for a course or study space */ listStudyObjectivesRaw(requestParameters: ListStudyObjectivesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns study objectives for the authenticated user within one scope, ordered by creation date (newest first). Scope is either `courseId` (every objective the learner has for that Canvas course) or `studySpaceId` (every objective filed in that space, which is the only way to reach a space that has no Canvas course). Exactly one of the two is required. * List study objectives for a course or study space */ listStudyObjectives(requestParameters: ListStudyObjectivesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Update a study objective */ updateStudyObjectiveRaw(requestParameters: UpdateStudyObjectiveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Update a study objective */ updateStudyObjective(requestParameters: UpdateStudyObjectiveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; } /** * @export */ export declare const ListStudyObjectiveQuizzesModeEnum: { readonly Quiz: "quiz"; readonly Flashcards: "flashcards"; }; export type ListStudyObjectiveQuizzesModeEnum = typeof ListStudyObjectiveQuizzesModeEnum[keyof typeof ListStudyObjectiveQuizzesModeEnum]; /** * @export */ export declare const ListStudyObjectivesStatusEnum: { readonly Active: "active"; readonly Archived: "archived"; readonly All: "all"; }; export type ListStudyObjectivesStatusEnum = typeof ListStudyObjectivesStatusEnum[keyof typeof ListStudyObjectivesStatusEnum];