@examplary/sdk 2.17.0 → 2.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/context.ts","../src/error.ts","../src/request.ts","../src/overrides/media.upload.ts","../generated/sdk.ts"],"sourcesContent":["export { Examplary, type Args, type Response } from \"../generated/sdk\";\nexport { ExamplaryError } from \"./error\";\nexport type {\n ExamplaryClientOptions,\n ExamplaryRequestOptions,\n} from \"./options\";\nexport type { components, operations, paths } from \"../generated/types\";\n","import axios, { type AxiosError, type AxiosInstance } from \"axios\";\n\nimport { ExamplaryError } from \"./error\";\nimport type { ExamplaryClientOptions } from \"./options\";\n\nexport interface ClientContext {\n axios: AxiosInstance;\n apiKey: string;\n}\n\nexport const createClientContext = (\n options: ExamplaryClientOptions,\n): ClientContext => {\n const { apiKey, baseUrl, headers, ...rest } = options;\n\n const instance = axios.create({\n baseURL: baseUrl ?? \"https://api.examplary.ai\",\n ...rest,\n headers: {\n Authorization: `Bearer ${apiKey}`,\n ...headers,\n },\n });\n\n instance.interceptors.response.use(\n (response) => response,\n (error: AxiosError) => Promise.reject(ExamplaryError.fromAxiosError(error)),\n );\n\n return { axios: instance, apiKey };\n};\n","import {\n AxiosError,\n type AxiosResponse,\n type InternalAxiosRequestConfig,\n} from \"axios\";\n\nexport class ExamplaryError<T = unknown, D = any> extends AxiosError<T, D> {\n originalMessage?: string;\n\n constructor(\n message?: string,\n code?: string,\n config?: InternalAxiosRequestConfig<D>,\n request?: any,\n response?: AxiosResponse<T, D>,\n ) {\n super(message, code, config, request, response);\n this.name = \"ExamplaryError\";\n }\n\n static fromAxiosError(error: AxiosError): ExamplaryError {\n const e = new ExamplaryError(\n error.message,\n error.code,\n error.config,\n error.request,\n error.response,\n );\n\n const data = error.response?.data as\n | { error?: string | { message?: string } }\n | undefined;\n\n if (typeof data?.error === \"string\") {\n e.originalMessage = error.message;\n e.message = data.error;\n } else if (typeof data?.error?.message === \"string\") {\n e.originalMessage = error.message;\n e.message = data.error.message;\n }\n\n return e;\n }\n}\n","import type { ClientContext } from \"./context\";\nimport { ExamplaryError } from \"./error\";\nimport type { ExamplaryRequestOptions } from \"./options\";\n\nconst API_KEY_REGEX = /^examp_[A-Za-z0-9]+$/;\n\nexport const request = async <T>(\n ctx: ClientContext,\n method: string,\n pathTemplate: string,\n pathKeys: readonly string[],\n queryKeys: readonly string[],\n hasBody: boolean,\n args: Record<string, unknown> | undefined,\n options: ExamplaryRequestOptions | undefined,\n): Promise<T> => {\n if (!API_KEY_REGEX.test(ctx.apiKey)) {\n throw new ExamplaryError(\"Invalid API key\");\n }\n\n const flat = args ?? {};\n\n const url = pathTemplate.replace(/\\{(\\w+)\\}/g, (_, key) => {\n const value = flat[key];\n if (value === undefined || value === null) {\n throw new ExamplaryError(`Missing required path parameter \"${key}\"`);\n }\n return encodeURIComponent(String(value));\n });\n\n const params: Record<string, unknown> = {};\n for (const k of queryKeys) {\n if (flat[k] !== undefined) params[k] = flat[k];\n }\n\n let data: unknown;\n if (hasBody) {\n const consumed = new Set<string>([...pathKeys, ...queryKeys]);\n const body: Record<string, unknown> = {};\n let any = false;\n for (const [k, v] of Object.entries(flat)) {\n if (consumed.has(k)) continue;\n body[k] = v;\n any = true;\n }\n if (any) data = body;\n }\n\n const response = await ctx.axios.request<T>({\n ...options,\n method,\n url,\n params: Object.keys(params).length ? params : undefined,\n data,\n });\n return response.data;\n};\n","import type { ClientContext } from \"../context\";\nimport { ExamplaryError } from \"../error\";\nimport type { ExamplaryRequestOptions } from \"../options\";\n\nexport type Args = {\n filename?: string;\n type?: string;\n contentType?: string;\n content?: Buffer | string;\n};\n\nexport type Response = {\n publicUrl: string;\n uploadUrl: string;\n};\n\nexport const override = async (\n ctx: ClientContext,\n args: Args,\n options?: ExamplaryRequestOptions,\n): Promise<Response> => {\n const contentType = args.contentType ?? \"application/octet-stream\";\n\n const { data } = await ctx.axios.request<{\n uploadUrl: string;\n publicUrl: string;\n }>({\n ...options,\n method: \"GET\",\n url: \"/media/upload\",\n params: {\n contentType,\n ...(args.filename ? { filename: args.filename } : {}),\n ...(args.type ? { type: args.type } : {}),\n },\n });\n\n if (args.content) {\n const body =\n typeof Buffer !== \"undefined\" && !Buffer.isBuffer(args.content)\n ? Buffer.from(args.content)\n : args.content;\n\n const uploadRes = await fetch(data.uploadUrl, {\n method: \"PUT\",\n headers: { \"Content-Type\": contentType },\n body: body as BodyInit,\n });\n\n if (!uploadRes.ok) {\n throw new ExamplaryError(\n `Upload failed: ${await uploadRes.text()}`,\n \"UploadError\",\n );\n }\n }\n\n return data;\n};\n","// This file is auto-generated. Do not edit by hand.\n\nimport { createClientContext, type ClientContext } from \"../src/context\";\nimport type {\n ExamplaryClientOptions,\n ExamplaryRequestOptions,\n} from \"../src/options\";\nimport { request } from \"../src/request\";\nimport type { operations } from \"./types\";\n\nimport * as _override_mediaUpload from \"../src/overrides/media.upload\";\n\ninterface _PathOverrides {\n \"questionTypes.get\": { id: string };\n \"questionTypes.delete\": { id: string };\n \"questionTypes.getQti3Pci\": { questionTypeId: string };\n \"questionTypes.enable\": { questionTypeId: string };\n \"questionTypes.disable\": { questionTypeId: string };\n \"library.collections.items.list\": { collectionId: string };\n \"library.collections.items.create\": { collectionId: string };\n \"library.items.update\": { itemId: string };\n \"library.items.delete\": { itemId: string };\n \"library.collections.update\": { collectionId: string };\n \"library.collections.delete\": { collectionId: string };\n \"embedSessions.get\": { id: string };\n \"embedSessions.revoke\": { id: string };\n \"exams.sessions.list\": { examId: string };\n \"exams.sessions.import\": { examId: string };\n \"exams.sessions.scan\": { examId: string };\n \"exams.sessions.releaseGrades\": { examId: string };\n \"exams.sessions.scanImages\": { examId: string };\n \"exams.sessions.scanStudentName\": { examId: string };\n \"exams.sessions.scanDocument\": { examId: string };\n \"exams.sessions.getResultsSummary\": { examId: string };\n \"exams.sessions.generateResultsSummary\": { examId: string };\n \"exams.sessions.get\": { examId: string; sessionId: string };\n \"exams.sessions.delete\": { examId: string; sessionId: string };\n \"exams.sessions.update\": { examId: string; sessionId: string };\n \"exams.sessions.assignUser\": { examId: string; sessionId: string };\n \"exams.sessions.saveFeedback\": { examId: string; sessionId: string };\n \"exams.sessions.saveOverallFeedback\": { examId: string; sessionId: string };\n \"exams.sessions.generateOverallFeedback\": { examId: string; sessionId: string };\n \"exams.sessions.acceptAllSuggestions\": { examId: string; sessionId: string };\n \"exams.sessions.acceptSuggestion\": { examId: string; sessionId: string; questionId: string };\n \"exams.sessions.editAnswer\": { examId: string; sessionId: string; questionId: string };\n \"exams.sessions.comments.list\": { examId: string; sessionId: string };\n \"exams.sessions.comments.create\": { examId: string; sessionId: string };\n \"exams.sessions.comments.update\": { examId: string; sessionId: string; commentId: string };\n \"exams.sessions.comments.delete\": { examId: string; sessionId: string; commentId: string };\n \"exams.questions.import\": { examId: string };\n \"exams.questions.generate\": { examId: string };\n \"exams.questions.get\": { examId: string; questionId: string };\n \"exams.questions.update\": { examId: string; questionId: string };\n \"exams.questions.getQuality\": { examId: string; questionId: string };\n \"exams.questions.regenerate\": { examId: string; questionId: string };\n \"exams.export.qti3Zip\": { examId: string };\n \"exams.export.qti21Zip\": { examId: string };\n \"exams.get\": { id: string };\n \"exams.update\": { id: string };\n \"exams.delete\": { id: string };\n \"exams.duplicate\": { examId: string };\n \"exams.print\": { examId: string };\n \"exams.startGeneration\": { examId: string };\n \"exams.cancelGeneration\": { examId: string };\n \"exams.getContextSuggestions\": { examId: string };\n \"orgs.join\": { orgId: string };\n \"org.emailDomains.update\": { domain: string };\n \"org.emailDomains.delete\": { domain: string };\n \"org.emailDomains.verify\": { domain: string };\n \"org.joinRequests.approve\": { userId: string };\n \"org.joinRequests.reject\": { userId: string };\n \"attributes.update\": { id: string };\n \"attributes.delete\": { id: string };\n \"taxonomies.update\": { id: string };\n \"taxonomies.delete\": { id: string };\n \"permissions.list\": { resource: string };\n \"permissions.assign\": { resource: string };\n \"permissions.getActorRole\": { actor: string; resource: string };\n \"permissions.delete\": { resource: string; actor: string };\n \"users.update\": { id: string };\n \"users.delete\": { id: string };\n \"users.resetTwoFactor\": { userId: string };\n \"practiceSpaces.get\": { id: string };\n \"practiceSpaces.update\": { id: string };\n \"practiceSpaces.delete\": { id: string };\n \"practiceSpaces.duplicate\": { practiceSpaceId: string };\n \"practiceSpaces.generateTopics\": { practiceSpaceId: string };\n \"practiceSpaces.cancelGenerateTopics\": { practiceSpaceId: string };\n \"practiceSpaces.questionsPreview\": { practiceSpaceId: string };\n \"practiceSpaces.getProgress\": { practiceSpaceId: string };\n \"practiceSpaces.generateTopicFeedback\": { practiceSpaceId: string };\n \"practiceSpaces.updateQuestion\": { practiceSpaceId: string; questionId: string };\n \"practiceSpaces.students.list\": { practiceSpaceId: string };\n \"practiceSpaces.students.get\": { practiceSpaceId: string; studentId: string };\n \"practiceSpaces.sessions.create\": { practiceSpaceId: string };\n \"practiceSpaces.sessions.getMine\": { practiceSpaceId: string };\n \"practiceSpaces.sessions.get\": { practiceSpaceId: string; sessionId: string };\n \"practiceSpaces.sessions.saveAnswer\": { practiceSpaceId: string; sessionId: string; questionId: string };\n \"sourceMaterials.get\": { id: string };\n \"sourceMaterials.update\": { id: string };\n \"sourceMaterials.delete\": { id: string };\n \"sourceMaterials.slice\": { sourceMaterialId: string };\n \"folders.get\": { id: string };\n \"folders.update\": { id: string };\n \"folders.delete\": { id: string };\n \"groups.update\": { id: string };\n \"groups.delete\": { id: string };\n \"groups.listMembers\": { groupId: string };\n \"groups.addMember\": { groupId: string };\n \"groups.updateMember\": { groupId: string; userId: string };\n \"groups.removeMember\": { groupId: string; userId: string };\n \"integrations.get\": { integrationType: string };\n \"integrations.upsert\": { integrationType: string };\n \"integrations.delete\": { integrationType: string };\n \"questionBank.update\": { id: string };\n \"questionBank.delete\": { id: string };\n \"patchRubrics:id\": { id: string };\n \"deleteRubrics:id\": { id: string };\n \"prompts.update\": { id: string };\n \"prompts.delete\": { id: string };\n \"jobs.get\": { id: string };\n \"jobs.cancel\": { id: string };\n}\n\ntype _ToObject<T> = [Exclude<T, undefined>] extends [never]\n ? {}\n : Exclude<T, undefined> extends object\n ? Exclude<T, undefined>\n : {};\n\ntype _Query<K extends keyof operations> = operations[K] extends {\n parameters: { query?: infer Q };\n}\n ? _ToObject<Q>\n : {};\n\ntype _Body<K extends keyof operations> = operations[K] extends {\n requestBody?: infer R;\n}\n ? Exclude<R, undefined> extends { content: { \"application/json\": infer B } }\n ? _ToObject<B>\n : {}\n : {};\n\ntype _SuccessShape<R> = [R] extends [never]\n ? never\n : R extends { 200: infer T }\n ? T\n : R extends { 201: infer T }\n ? T\n : R extends { 202: infer T }\n ? T\n : R extends { 204: infer T }\n ? T\n : never;\n\nexport type Args<K extends keyof operations> =\n (K extends keyof _PathOverrides ? _PathOverrides[K] : {}) &\n _Query<K> &\n _Body<K>;\n\nexport type Response<K extends keyof operations> =\n _SuccessShape<operations[K][\"responses\"]> extends infer X\n ? [X] extends [never]\n ? any\n : X extends { content: { \"application/json\": infer T } }\n ? T\n : any\n : any;\n\nexport class QuestionTypes {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List public question types\n * \n * Lists all public question types, which can be enabled in workspaces.\n * \n * API endpoint: `GET /question-types/public`\n */\n listPublic(args?: Args<\"questionTypes.listPublic\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.listPublic\">>;\n listPublic(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.listPublic\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/question-types/public\", [], [], false, args, options);\n }\n\n /**\n * Get question type\n * \n * Retrieves a specific question type by its ID.\n * \n * API endpoint: `GET /question-types/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.get\">>;\n get(args: Args<\"questionTypes.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/question-types/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Delete question type\n * \n * Deletes a specific question type by its ID. Note that only the owner organization of the question type can delete it, and only if it has not been used in an exam.\n * \n * API endpoint: `DELETE /question-types/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.delete\">>;\n delete(args: Args<\"questionTypes.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/question-types/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Get question type PCI module for QTI 3 export\n * \n * Get JS module for a question type PCI for QTI 3 export.\n * \n * API endpoint: `GET /question-types/{questionTypeId}/export/qti3-pci`\n */\n getQti3Pci(questionTypeId: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.getQti3Pci\">>;\n getQti3Pci(args: Args<\"questionTypes.getQti3Pci\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.getQti3Pci\">>;\n getQti3Pci(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.getQti3Pci\">> {\n const args = typeof arg === \"string\" ? { questionTypeId: arg } : arg;\n return request(this.ctx, \"GET\", \"/question-types/{questionTypeId}/export/qti3-pci\", [\"questionTypeId\"], [], false, args, options);\n }\n\n /**\n * List question types\n * \n * Lists all question types, either those available by default or those created within the user's organization.\n * \n * API endpoint: `GET /question-types`\n */\n list(args?: Args<\"questionTypes.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/question-types\", [], [], false, args, options);\n }\n\n /**\n * Upsert question type\n * \n * Creates a new question type or updates an existing one. If the question type already exists, it will be updated; otherwise, a new one will be created.\n * \n * API endpoint: `POST /question-types`\n */\n upsert(args?: Args<\"questionTypes.upsert\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.upsert\">>;\n upsert(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.upsert\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/question-types\", [], [], true, args, options);\n }\n\n /**\n * Enable question type\n * \n * Enable a question type for the current workspace.\n * \n * API endpoint: `POST /question-types/{questionTypeId}/enable`\n */\n enable(questionTypeId: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.enable\">>;\n enable(args: Args<\"questionTypes.enable\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.enable\">>;\n enable(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.enable\">> {\n const args = typeof arg === \"string\" ? { questionTypeId: arg } : arg;\n return request(this.ctx, \"POST\", \"/question-types/{questionTypeId}/enable\", [\"questionTypeId\"], [], false, args, options);\n }\n\n /**\n * Disable question type\n * \n * Disable a question type for the current workspace.\n * \n * API endpoint: `POST /question-types/{questionTypeId}/disable`\n */\n disable(questionTypeId: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.disable\">>;\n disable(args: Args<\"questionTypes.disable\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.disable\">>;\n disable(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.disable\">> {\n const args = typeof arg === \"string\" ? { questionTypeId: arg } : arg;\n return request(this.ctx, \"POST\", \"/question-types/{questionTypeId}/disable\", [\"questionTypeId\"], [], false, args, options);\n }\n}\n\nexport class LibraryCollectionsItems {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List items by collection\n * \n * Lists all library items in the specified collection. Requires at least viewer access to the collection.\n * \n * API endpoint: `GET /library/collections/{collectionId}/items`\n */\n list(collectionId: string, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.items.list\">>;\n list(args: Args<\"library.collections.items.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.items.list\">>;\n list(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.items.list\">> {\n const args = typeof arg === \"string\" ? { collectionId: arg } : arg;\n return request(this.ctx, \"GET\", \"/library/collections/{collectionId}/items\", [\"collectionId\"], [], false, args, options);\n }\n\n /**\n * Create library item\n * \n * Adds an item to a collection. Requires at least editor access to both the collection and the resource being added.\n * \n * API endpoint: `POST /library/collections/{collectionId}/items`\n */\n create(args: Args<\"library.collections.items.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.items.create\">>;\n create(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.items.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/library/collections/{collectionId}/items\", [\"collectionId\"], [], true, args, options);\n }\n}\n\nexport class LibraryCollections {\n readonly items: LibraryCollectionsItems;\n\n constructor(private readonly ctx: ClientContext) {\n this.items = new LibraryCollectionsItems(this.ctx);\n }\n\n /**\n * List collections\n * \n * Lists the library collections the current user has access to.\n * \n * API endpoint: `GET /library/collections`\n */\n list(args?: Args<\"library.collections.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/library/collections\", [], [], false, args, options);\n }\n\n /**\n * Create collection\n * \n * Creates a new library collection. The creator becomes its owner.\n * \n * API endpoint: `POST /library/collections`\n */\n create(args?: Args<\"library.collections.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/library/collections\", [], [], true, args, options);\n }\n\n /**\n * Update collection\n * \n * Updates a library collection. Requires at least manager access to the collection.\n * \n * API endpoint: `PATCH /library/collections/{collectionId}`\n */\n update(args: Args<\"library.collections.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/library/collections/{collectionId}\", [\"collectionId\"], [], true, args, options);\n }\n\n /**\n * Delete collection\n * \n * Deletes a library collection. Only the collection owner can delete it.\n * \n * API endpoint: `DELETE /library/collections/{collectionId}`\n */\n delete(collectionId: string, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.delete\">>;\n delete(args: Args<\"library.collections.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.delete\">> {\n const args = typeof arg === \"string\" ? { collectionId: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/library/collections/{collectionId}\", [\"collectionId\"], [], false, args, options);\n }\n}\n\nexport class LibraryItems {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Update library item\n * \n * Updates a library item. Requires at least editor access to the collection it belongs to.\n * \n * API endpoint: `PATCH /library/items/{itemId}`\n */\n update(args: Args<\"library.items.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.items.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.items.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/library/items/{itemId}\", [\"itemId\"], [], true, args, options);\n }\n\n /**\n * Delete library item\n * \n * Deletes a library item. Requires at least editor access to the collection it belongs to.\n * \n * API endpoint: `DELETE /library/items/{itemId}`\n */\n delete(itemId: string, options?: ExamplaryRequestOptions): Promise<Response<\"library.items.delete\">>;\n delete(args: Args<\"library.items.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.items.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.items.delete\">> {\n const args = typeof arg === \"string\" ? { itemId: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/library/items/{itemId}\", [\"itemId\"], [], false, args, options);\n }\n}\n\nexport class Library {\n readonly collections: LibraryCollections;\n readonly items: LibraryItems;\n\n constructor(private readonly ctx: ClientContext) {\n this.collections = new LibraryCollections(this.ctx);\n this.items = new LibraryItems(this.ctx);\n }\n}\n\nexport class Oauth {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * OAuth authorization endpoint\n * \n * Initiates OAuth authorization flow. Redirects to the frontend authorization UI where users can approve or deny access.\n * \n * API endpoint: `GET /oauth/authorize`\n */\n authorize(args: Args<\"oauth.authorize\">, options?: ExamplaryRequestOptions): Promise<Response<\"oauth.authorize\">>;\n authorize(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"oauth.authorize\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/oauth/authorize\", [], [\"response_type\",\"client_id\",\"redirect_uri\",\"scope\",\"state\",\"code_challenge\",\"code_challenge_method\"], false, args, options);\n }\n\n /**\n * OAuth token endpoint\n * \n * Exchange authorization code for access token, or refresh an existing token.\n * \n * API endpoint: `POST /oauth/token`\n */\n token(args?: Args<\"oauth.token\">, options?: ExamplaryRequestOptions): Promise<Response<\"oauth.token\">>;\n token(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"oauth.token\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/oauth/token\", [], [], false, args, options);\n }\n}\n\nexport class EmbedSessions {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Create embed session\n * \n * Create a new embed session. This allows you to embed the exam generation flow into your own application.\n * \n * API endpoint: `POST /embed-sessions`\n */\n create(args?: Args<\"embedSessions.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/embed-sessions\", [], [], true, args, options);\n }\n\n /**\n * Get embed session\n * \n * Retrieve an embed session by its ID.\n * \n * API endpoint: `GET /embed-sessions/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.get\">>;\n get(args: Args<\"embedSessions.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/embed-sessions/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Revoke embed session\n * \n * Revoke access to an embed session by its ID.\n * \n * API endpoint: `DELETE /embed-sessions/{id}`\n */\n revoke(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.revoke\">>;\n revoke(args: Args<\"embedSessions.revoke\">, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.revoke\">>;\n revoke(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.revoke\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/embed-sessions/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class ExamsSessionsComments {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List session comments\n * \n * Get a list of all comments left on a student's assessment session.\n * \n * API endpoint: `GET /exams/{examId}/sessions/{sessionId}/comments`\n */\n list(args: Args<\"exams.sessions.comments.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.list\">>;\n list(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/sessions/{sessionId}/comments\", [\"examId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Create session comment\n * \n * Add a new comment to a question in a student's assessment session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/comments`\n */\n create(args: Args<\"exams.sessions.comments.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.create\">>;\n create(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/comments\", [\"examId\",\"sessionId\"], [], true, args, options);\n }\n\n /**\n * Update session comment\n * \n * Edit the body of an existing session comment.\n * \n * API endpoint: `PATCH /exams/{examId}/sessions/{sessionId}/comments/{commentId}`\n */\n update(args: Args<\"exams.sessions.comments.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/exams/{examId}/sessions/{sessionId}/comments/{commentId}\", [\"examId\",\"sessionId\",\"commentId\"], [], true, args, options);\n }\n\n /**\n * Delete session comment\n * \n * Remove a comment from a session.\n * \n * API endpoint: `DELETE /exams/{examId}/sessions/{sessionId}/comments/{commentId}`\n */\n delete(args: Args<\"exams.sessions.comments.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.delete\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/exams/{examId}/sessions/{sessionId}/comments/{commentId}\", [\"examId\",\"sessionId\",\"commentId\"], [], false, args, options);\n }\n}\n\nexport class ExamsSessions {\n readonly comments: ExamsSessionsComments;\n\n constructor(private readonly ctx: ClientContext) {\n this.comments = new ExamsSessionsComments(this.ctx);\n }\n\n /**\n * List exam sessions\n * \n * Get a list of all student sessions for an exam, representing a set of answers from a student.\n * \n * API endpoint: `GET /exams/{examId}/sessions`\n */\n list(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.list\">>;\n list(args: Args<\"exams.sessions.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.list\">>;\n list(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.list\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/sessions\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Create session\n * \n * Manually create a session, possibly from uploaded data.\n * \n * API endpoint: `POST /exams/{examId}/sessions`\n */\n import(args: Args<\"exams.sessions.import\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.import\">>;\n import(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.import\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Get answers from scan\n * \n * Scan student answers from a document.\n * \n * API endpoint: `POST /exams/{examId}/sessions/scan`\n */\n scan(args: Args<\"exams.sessions.scan\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scan\">>;\n scan(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scan\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/scan\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Release grades\n * \n * Release grades for all sessions in an exam, optionally sending notifications to students.\n * \n * API endpoint: `POST /exams/{examId}/sessions/release-grades`\n */\n releaseGrades(args: Args<\"exams.sessions.releaseGrades\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.releaseGrades\">>;\n releaseGrades(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.releaseGrades\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/release-grades\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Scan images for student answers\n * \n * Start a background task to extract a student's answers from scanned page images and create a session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/scan-images`\n */\n scanImages(args: Args<\"exams.sessions.scanImages\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanImages\">>;\n scanImages(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanImages\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/scan-images\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Detect student name from scan\n * \n * Start a background task to detect the student name from a scanned page image.\n * \n * API endpoint: `POST /exams/{examId}/sessions/scan-student-name`\n */\n scanStudentName(args: Args<\"exams.sessions.scanStudentName\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanStudentName\">>;\n scanStudentName(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanStudentName\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/scan-student-name\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Scan document for student answers\n * \n * Start a background task to extract student answers from an uploaded PDF document.\n * \n * API endpoint: `POST /exams/{examId}/sessions/scan-document`\n */\n scanDocument(args: Args<\"exams.sessions.scanDocument\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanDocument\">>;\n scanDocument(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanDocument\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/scan-document\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Get results summary\n * \n * Get the stored AI-generated summary of the exam's results, if one has been generated.\n * \n * API endpoint: `GET /exams/{examId}/sessions/summary`\n */\n getResultsSummary(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.getResultsSummary\">>;\n getResultsSummary(args: Args<\"exams.sessions.getResultsSummary\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.getResultsSummary\">>;\n getResultsSummary(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.getResultsSummary\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/sessions/summary\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Generate results summary\n * \n * Start a background task to generate an AI summary of the exam's results, highlighting what students are struggling with. Returns the stored summary directly when the results haven't changed since the last generation.\n * \n * API endpoint: `POST /exams/{examId}/sessions/summary`\n */\n generateResultsSummary(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.generateResultsSummary\">>;\n generateResultsSummary(args: Args<\"exams.sessions.generateResultsSummary\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.generateResultsSummary\">>;\n generateResultsSummary(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.generateResultsSummary\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/summary\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Get exam session\n * \n * Get a single exam session by its ID, representing a set of answers from a student.\n * \n * API endpoint: `GET /exams/{examId}/sessions/{sessionId}`\n */\n get(args: Args<\"exams.sessions.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/sessions/{sessionId}\", [\"examId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Delete exam session\n * \n * Remove an exam session.\n * \n * API endpoint: `DELETE /exams/{examId}/sessions/{sessionId}`\n */\n delete(args: Args<\"exams.sessions.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.delete\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/exams/{examId}/sessions/{sessionId}\", [\"examId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Update session\n * \n * Update an exam session. Currently supports renaming the student, which is not allowed for sessions connected to a user account.\n * \n * API endpoint: `PATCH /exams/{examId}/sessions/{sessionId}`\n */\n update(args: Args<\"exams.sessions.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/exams/{examId}/sessions/{sessionId}\", [\"examId\",\"sessionId\"], [], true, args, options);\n }\n\n /**\n * Assign session to user\n * \n * Connect an anonymous exam session to a student account, by user ID or email address (inviting a new student if needed). Optionally notifies the student that their results are available for review. Only allowed when the session is not connected to a user yet.\n * \n * API endpoint: `PUT /exams/{examId}/sessions/{sessionId}/user`\n */\n assignUser(args: Args<\"exams.sessions.assignUser\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.assignUser\">>;\n assignUser(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.assignUser\">> {\n const args = arg;\n return request(this.ctx, \"PUT\", \"/exams/{examId}/sessions/{sessionId}/user\", [\"examId\",\"sessionId\"], [], true, args, options);\n }\n\n /**\n * Provide feedback\n * \n * Set teacher feedback and/or a grade for a specific question in an exam session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/feedback`\n */\n saveFeedback(args: Args<\"exams.sessions.saveFeedback\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.saveFeedback\">>;\n saveFeedback(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.saveFeedback\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/feedback\", [\"examId\",\"sessionId\"], [], true, args, options);\n }\n\n /**\n * Provide overall feedback\n * \n * Set teacher feedback for the test as a whole in an exam session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/overall-feedback`\n */\n saveOverallFeedback(args: Args<\"exams.sessions.saveOverallFeedback\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.saveOverallFeedback\">>;\n saveOverallFeedback(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.saveOverallFeedback\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/overall-feedback\", [\"examId\",\"sessionId\"], [], true, args, options);\n }\n\n /**\n * Generate overall feedback\n * \n * Generate feedback for the test as a whole in an exam session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/generate-overall-feedback`\n */\n generateOverallFeedback(args: Args<\"exams.sessions.generateOverallFeedback\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.generateOverallFeedback\">>;\n generateOverallFeedback(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.generateOverallFeedback\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/generate-overall-feedback\", [\"examId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Accept AI grading suggestions\n * \n * Accept all AI-generated grading suggestions for the exam session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/suggestions/accept-all`\n */\n acceptAllSuggestions(args: Args<\"exams.sessions.acceptAllSuggestions\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.acceptAllSuggestions\">>;\n acceptAllSuggestions(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.acceptAllSuggestions\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/suggestions/accept-all\", [\"examId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Accept single AI grading suggestion\n * \n * Accept a single AI-generated grading suggestion for the exam session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/suggestions/{questionId}/accept`\n */\n acceptSuggestion(args: Args<\"exams.sessions.acceptSuggestion\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.acceptSuggestion\">>;\n acceptSuggestion(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.acceptSuggestion\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/suggestions/{questionId}/accept\", [\"examId\",\"sessionId\",\"questionId\"], [], false, args, options);\n }\n\n /**\n * Edit answer\n * \n * Edit a single answer in an exam session.\n * \n * API endpoint: `PATCH /exams/{examId}/sessions/{sessionId}/answers/{questionId}`\n */\n editAnswer(args: Args<\"exams.sessions.editAnswer\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.editAnswer\">>;\n editAnswer(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.editAnswer\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/exams/{examId}/sessions/{sessionId}/answers/{questionId}\", [\"examId\",\"sessionId\",\"questionId\"], [], true, args, options);\n }\n}\n\nexport class ExamsQuestions {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Import questions\n * \n * Import questions into an exam from a file. Support Word, PDF, Moodle quiz XML and plain text files.\n * \n * API endpoint: `POST /exams/{examId}/questions/import`\n */\n import(args: Args<\"exams.questions.import\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.import\">>;\n import(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.import\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/questions/import\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Generate question\n * \n * Generate a new question for the exam using an AI prompt.\n * \n * API endpoint: `POST /exams/{examId}/questions/generate`\n */\n generate(args: Args<\"exams.questions.generate\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.generate\">>;\n generate(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.generate\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/questions/generate\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Get question\n * \n * Retrieve a question by its ID.\n * \n * API endpoint: `GET /exams/{examId}/questions/{questionId}`\n */\n get(args: Args<\"exams.questions.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/questions/{questionId}\", [\"examId\",\"questionId\"], [\"format\"], false, args, options);\n }\n\n /**\n * Update a question\n * \n * Update fields on a single question, such as its scoring configuration. Use `scoring.excludeFromGrading` to exclude a question from grading so it no longer counts towards the total points or grade of a session.\n * \n * API endpoint: `PATCH /exams/{examId}/questions/{questionId}`\n */\n update(args: Args<\"exams.questions.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/exams/{examId}/questions/{questionId}\", [\"examId\",\"questionId\"], [], true, args, options);\n }\n\n /**\n * Get question quality score\n * \n * Retrieve the quality score of a question. This is an async endpoint - when called for the first time, it will trigger a quality assessment and return a status of `pending`. Subsequent calls will return the quality score once available. We recommend polling this endpoint every 5-10 seconds until the score is available.\n * \n * API endpoint: `GET /exams/{examId}/questions/{questionId}/quality`\n */\n getQuality(args: Args<\"exams.questions.getQuality\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.getQuality\">>;\n getQuality(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.getQuality\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/questions/{questionId}/quality\", [\"examId\",\"questionId\"], [], false, args, options);\n }\n\n /**\n * Regenerate question\n * \n * Update a question using an AI prompt.\n * \n * API endpoint: `POST /exams/{examId}/questions/{questionId}/generate`\n */\n regenerate(args: Args<\"exams.questions.regenerate\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.regenerate\">>;\n regenerate(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.regenerate\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/questions/{questionId}/generate\", [\"examId\",\"questionId\"], [], true, args, options);\n }\n}\n\nexport class ExamsExport {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Export QTI 3 package\n * \n * Export an exam as a QTI 3 ZIP package.\n * \n * API endpoint: `POST /exams/{examId}/export/qti3-zip`\n */\n qti3Zip(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti3Zip\">>;\n qti3Zip(args: Args<\"exams.export.qti3Zip\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti3Zip\">>;\n qti3Zip(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti3Zip\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/export/qti3-zip\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Export QTI 2.1 package\n * \n * Export an exam as a QTI 2.1 ZIP package.\n * \n * API endpoint: `POST /exams/{examId}/export/qti21-zip`\n */\n qti21Zip(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti21Zip\">>;\n qti21Zip(args: Args<\"exams.export.qti21Zip\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti21Zip\">>;\n qti21Zip(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti21Zip\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/export/qti21-zip\", [\"examId\"], [], false, args, options);\n }\n}\n\nexport class Exams {\n readonly sessions: ExamsSessions;\n readonly questions: ExamsQuestions;\n readonly export: ExamsExport;\n\n constructor(private readonly ctx: ClientContext) {\n this.sessions = new ExamsSessions(this.ctx);\n this.questions = new ExamsQuestions(this.ctx);\n this.export = new ExamsExport(this.ctx);\n }\n\n /**\n * List exams\n * \n * Get a list of all exams within your workspace.\n * \n * API endpoint: `GET /exams`\n */\n list(args?: Args<\"exams.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/exams\", [], [\"folder\",\"role\"], false, args, options);\n }\n\n /**\n * Create exam\n * \n * Create a new exam within your workspace.\n * \n * API endpoint: `POST /exams`\n */\n create(args?: Args<\"exams.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams\", [], [], true, args, options);\n }\n\n /**\n * Import exam\n * \n * Create an exam by importing one or more source materials (e.g. an existing exam).\n * \n * API endpoint: `POST /exams/import`\n */\n import(args?: Args<\"exams.import\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.import\">>;\n import(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.import\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/import\", [], [], true, args, options);\n }\n\n /**\n * Get exam\n * \n * Get a single exam by its ID.\n * \n * API endpoint: `GET /exams/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.get\">>;\n get(args: Args<\"exams.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/exams/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Update exam\n * \n * Update an existing exam.\n * \n * API endpoint: `PATCH /exams/{id}`\n */\n update(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.update\">>;\n update(args: Args<\"exams.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.update\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"PATCH\", \"/exams/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Delete exam\n * \n * Delete the exam.\n * \n * API endpoint: `DELETE /exams/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.delete\">>;\n delete(args: Args<\"exams.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/exams/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Duplicate exam\n * \n * Duplicate the exam's questions and settings to a new exam.\n * \n * API endpoint: `POST /exams/{examId}/duplicate`\n */\n duplicate(args: Args<\"exams.duplicate\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.duplicate\">>;\n duplicate(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.duplicate\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/duplicate\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Print exam\n * \n * Export an exam to a PDF file or Word document.\n * \n * API endpoint: `POST /exams/{examId}/print`\n */\n print(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.print\">>;\n print(args: Args<\"exams.print\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.print\">>;\n print(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.print\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/print\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Generate exam\n * \n * Initiate a job to generate new questions for the exam using AI, based on the source materials and metadata specified.\n * \n * API endpoint: `POST /exams/{examId}/generate`\n */\n startGeneration(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.startGeneration\">>;\n startGeneration(args: Args<\"exams.startGeneration\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.startGeneration\">>;\n startGeneration(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.startGeneration\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/generate\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Cancel exam generation\n * \n * Cancel an ongoing job to generate new questions for the exam using AI.\n * \n * API endpoint: `POST /exams/{examId}/generate/cancel`\n */\n cancelGeneration(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.cancelGeneration\">>;\n cancelGeneration(args: Args<\"exams.cancelGeneration\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.cancelGeneration\">>;\n cancelGeneration(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.cancelGeneration\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/generate/cancel\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Get exam context suggestions\n * \n * Get AI-generated suggestions for context/instructions to include in the exam generation prompt, based on the source materials linked to the exam.\n * \n * API endpoint: `GET /exams/{examId}/context-suggestions`\n */\n getContextSuggestions(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.getContextSuggestions\">>;\n getContextSuggestions(args: Args<\"exams.getContextSuggestions\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.getContextSuggestions\">>;\n getContextSuggestions(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.getContextSuggestions\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/context-suggestions\", [\"examId\"], [], false, args, options);\n }\n}\n\nexport class Orgs {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List all organizations\n * \n * Retrieve a list of all organizations the authenticated user has access to. Optionally can also return pending and suggested org memberships.\n * \n * API endpoint: `GET /orgs`\n */\n list(args?: Args<\"orgs.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/orgs\", [], [\"includeUnconfirmed\"], false, args, options);\n }\n\n /**\n * Create a new organization\n * \n * Create a new workspace to collaborate on resources within. Either specify a name, or pass an empty body to create a default workspace for the user.\n * \n * API endpoint: `POST /orgs`\n */\n create(args?: Args<\"orgs.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/orgs\", [], [], true, args, options);\n }\n\n /**\n * Request to join an organization\n * \n * Request to join an existing organization. The request will be reviewed by the organization's administrators or auto-accepted.\n * \n * API endpoint: `POST /orgs/{orgId}/join`\n */\n join(orgId: string, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.join\">>;\n join(args: Args<\"orgs.join\">, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.join\">>;\n join(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.join\">> {\n const args = typeof arg === \"string\" ? { orgId: arg } : arg;\n return request(this.ctx, \"POST\", \"/orgs/{orgId}/join\", [\"orgId\"], [], false, args, options);\n }\n}\n\nexport class SearchTokens {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get a search token\n * \n * Returns a short-lived, permission-scoped TypeSense search key for the current user, along with the host and collection to query. The key cannot be widened: the filter it carries is enforced by TypeSense.\n * \n * API endpoint: `GET /search/tokens`\n */\n get(args?: Args<\"search.tokens.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"search.tokens.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"search.tokens.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/search/tokens\", [], [], false, args, options);\n }\n\n /**\n * Get a search token\n * \n * Returns a short-lived, permission-scoped TypeSense search key for the public items.\n * \n * API endpoint: `GET /search/tokens/public`\n */\n getPublic(args?: Args<\"search.tokens.get-public\">, options?: ExamplaryRequestOptions): Promise<Response<\"search.tokens.get-public\">>;\n getPublic(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"search.tokens.get-public\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/search/tokens/public\", [], [], false, args, options);\n }\n}\n\nexport class Search {\n readonly tokens: SearchTokens;\n\n constructor(private readonly ctx: ClientContext) {\n this.tokens = new SearchTokens(this.ctx);\n }\n}\n\nexport class MeTwoFactor {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get two-factor status\n * \n * Check whether two-factor authentication is enabled for the current user, and whether the workspace requires it.\n * \n * API endpoint: `GET /me/two-factor`\n */\n get(args?: Args<\"me.twoFactor.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/me/two-factor\", [], [], false, args, options);\n }\n\n /**\n * Enable two-factor authentication\n * \n * Turn on two-factor authentication, after an authenticator app has been registered and verified with Cognito.\n * \n * API endpoint: `POST /me/two-factor`\n */\n enable(args?: Args<\"me.twoFactor.enable\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.enable\">>;\n enable(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.enable\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/me/two-factor\", [], [], false, args, options);\n }\n\n /**\n * Disable two-factor authentication\n * \n * Turn off two-factor authentication for the current user. Not allowed when the workspace requires it.\n * \n * API endpoint: `DELETE /me/two-factor`\n */\n disable(args?: Args<\"me.twoFactor.disable\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.disable\">>;\n disable(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.disable\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/me/two-factor\", [], [], false, args, options);\n }\n}\n\nexport class Me {\n readonly twoFactor: MeTwoFactor;\n\n constructor(private readonly ctx: ClientContext) {\n this.twoFactor = new MeTwoFactor(this.ctx);\n }\n\n /**\n * Get me\n * \n * Get the current user's account details.\n * \n * API endpoint: `GET /me`\n */\n get(args?: Args<\"me.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/me\", [], [], false, args, options);\n }\n\n /**\n * Update me\n * \n * Update the current user's account details.\n * \n * API endpoint: `PATCH /me`\n */\n update(args?: Args<\"me.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.update\">>;\n update(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/me\", [], [], true, args, options);\n }\n\n /**\n * Change my email address\n * \n * Send a confirmation link to a new email address. The account only moves to it once that link is opened. Not available in workspaces that manage their members' identities.\n * \n * API endpoint: `PATCH /me/email`\n */\n updateEmail(args?: Args<\"me.updateEmail\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.updateEmail\">>;\n updateEmail(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.updateEmail\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/me/email\", [], [], true, args, options);\n }\n}\n\nexport class Media {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get file upload URL\n * \n * Returns a signed URL for uploading a file, and a public URL for accessing it afterwards.\n * \n * API endpoint: `GET /media/upload`\n */\n upload(args: _override_mediaUpload.Args, options?: ExamplaryRequestOptions): Promise<_override_mediaUpload.Response> {\n return _override_mediaUpload.override(this.ctx, args, options);\n }\n}\n\nexport class OrgCustomDomain {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get custom domain configuration\n * \n * API endpoint: `GET /org/custom-domain`\n */\n get(args?: Args<\"org.customDomain.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.customDomain.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.customDomain.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org/custom-domain\", [], [], false, args, options);\n }\n\n /**\n * Update custom domain configuration\n * \n * API endpoint: `POST /org/custom-domain`\n */\n update(args?: Args<\"org.customDomain.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.customDomain.update\">>;\n update(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.customDomain.update\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/org/custom-domain\", [], [], true, args, options);\n }\n}\n\nexport class OrgEmailDomains {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List verified email domains\n * \n * API endpoint: `GET /org/email-domains`\n */\n list(args?: Args<\"org.emailDomains.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org/email-domains\", [], [], false, args, options);\n }\n\n /**\n * Add an email domain to verify\n * \n * API endpoint: `POST /org/email-domains`\n */\n create(args?: Args<\"org.emailDomains.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/org/email-domains\", [], [], true, args, options);\n }\n\n /**\n * Update an email domain's join settings\n * \n * API endpoint: `PATCH /org/email-domains/{domain}`\n */\n update(args: Args<\"org.emailDomains.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/org/email-domains/{domain}\", [\"domain\"], [], true, args, options);\n }\n\n /**\n * Remove a verified email domain\n * \n * API endpoint: `DELETE /org/email-domains/{domain}`\n */\n delete(domain: string, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.delete\">>;\n delete(args: Args<\"org.emailDomains.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.delete\">> {\n const args = typeof arg === \"string\" ? { domain: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/org/email-domains/{domain}\", [\"domain\"], [], false, args, options);\n }\n\n /**\n * Re-check an email domain's DNS verification record\n * \n * API endpoint: `POST /org/email-domains/{domain}/verify`\n */\n verify(domain: string, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.verify\">>;\n verify(args: Args<\"org.emailDomains.verify\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.verify\">>;\n verify(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.verify\">> {\n const args = typeof arg === \"string\" ? { domain: arg } : arg;\n return request(this.ctx, \"POST\", \"/org/email-domains/{domain}/verify\", [\"domain\"], [], false, args, options);\n }\n}\n\nexport class OrgIdentityProvider {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get single sign-on configuration\n * \n * API endpoint: `GET /org/identity-provider`\n */\n get(args?: Args<\"org.identityProvider.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org/identity-provider\", [], [], false, args, options);\n }\n\n /**\n * Configure single sign-on\n * \n * API endpoint: `POST /org/identity-provider`\n */\n update(args?: Args<\"org.identityProvider.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.update\">>;\n update(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.update\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/org/identity-provider\", [], [], true, args, options);\n }\n\n /**\n * Turn off single sign-on\n * \n * API endpoint: `DELETE /org/identity-provider`\n */\n delete(args?: Args<\"org.identityProvider.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.delete\">>;\n delete(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.delete\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/org/identity-provider\", [], [], false, args, options);\n }\n}\n\nexport class OrgJoinRequests {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List pending workspace join requests\n * \n * API endpoint: `GET /org/join-requests`\n */\n list(args?: Args<\"org.joinRequests.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org/join-requests\", [], [], false, args, options);\n }\n\n /**\n * Approve a workspace join request\n * \n * API endpoint: `POST /org/join-requests/{userId}/approve`\n */\n approve(args: Args<\"org.joinRequests.approve\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.approve\">>;\n approve(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.approve\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/org/join-requests/{userId}/approve\", [\"userId\"], [], true, args, options);\n }\n\n /**\n * Reject a workspace join request\n * \n * API endpoint: `POST /org/join-requests/{userId}/reject`\n */\n reject(userId: string, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.reject\">>;\n reject(args: Args<\"org.joinRequests.reject\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.reject\">>;\n reject(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.reject\">> {\n const args = typeof arg === \"string\" ? { userId: arg } : arg;\n return request(this.ctx, \"POST\", \"/org/join-requests/{userId}/reject\", [\"userId\"], [], false, args, options);\n }\n}\n\nexport class Org {\n readonly customDomain: OrgCustomDomain;\n readonly emailDomains: OrgEmailDomains;\n readonly identityProvider: OrgIdentityProvider;\n readonly joinRequests: OrgJoinRequests;\n\n constructor(private readonly ctx: ClientContext) {\n this.customDomain = new OrgCustomDomain(this.ctx);\n this.emailDomains = new OrgEmailDomains(this.ctx);\n this.identityProvider = new OrgIdentityProvider(this.ctx);\n this.joinRequests = new OrgJoinRequests(this.ctx);\n }\n\n /**\n * Get organization\n * \n * API endpoint: `GET /org`\n */\n get(args?: Args<\"org.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org\", [], [], false, args, options);\n }\n\n /**\n * Update organization\n * \n * API endpoint: `PATCH /org`\n */\n update(args?: Args<\"org.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.update\">>;\n update(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/org\", [], [], true, args, options);\n }\n\n /**\n * Delete organization\n * \n * API endpoint: `DELETE /org`\n */\n delete(args?: Args<\"org.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.delete\">>;\n delete(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.delete\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/org\", [], [], false, args, options);\n }\n\n /**\n * Get organization limits\n * \n * API endpoint: `GET /org/limits`\n */\n limits(args?: Args<\"org.limits\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.limits\">>;\n limits(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.limits\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org/limits\", [], [], false, args, options);\n }\n}\n\nexport class AuditLogs {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List audit logs\n * \n * List the workspace's audit logs, newest first, with optional date range, actor and object filters. Paginated.\n * \n * API endpoint: `GET /audit-logs`\n */\n list(args?: Args<\"audit-logs.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"audit-logs.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"audit-logs.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/audit-logs\", [], [\"actor\",\"object\",\"from\",\"to\",\"exclusiveStartKey\"], false, args, options);\n }\n\n /**\n * Export audit logs\n * \n * Export audit logs for a date range (optionally filtered by actor/object) as ND-JSON. Returns a temporary download URL.\n * \n * API endpoint: `GET /audit-logs/export`\n */\n export(args: Args<\"audit-logs.export\">, options?: ExamplaryRequestOptions): Promise<Response<\"audit-logs.export\">>;\n export(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"audit-logs.export\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/audit-logs/export\", [], [\"from\",\"to\",\"actor\",\"object\"], false, args, options);\n }\n}\n\nexport class ApiKeys {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get API key\n * \n * Get the API key for the current org/user combination. Creates one if none exists.\n * \n * API endpoint: `GET /api-keys`\n */\n get(args?: Args<\"apiKeys.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"apiKeys.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"apiKeys.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/api-keys\", [], [], false, args, options);\n }\n\n /**\n * Reset API key\n * \n * Invalidate old API keys for this org/user and create a new one.\n * \n * API endpoint: `POST /api-keys/reset`\n */\n reset(args?: Args<\"apiKeys.reset\">, options?: ExamplaryRequestOptions): Promise<Response<\"apiKeys.reset\">>;\n reset(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"apiKeys.reset\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/api-keys/reset\", [], [], false, args, options);\n }\n}\n\nexport class Attributes {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List attributes\n * \n * Get all custom attributes configured for the current workspace.\n * \n * API endpoint: `GET /attributes`\n */\n list(args?: Args<\"attributes.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/attributes\", [], [], false, args, options);\n }\n\n /**\n * Create attribute\n * \n * Create a new custom attribute in the current workspace.\n * \n * API endpoint: `POST /attributes`\n */\n create(args?: Args<\"attributes.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/attributes\", [], [], true, args, options);\n }\n\n /**\n * Reorder attributes\n * \n * Update the position of multiple attributes at once.\n * \n * API endpoint: `POST /attributes/reorder`\n */\n reorder(args?: Args<\"attributes.reorder\">, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.reorder\">>;\n reorder(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.reorder\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/attributes/reorder\", [], [], true, args, options);\n }\n\n /**\n * Update attribute\n * \n * Update an existing attribute in the current workspace.\n * \n * API endpoint: `POST /attributes/{id}`\n */\n update(args: Args<\"attributes.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.update\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/attributes/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete attribute\n * \n * Delete a custom attribute from the current workspace. Default attributes cannot be deleted.\n * \n * API endpoint: `DELETE /attributes/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.delete\">>;\n delete(args: Args<\"attributes.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/attributes/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Taxonomies {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get taxonomies\n * \n * Get a list available taxonomies, including defaults and taxonomies created in the current workspace.\n * \n * API endpoint: `GET /taxonomies`\n */\n list(args?: Args<\"taxonomies.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/taxonomies\", [], [], false, args, options);\n }\n\n /**\n * Create taxonomy\n * \n * Save a new taxonomy in the current workspace.\n * \n * API endpoint: `POST /taxonomies`\n */\n create(args?: Args<\"taxonomies.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/taxonomies\", [], [], true, args, options);\n }\n\n /**\n * Update taxonomy\n * \n * Update an existing taxonomy in the current workspace.\n * \n * API endpoint: `POST /taxonomies/{id}`\n */\n update(args: Args<\"taxonomies.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.update\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/taxonomies/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete taxonomy\n * \n * Delete a taxonomy from the current workspace. This fails if there are any exams associated with the taxonomy.\n * \n * API endpoint: `DELETE /taxonomies/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.delete\">>;\n delete(args: Args<\"taxonomies.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/taxonomies/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Permissions {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Autocomplete users and groups\n * \n * Search for users and groups to share with. Returns matches by name or email. Respects restricted group visibility.\n * \n * API endpoint: `GET /permissions/autocomplete`\n */\n autocomplete(args: Args<\"permissions.autocomplete\">, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.autocomplete\">>;\n autocomplete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.autocomplete\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/permissions/autocomplete\", [], [\"q\",\"type\",\"role\"], false, args, options);\n }\n\n /**\n * Get sharing permissions\n * \n * Get a list of users, groups and orgs that have access to a specific resource.\n * \n * API endpoint: `GET /permissions/{resource}`\n */\n list(resource: string, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.list\">>;\n list(args: Args<\"permissions.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.list\">>;\n list(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.list\">> {\n const args = typeof arg === \"string\" ? { resource: arg } : arg;\n return request(this.ctx, \"GET\", \"/permissions/{resource}\", [\"resource\"], [], false, args, options);\n }\n\n /**\n * Create permission\n * \n * Create a new permission for a specific resource, or update the role of an existing actor.\n * \n * API endpoint: `POST /permissions/{resource}`\n */\n assign(args: Args<\"permissions.assign\">, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.assign\">>;\n assign(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.assign\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/permissions/{resource}\", [\"resource\"], [], true, args, options);\n }\n\n /**\n * Get actor role\n * \n * Get the role of a specific actor for a specific resource.\n * \n * API endpoint: `GET /permissions/{resource}/{actor}`\n */\n getActorRole(args: Args<\"permissions.getActorRole\">, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.getActorRole\">>;\n getActorRole(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.getActorRole\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/permissions/{resource}/{actor}\", [\"actor\",\"resource\"], [], false, args, options);\n }\n\n /**\n * Remove permission\n * \n * Remove a permission for a specific actor on a specific resource.\n * \n * API endpoint: `DELETE /permissions/{resource}/{actor}`\n */\n delete(args: Args<\"permissions.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.delete\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/permissions/{resource}/{actor}\", [\"resource\",\"actor\"], [], false, args, options);\n }\n}\n\nexport class StudentLevels {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List available student levels\n * \n * Get a list of available default student levels.\n * \n * API endpoint: `GET /student-levels`\n */\n list(args?: Args<\"studentLevels.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"studentLevels.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"studentLevels.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/student-levels\", [], [], false, args, options);\n }\n}\n\nexport class Users {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List users\n * \n * Get a list of all users in the workspace.\n * \n * API endpoint: `GET /users`\n */\n list(args?: Args<\"users.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"users.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"users.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/users\", [], [], false, args, options);\n }\n\n /**\n * Create user\n * \n * Create a new user in the workspace.\n * \n * API endpoint: `POST /users`\n */\n create(args?: Args<\"users.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"users.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"users.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/users\", [], [], true, args, options);\n }\n\n /**\n * Update user role\n * \n * Update a user's role within the workspace.\n * \n * API endpoint: `PATCH /users/{id}`\n */\n update(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"users.update\">>;\n update(args: Args<\"users.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"users.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"users.update\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"PATCH\", \"/users/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Delete user\n * \n * Delete a user from the workspace.\n * \n * API endpoint: `DELETE /users/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"users.delete\">>;\n delete(args: Args<\"users.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"users.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"users.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/users/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Reset two-factor authentication\n * \n * Remove a user's authenticator app, so they can sign in again after losing their device.\n * \n * API endpoint: `DELETE /users/{userId}/two-factor`\n */\n resetTwoFactor(userId: string, options?: ExamplaryRequestOptions): Promise<Response<\"users.resetTwoFactor\">>;\n resetTwoFactor(args: Args<\"users.resetTwoFactor\">, options?: ExamplaryRequestOptions): Promise<Response<\"users.resetTwoFactor\">>;\n resetTwoFactor(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"users.resetTwoFactor\">> {\n const args = typeof arg === \"string\" ? { userId: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/users/{userId}/two-factor\", [\"userId\"], [], false, args, options);\n }\n}\n\nexport class PracticeSpacesStudents {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List practice space students\n * \n * Get a list of all students that practiced in a practice space.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/students`\n */\n list(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.students.list\">>;\n list(args: Args<\"practiceSpaces.students.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.students.list\">>;\n list(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.students.list\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/students\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Get practice space student\n * \n * Get details about a specific practice space student.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/students/{studentId}`\n */\n get(args: Args<\"practiceSpaces.students.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.students.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.students.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/students/{studentId}\", [\"practiceSpaceId\",\"studentId\"], [], false, args, options);\n }\n}\n\nexport class PracticeSpacesSessions {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Create practice space session\n * \n * Create a new practice space session.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/sessions`\n */\n create(args: Args<\"practiceSpaces.sessions.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.create\">>;\n create(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/sessions\", [\"practiceSpaceId\"], [], true, args, options);\n }\n\n /**\n * Get my practice space session\n * \n * Get the current user's past practice space session.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/sessions/mine`\n */\n getMine(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.getMine\">>;\n getMine(args: Args<\"practiceSpaces.sessions.getMine\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.getMine\">>;\n getMine(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.getMine\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/sessions/mine\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Get practice space session\n * \n * Get a practice space session by its ID.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/sessions/{sessionId}`\n */\n get(args: Args<\"practiceSpaces.sessions.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/sessions/{sessionId}\", [\"practiceSpaceId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Save answer for a practice space session\n * \n * Save an answer for a specific question in a practice space session.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/sessions/{sessionId}/answers/{questionId}`\n */\n saveAnswer(args: Args<\"practiceSpaces.sessions.saveAnswer\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.saveAnswer\">>;\n saveAnswer(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.saveAnswer\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/sessions/{sessionId}/answers/{questionId}\", [\"practiceSpaceId\",\"sessionId\",\"questionId\"], [], true, args, options);\n }\n}\n\nexport class PracticeSpaces {\n readonly students: PracticeSpacesStudents;\n readonly sessions: PracticeSpacesSessions;\n\n constructor(private readonly ctx: ClientContext) {\n this.students = new PracticeSpacesStudents(this.ctx);\n this.sessions = new PracticeSpacesSessions(this.ctx);\n }\n\n /**\n * List practice spaces\n * \n * Get a list of all practice spaces you have access to in this workspace.\n * \n * API endpoint: `GET /practice-spaces`\n */\n list(args?: Args<\"practiceSpaces.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/practice-spaces\", [], [\"folder\",\"role\"], false, args, options);\n }\n\n /**\n * Create practice space\n * \n * Create a new practice space within your workspace.\n * \n * API endpoint: `POST /practice-spaces`\n */\n create(args?: Args<\"practiceSpaces.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/practice-spaces\", [], [], true, args, options);\n }\n\n /**\n * Get practice space\n * \n * Get a single practice space by its ID.\n * \n * API endpoint: `GET /practice-spaces/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.get\">>;\n get(args: Args<\"practiceSpaces.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Update practice space\n * \n * Update an existing practice space.\n * \n * API endpoint: `PATCH /practice-spaces/{id}`\n */\n update(args: Args<\"practiceSpaces.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/practice-spaces/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete practice space\n * \n * Delete the practice space.\n * \n * API endpoint: `DELETE /practice-spaces/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.delete\">>;\n delete(args: Args<\"practiceSpaces.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/practice-spaces/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Duplicate practice space\n * \n * Duplicate the practice space's settings and topics to a new practice space.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/duplicate`\n */\n duplicate(args: Args<\"practiceSpaces.duplicate\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.duplicate\">>;\n duplicate(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.duplicate\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/duplicate\", [\"practiceSpaceId\"], [], true, args, options);\n }\n\n /**\n * Generate practice space topics\n * \n * Start generating mastery topics for a practice space.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/generate-topics`\n */\n generateTopics(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.generateTopics\">>;\n generateTopics(args: Args<\"practiceSpaces.generateTopics\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.generateTopics\">>;\n generateTopics(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.generateTopics\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/generate-topics\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Cancel practice space topic generation\n * \n * Cancel an in-progress mastery topic generation job.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/cancel-generate-topics`\n */\n cancelGenerateTopics(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.cancelGenerateTopics\">>;\n cancelGenerateTopics(args: Args<\"practiceSpaces.cancelGenerateTopics\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.cancelGenerateTopics\">>;\n cancelGenerateTopics(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.cancelGenerateTopics\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/cancel-generate-topics\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Preview top practice space questions\n * \n * Get a preview of the top practice space questions by quality score.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/questions-preview`\n */\n questionsPreview(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.questionsPreview\">>;\n questionsPreview(args: Args<\"practiceSpaces.questionsPreview\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.questionsPreview\">>;\n questionsPreview(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.questionsPreview\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/questions-preview\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Get practice space progress\n * \n * Get the progress of a single practice space by its ID.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/progress`\n */\n getProgress(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.getProgress\">>;\n getProgress(args: Args<\"practiceSpaces.getProgress\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.getProgress\">>;\n getProgress(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.getProgress\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/progress\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Generate practice space topic feedback\n * \n * Get feedback for a specific topic in a practice space.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/progress/topic-feedback`\n */\n generateTopicFeedback(args: Args<\"practiceSpaces.generateTopicFeedback\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.generateTopicFeedback\">>;\n generateTopicFeedback(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.generateTopicFeedback\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/progress/topic-feedback\", [\"practiceSpaceId\"], [], true, args, options);\n }\n\n /**\n * Update a practice space question\n * \n * Update a specific question in a practice space.\n * \n * API endpoint: `PATCH /practice-spaces/{practiceSpaceId}/questions/{questionId}`\n */\n updateQuestion(args: Args<\"practiceSpaces.updateQuestion\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.updateQuestion\">>;\n updateQuestion(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.updateQuestion\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/practice-spaces/{practiceSpaceId}/questions/{questionId}\", [\"practiceSpaceId\",\"questionId\"], [], true, args, options);\n }\n}\n\nexport class SourceMaterials {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List source materials\n * \n * Returns a list of source materials the current user has access to.\n * \n * API endpoint: `GET /source-materials`\n */\n list(args?: Args<\"sourceMaterials.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/source-materials\", [], [\"externalId\"], false, args, options);\n }\n\n /**\n * Add source material\n * \n * Add a source material and start processing it for later use in an exam.\n * \n * API endpoint: `POST /source-materials`\n */\n create(args?: Args<\"sourceMaterials.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/source-materials\", [], [], true, args, options);\n }\n\n /**\n * List source material tags\n * \n * Returns a list of existing tags for the source materials the current user has access to. Useful for filtering, or for presenting autocomplete suggestions.\n * \n * API endpoint: `GET /source-materials/tags`\n */\n listTags(args?: Args<\"sourceMaterials.listTags\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.listTags\">>;\n listTags(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.listTags\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/source-materials/tags\", [], [], false, args, options);\n }\n\n /**\n * Get source material\n * \n * Returns the current status and facts extracted from the specified source material.\n * \n * API endpoint: `GET /source-materials/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.get\">>;\n get(args: Args<\"sourceMaterials.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/source-materials/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Update source material\n * \n * Updates the specified source material.\n * \n * API endpoint: `PATCH /source-materials/{id}`\n */\n update(args: Args<\"sourceMaterials.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/source-materials/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete source material\n * \n * Deletes the specified source material.\n * \n * API endpoint: `DELETE /source-materials/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.delete\">>;\n delete(args: Args<\"sourceMaterials.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/source-materials/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Create a source material slice\n * \n * Create a new source material based on a specific page range of an existing source material.\n * \n * API endpoint: `POST /source-materials/{sourceMaterialId}/slice`\n */\n slice(args: Args<\"sourceMaterials.slice\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.slice\">>;\n slice(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.slice\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/source-materials/{sourceMaterialId}/slice\", [\"sourceMaterialId\"], [], true, args, options);\n }\n}\n\nexport class Items {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List items\n * \n * Get a list of items (tests and practice spaces) within your workspace. Returns everything by default; filter by `type` or `folder`.\n * \n * API endpoint: `GET /items`\n */\n list(args?: Args<\"items.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"items.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"items.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/items\", [], [\"type\",\"folder\"], false, args, options);\n }\n}\n\nexport class Folders {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get folders\n * \n * Get a list of folders for exam organisation that exist within the current workspace.\n * \n * API endpoint: `GET /folders`\n */\n list(args?: Args<\"folders.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"folders.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"folders.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/folders\", [], [], false, args, options);\n }\n\n /**\n * Create folder\n * \n * Create a new folder in the current workspace.\n * \n * API endpoint: `POST /folders`\n */\n create(args?: Args<\"folders.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"folders.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"folders.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/folders\", [], [], true, args, options);\n }\n\n /**\n * Get folder\n * \n * Get a single folder from the current workspace by its ID.\n * \n * API endpoint: `GET /folders/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"folders.get\">>;\n get(args: Args<\"folders.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"folders.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"folders.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/folders/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Update folder\n * \n * Update an existing folder in the current workspace.\n * \n * API endpoint: `PATCH /folders/{id}`\n */\n update(args: Args<\"folders.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"folders.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"folders.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/folders/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete folder\n * \n * Delete a folder from the current workspace. If there are any exams in the folder, they will be moved out of the folder.\n * \n * API endpoint: `DELETE /folders/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"folders.delete\">>;\n delete(args: Args<\"folders.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"folders.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"folders.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/folders/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Groups {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List groups\n * \n * List all groups in the organization. When restricted group visibility is enabled, only returns groups the user belongs to.\n * \n * API endpoint: `GET /groups`\n */\n list(args?: Args<\"groups.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/groups\", [], [], false, args, options);\n }\n\n /**\n * Create group\n * \n * Create a new group. Requires admin or owner org role.\n * \n * API endpoint: `POST /groups`\n */\n create(args?: Args<\"groups.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/groups\", [], [], true, args, options);\n }\n\n /**\n * Rename group\n * \n * Rename a group. Requires group manager/owner role or org admin/owner.\n * \n * API endpoint: `PATCH /groups/{id}`\n */\n update(args: Args<\"groups.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/groups/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete group\n * \n * Delete a group and revoke all associated permissions. Requires group manager/owner role or org admin/owner.\n * \n * API endpoint: `DELETE /groups/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"groups.delete\">>;\n delete(args: Args<\"groups.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/groups/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * List group members\n * \n * List all members of a group with resolved user info. Respects restricted group visibility.\n * \n * API endpoint: `GET /groups/{groupId}/members`\n */\n listMembers(groupId: string, options?: ExamplaryRequestOptions): Promise<Response<\"groups.listMembers\">>;\n listMembers(args: Args<\"groups.listMembers\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.listMembers\">>;\n listMembers(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.listMembers\">> {\n const args = typeof arg === \"string\" ? { groupId: arg } : arg;\n return request(this.ctx, \"GET\", \"/groups/{groupId}/members\", [\"groupId\"], [], false, args, options);\n }\n\n /**\n * Add group member\n * \n * Add a member to a group. Requires group manager/owner role or org admin/owner.\n * \n * API endpoint: `POST /groups/{groupId}/members`\n */\n addMember(args: Args<\"groups.addMember\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.addMember\">>;\n addMember(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.addMember\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/groups/{groupId}/members\", [\"groupId\"], [], true, args, options);\n }\n\n /**\n * Change member role\n * \n * Change a member's role in the group. Requires group manager/owner role or org admin/owner.\n * \n * API endpoint: `PATCH /groups/{groupId}/members/{userId}`\n */\n updateMember(args: Args<\"groups.updateMember\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.updateMember\">>;\n updateMember(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.updateMember\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/groups/{groupId}/members/{userId}\", [\"groupId\",\"userId\"], [], true, args, options);\n }\n\n /**\n * Remove group member\n * \n * Remove a member from the group. Requires group manager/owner role or org admin/owner. Cannot remove the owner.\n * \n * API endpoint: `DELETE /groups/{groupId}/members/{userId}`\n */\n removeMember(args: Args<\"groups.removeMember\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.removeMember\">>;\n removeMember(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.removeMember\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/groups/{groupId}/members/{userId}\", [\"groupId\",\"userId\"], [], false, args, options);\n }\n}\n\nexport class Integrations {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List integrations\n * \n * List all available integrations and whether they are configured for the current workspace. Settings and field metadata are only included for Admin/Owner.\n * \n * API endpoint: `GET /integrations`\n */\n list(args?: Args<\"integrations.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/integrations\", [], [], false, args, options);\n }\n\n /**\n * Get integration\n * \n * Get a single integration configured for the current workspace.\n * \n * API endpoint: `GET /integrations/{integrationType}`\n */\n get(integrationType: string, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.get\">>;\n get(args: Args<\"integrations.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.get\">> {\n const args = typeof arg === \"string\" ? { integrationType: arg } : arg;\n return request(this.ctx, \"GET\", \"/integrations/{integrationType}\", [\"integrationType\"], [], false, args, options);\n }\n\n /**\n * Configure integration\n * \n * Create or update the integration of this type. Settings are validated against the integration before saving.\n * \n * API endpoint: `POST /integrations/{integrationType}`\n */\n upsert(integrationType: string, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.upsert\">>;\n upsert(args: Args<\"integrations.upsert\">, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.upsert\">>;\n upsert(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.upsert\">> {\n const args = typeof arg === \"string\" ? { integrationType: arg } : arg;\n return request(this.ctx, \"POST\", \"/integrations/{integrationType}\", [\"integrationType\"], [], false, args, options);\n }\n\n /**\n * Remove integration\n * \n * Remove the integration of this type from the current workspace.\n * \n * API endpoint: `DELETE /integrations/{integrationType}`\n */\n delete(integrationType: string, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.delete\">>;\n delete(args: Args<\"integrations.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.delete\">> {\n const args = typeof arg === \"string\" ? { integrationType: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/integrations/{integrationType}\", [\"integrationType\"], [], false, args, options);\n }\n}\n\nexport class QuestionBank {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get question bank items\n * \n * Get a list of question bank items that exist within the current workspace.\n * \n * API endpoint: `GET /question-bank`\n */\n list(args?: Args<\"questionBank.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/question-bank\", [], [], false, args, options);\n }\n\n /**\n * Add question to question bank\n * \n * Add a question to the question bank in the current workspace.\n * \n * API endpoint: `POST /question-bank`\n */\n create(args?: Args<\"questionBank.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/question-bank\", [], [], true, args, options);\n }\n\n /**\n * Update question bank item\n * \n * Update an existing question bank item in the current workspace.\n * \n * API endpoint: `PATCH /question-bank/{id}`\n */\n update(args: Args<\"questionBank.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/question-bank/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete question bank item\n * \n * Delete a question bank item from the current workspace.\n * \n * API endpoint: `DELETE /question-bank/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.delete\">>;\n delete(args: Args<\"questionBank.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/question-bank/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Prompts {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get prompts\n * \n * Get a list of reusable prompts, merging the workspace's saved prompts with the defaults provided by Examplary. Optionally filter by type and language.\n * \n * API endpoint: `GET /prompts`\n */\n list(args?: Args<\"prompts.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/prompts\", [], [\"type\",\"language\"], false, args, options);\n }\n\n /**\n * Save prompt\n * \n * Save a reusable prompt in the current workspace.\n * \n * API endpoint: `POST /prompts`\n */\n create(args?: Args<\"prompts.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/prompts\", [], [], true, args, options);\n }\n\n /**\n * Update prompt\n * \n * Update an existing prompt in the current workspace.\n * \n * API endpoint: `PATCH /prompts/{id}`\n */\n update(args: Args<\"prompts.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/prompts/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete prompt\n * \n * Delete a prompt from the current workspace.\n * \n * API endpoint: `DELETE /prompts/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.delete\">>;\n delete(args: Args<\"prompts.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/prompts/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Jobs {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get job status\n * \n * Poll the status of a background job.\n * \n * API endpoint: `GET /jobs/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.get\">>;\n get(args: Args<\"jobs.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/jobs/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Cancel a job\n * \n * Cancel a background job.\n * \n * API endpoint: `DELETE /jobs/{id}`\n */\n cancel(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.cancel\">>;\n cancel(args: Args<\"jobs.cancel\">, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.cancel\">>;\n cancel(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.cancel\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/jobs/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Examplary {\n private readonly ctx: ClientContext;\n readonly questionTypes: QuestionTypes;\n readonly library: Library;\n readonly oauth: Oauth;\n readonly embedSessions: EmbedSessions;\n readonly exams: Exams;\n readonly orgs: Orgs;\n readonly search: Search;\n readonly me: Me;\n readonly media: Media;\n readonly org: Org;\n readonly auditLogs: AuditLogs;\n readonly apiKeys: ApiKeys;\n readonly attributes: Attributes;\n readonly taxonomies: Taxonomies;\n readonly permissions: Permissions;\n readonly studentLevels: StudentLevels;\n readonly users: Users;\n readonly practiceSpaces: PracticeSpaces;\n readonly sourceMaterials: SourceMaterials;\n readonly items: Items;\n readonly folders: Folders;\n readonly groups: Groups;\n readonly integrations: Integrations;\n readonly questionBank: QuestionBank;\n readonly prompts: Prompts;\n readonly jobs: Jobs;\n\n constructor(options: ExamplaryClientOptions) {\n this.ctx = createClientContext(options);\n this.questionTypes = new QuestionTypes(this.ctx);\n this.library = new Library(this.ctx);\n this.oauth = new Oauth(this.ctx);\n this.embedSessions = new EmbedSessions(this.ctx);\n this.exams = new Exams(this.ctx);\n this.orgs = new Orgs(this.ctx);\n this.search = new Search(this.ctx);\n this.me = new Me(this.ctx);\n this.media = new Media(this.ctx);\n this.org = new Org(this.ctx);\n this.auditLogs = new AuditLogs(this.ctx);\n this.apiKeys = new ApiKeys(this.ctx);\n this.attributes = new Attributes(this.ctx);\n this.taxonomies = new Taxonomies(this.ctx);\n this.permissions = new Permissions(this.ctx);\n this.studentLevels = new StudentLevels(this.ctx);\n this.users = new Users(this.ctx);\n this.practiceSpaces = new PracticeSpaces(this.ctx);\n this.sourceMaterials = new SourceMaterials(this.ctx);\n this.items = new Items(this.ctx);\n this.folders = new Folders(this.ctx);\n this.groups = new Groups(this.ctx);\n this.integrations = new Integrations(this.ctx);\n this.questionBank = new QuestionBank(this.ctx);\n this.prompts = new Prompts(this.ctx);\n this.jobs = new Jobs(this.ctx);\n }\n\n /**\n * Get rubrics\n * \n * Get a list of rubrics that exist within the current workspace.\n * \n * API endpoint: `GET /rubrics`\n */\n getRubrics(args?: Args<\"getRubrics\">, options?: ExamplaryRequestOptions): Promise<Response<\"getRubrics\">>;\n getRubrics(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"getRubrics\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/rubrics\", [], [], false, args, options);\n }\n\n /**\n * Save rubric\n * \n * Add a rubric to the current workspace.\n * \n * API endpoint: `POST /rubrics`\n */\n postRubrics(args?: Args<\"postRubrics\">, options?: ExamplaryRequestOptions): Promise<Response<\"postRubrics\">>;\n postRubrics(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"postRubrics\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/rubrics\", [], [], true, args, options);\n }\n\n /**\n * Generate rubric\n * \n * Start a background job to generate a rubric using AI.\n * \n * API endpoint: `POST /rubrics/generate`\n */\n postRubricsGenerate(args?: Args<\"postRubricsGenerate\">, options?: ExamplaryRequestOptions): Promise<Response<\"postRubricsGenerate\">>;\n postRubricsGenerate(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"postRubricsGenerate\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/rubrics/generate\", [], [], true, args, options);\n }\n\n /**\n * Update rubric\n * \n * Update an existing rubric in the current workspace.\n * \n * API endpoint: `PATCH /rubrics/{id}`\n */\n patchRubricsId(args: Args<\"patchRubrics:id\">, options?: ExamplaryRequestOptions): Promise<Response<\"patchRubrics:id\">>;\n patchRubricsId(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"patchRubrics:id\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/rubrics/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete rubric\n * \n * Delete a rubric from the current workspace.\n * \n * API endpoint: `DELETE /rubrics/{id}`\n */\n deleteRubricsId(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"deleteRubrics:id\">>;\n deleteRubricsId(args: Args<\"deleteRubrics:id\">, options?: ExamplaryRequestOptions): Promise<Response<\"deleteRubrics:id\">>;\n deleteRubricsId(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"deleteRubrics:id\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/rubrics/{id}\", [\"id\"], [], false, args, options);\n }\n}\n"],"mappings":"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","names":["import_axios","request","axios"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/context.ts","../src/error.ts","../src/request.ts","../src/overrides/media.upload.ts","../generated/sdk.ts"],"sourcesContent":["export { Examplary, type Args, type Response } from \"../generated/sdk\";\nexport { ExamplaryError } from \"./error\";\nexport type {\n ExamplaryClientOptions,\n ExamplaryRequestOptions,\n} from \"./options\";\nexport type { components, operations, paths } from \"../generated/types\";\n","import axios, { type AxiosError, type AxiosInstance } from \"axios\";\n\nimport { ExamplaryError } from \"./error\";\nimport type { ExamplaryClientOptions } from \"./options\";\n\nexport interface ClientContext {\n axios: AxiosInstance;\n apiKey: string;\n}\n\nexport const createClientContext = (\n options: ExamplaryClientOptions,\n): ClientContext => {\n const { apiKey, baseUrl, headers, ...rest } = options;\n\n const instance = axios.create({\n baseURL: baseUrl ?? \"https://api.examplary.ai\",\n ...rest,\n headers: {\n Authorization: `Bearer ${apiKey}`,\n ...headers,\n },\n });\n\n instance.interceptors.response.use(\n (response) => response,\n (error: AxiosError) => Promise.reject(ExamplaryError.fromAxiosError(error)),\n );\n\n return { axios: instance, apiKey };\n};\n","import {\n AxiosError,\n type AxiosResponse,\n type InternalAxiosRequestConfig,\n} from \"axios\";\n\nexport class ExamplaryError<T = unknown, D = any> extends AxiosError<T, D> {\n originalMessage?: string;\n\n constructor(\n message?: string,\n code?: string,\n config?: InternalAxiosRequestConfig<D>,\n request?: any,\n response?: AxiosResponse<T, D>,\n ) {\n super(message, code, config, request, response);\n this.name = \"ExamplaryError\";\n }\n\n static fromAxiosError(error: AxiosError): ExamplaryError {\n const e = new ExamplaryError(\n error.message,\n error.code,\n error.config,\n error.request,\n error.response,\n );\n\n const data = error.response?.data as\n | { error?: string | { message?: string } }\n | undefined;\n\n if (typeof data?.error === \"string\") {\n e.originalMessage = error.message;\n e.message = data.error;\n } else if (typeof data?.error?.message === \"string\") {\n e.originalMessage = error.message;\n e.message = data.error.message;\n }\n\n return e;\n }\n}\n","import type { ClientContext } from \"./context\";\nimport { ExamplaryError } from \"./error\";\nimport type { ExamplaryRequestOptions } from \"./options\";\n\nconst API_KEY_REGEX = /^examp_[A-Za-z0-9]+$/;\n\nexport const request = async <T>(\n ctx: ClientContext,\n method: string,\n pathTemplate: string,\n pathKeys: readonly string[],\n queryKeys: readonly string[],\n hasBody: boolean,\n args: Record<string, unknown> | undefined,\n options: ExamplaryRequestOptions | undefined,\n): Promise<T> => {\n if (!API_KEY_REGEX.test(ctx.apiKey)) {\n throw new ExamplaryError(\"Invalid API key\");\n }\n\n const flat = args ?? {};\n\n const url = pathTemplate.replace(/\\{(\\w+)\\}/g, (_, key) => {\n const value = flat[key];\n if (value === undefined || value === null) {\n throw new ExamplaryError(`Missing required path parameter \"${key}\"`);\n }\n return encodeURIComponent(String(value));\n });\n\n const params: Record<string, unknown> = {};\n for (const k of queryKeys) {\n if (flat[k] !== undefined) params[k] = flat[k];\n }\n\n let data: unknown;\n if (hasBody) {\n const consumed = new Set<string>([...pathKeys, ...queryKeys]);\n const body: Record<string, unknown> = {};\n let any = false;\n for (const [k, v] of Object.entries(flat)) {\n if (consumed.has(k)) continue;\n body[k] = v;\n any = true;\n }\n if (any) data = body;\n }\n\n const response = await ctx.axios.request<T>({\n ...options,\n method,\n url,\n params: Object.keys(params).length ? params : undefined,\n data,\n });\n return response.data;\n};\n","import type { ClientContext } from \"../context\";\nimport { ExamplaryError } from \"../error\";\nimport type { ExamplaryRequestOptions } from \"../options\";\n\nexport type Args = {\n filename?: string;\n type?: string;\n contentType?: string;\n content?: Buffer | string;\n};\n\nexport type Response = {\n publicUrl: string;\n uploadUrl: string;\n};\n\nexport const override = async (\n ctx: ClientContext,\n args: Args,\n options?: ExamplaryRequestOptions,\n): Promise<Response> => {\n const contentType = args.contentType ?? \"application/octet-stream\";\n\n const { data } = await ctx.axios.request<{\n uploadUrl: string;\n publicUrl: string;\n }>({\n ...options,\n method: \"GET\",\n url: \"/media/upload\",\n params: {\n contentType,\n ...(args.filename ? { filename: args.filename } : {}),\n ...(args.type ? { type: args.type } : {}),\n },\n });\n\n if (args.content) {\n const body =\n typeof Buffer !== \"undefined\" && !Buffer.isBuffer(args.content)\n ? Buffer.from(args.content)\n : args.content;\n\n const uploadRes = await fetch(data.uploadUrl, {\n method: \"PUT\",\n headers: { \"Content-Type\": contentType },\n body: body as BodyInit,\n });\n\n if (!uploadRes.ok) {\n throw new ExamplaryError(\n `Upload failed: ${await uploadRes.text()}`,\n \"UploadError\",\n );\n }\n }\n\n return data;\n};\n","// This file is auto-generated. Do not edit by hand.\n\nimport { createClientContext, type ClientContext } from \"../src/context\";\nimport type {\n ExamplaryClientOptions,\n ExamplaryRequestOptions,\n} from \"../src/options\";\nimport { request } from \"../src/request\";\nimport type { operations } from \"./types\";\n\nimport * as _override_mediaUpload from \"../src/overrides/media.upload\";\n\ninterface _PathOverrides {\n \"questionTypes.get\": { id: string };\n \"questionTypes.delete\": { id: string };\n \"questionTypes.getQti3Pci\": { questionTypeId: string };\n \"questionTypes.enable\": { questionTypeId: string };\n \"questionTypes.disable\": { questionTypeId: string };\n \"library.collections.items.list\": { collectionId: string };\n \"library.collections.items.create\": { collectionId: string };\n \"library.items.update\": { itemId: string };\n \"library.items.delete\": { itemId: string };\n \"library.collections.update\": { collectionId: string };\n \"library.collections.delete\": { collectionId: string };\n \"embedSessions.get\": { id: string };\n \"embedSessions.revoke\": { id: string };\n \"exams.sessions.list\": { examId: string };\n \"exams.sessions.import\": { examId: string };\n \"exams.sessions.scan\": { examId: string };\n \"exams.sessions.releaseGrades\": { examId: string };\n \"exams.sessions.scanImages\": { examId: string };\n \"exams.sessions.scanStudentName\": { examId: string };\n \"exams.sessions.scanDocument\": { examId: string };\n \"exams.sessions.getResultsSummary\": { examId: string };\n \"exams.sessions.generateResultsSummary\": { examId: string };\n \"exams.sessions.get\": { examId: string; sessionId: string };\n \"exams.sessions.delete\": { examId: string; sessionId: string };\n \"exams.sessions.update\": { examId: string; sessionId: string };\n \"exams.sessions.assignUser\": { examId: string; sessionId: string };\n \"exams.sessions.saveFeedback\": { examId: string; sessionId: string };\n \"exams.sessions.saveOverallFeedback\": { examId: string; sessionId: string };\n \"exams.sessions.generateOverallFeedback\": { examId: string; sessionId: string };\n \"exams.sessions.acceptAllSuggestions\": { examId: string; sessionId: string };\n \"exams.sessions.acceptSuggestion\": { examId: string; sessionId: string; questionId: string };\n \"exams.sessions.editAnswer\": { examId: string; sessionId: string; questionId: string };\n \"exams.sessions.comments.list\": { examId: string; sessionId: string };\n \"exams.sessions.comments.create\": { examId: string; sessionId: string };\n \"exams.sessions.comments.update\": { examId: string; sessionId: string; commentId: string };\n \"exams.sessions.comments.delete\": { examId: string; sessionId: string; commentId: string };\n \"exams.questions.import\": { examId: string };\n \"exams.questions.generate\": { examId: string };\n \"exams.questions.get\": { examId: string; questionId: string };\n \"exams.questions.update\": { examId: string; questionId: string };\n \"exams.questions.getQuality\": { examId: string; questionId: string };\n \"exams.questions.regenerate\": { examId: string; questionId: string };\n \"exams.export.qti3Zip\": { examId: string };\n \"exams.export.qti21Zip\": { examId: string };\n \"exams.get\": { id: string };\n \"exams.update\": { id: string };\n \"exams.delete\": { id: string };\n \"exams.duplicate\": { examId: string };\n \"exams.print\": { examId: string };\n \"exams.startGeneration\": { examId: string };\n \"exams.cancelGeneration\": { examId: string };\n \"exams.getContextSuggestions\": { examId: string };\n \"orgs.join\": { orgId: string };\n \"org.emailDomains.update\": { domain: string };\n \"org.emailDomains.delete\": { domain: string };\n \"org.emailDomains.verify\": { domain: string };\n \"org.joinRequests.approve\": { userId: string };\n \"org.joinRequests.reject\": { userId: string };\n \"attributes.update\": { id: string };\n \"attributes.delete\": { id: string };\n \"taxonomies.update\": { id: string };\n \"taxonomies.delete\": { id: string };\n \"permissions.list\": { resource: string };\n \"permissions.assign\": { resource: string };\n \"permissions.getActorRole\": { actor: string; resource: string };\n \"permissions.delete\": { resource: string; actor: string };\n \"users.get\": { id: string };\n \"users.update\": { id: string };\n \"users.delete\": { id: string };\n \"users.resetTwoFactor\": { userId: string };\n \"practiceSpaces.get\": { id: string };\n \"practiceSpaces.update\": { id: string };\n \"practiceSpaces.delete\": { id: string };\n \"practiceSpaces.duplicate\": { practiceSpaceId: string };\n \"practiceSpaces.generateTopics\": { practiceSpaceId: string };\n \"practiceSpaces.cancelGenerateTopics\": { practiceSpaceId: string };\n \"practiceSpaces.questionsPreview\": { practiceSpaceId: string };\n \"practiceSpaces.getProgress\": { practiceSpaceId: string };\n \"practiceSpaces.generateTopicFeedback\": { practiceSpaceId: string };\n \"practiceSpaces.updateQuestion\": { practiceSpaceId: string; questionId: string };\n \"practiceSpaces.students.list\": { practiceSpaceId: string };\n \"practiceSpaces.students.get\": { practiceSpaceId: string; studentId: string };\n \"practiceSpaces.sessions.create\": { practiceSpaceId: string };\n \"practiceSpaces.sessions.getMine\": { practiceSpaceId: string };\n \"practiceSpaces.sessions.get\": { practiceSpaceId: string; sessionId: string };\n \"practiceSpaces.sessions.saveAnswer\": { practiceSpaceId: string; sessionId: string; questionId: string };\n \"sourceMaterials.get\": { id: string };\n \"sourceMaterials.update\": { id: string };\n \"sourceMaterials.delete\": { id: string };\n \"sourceMaterials.slice\": { sourceMaterialId: string };\n \"folders.get\": { id: string };\n \"folders.update\": { id: string };\n \"folders.delete\": { id: string };\n \"groups.update\": { id: string };\n \"groups.delete\": { id: string };\n \"groups.listMembers\": { groupId: string };\n \"groups.addMember\": { groupId: string };\n \"groups.updateMember\": { groupId: string; userId: string };\n \"groups.removeMember\": { groupId: string; userId: string };\n \"integrations.get\": { integrationType: string };\n \"integrations.upsert\": { integrationType: string };\n \"integrations.delete\": { integrationType: string };\n \"questionBank.update\": { id: string };\n \"questionBank.delete\": { id: string };\n \"patchRubrics:id\": { id: string };\n \"deleteRubrics:id\": { id: string };\n \"prompts.update\": { id: string };\n \"prompts.delete\": { id: string };\n \"jobs.get\": { id: string };\n \"jobs.cancel\": { id: string };\n}\n\ntype _ToObject<T> = [Exclude<T, undefined>] extends [never]\n ? {}\n : Exclude<T, undefined> extends object\n ? Exclude<T, undefined>\n : {};\n\ntype _Query<K extends keyof operations> = operations[K] extends {\n parameters: { query?: infer Q };\n}\n ? _ToObject<Q>\n : {};\n\ntype _Body<K extends keyof operations> = operations[K] extends {\n requestBody?: infer R;\n}\n ? Exclude<R, undefined> extends { content: { \"application/json\": infer B } }\n ? _ToObject<B>\n : {}\n : {};\n\ntype _SuccessShape<R> = [R] extends [never]\n ? never\n : R extends { 200: infer T }\n ? T\n : R extends { 201: infer T }\n ? T\n : R extends { 202: infer T }\n ? T\n : R extends { 204: infer T }\n ? T\n : never;\n\nexport type Args<K extends keyof operations> =\n (K extends keyof _PathOverrides ? _PathOverrides[K] : {}) &\n _Query<K> &\n _Body<K>;\n\nexport type Response<K extends keyof operations> =\n _SuccessShape<operations[K][\"responses\"]> extends infer X\n ? [X] extends [never]\n ? any\n : X extends { content: { \"application/json\": infer T } }\n ? T\n : any\n : any;\n\nexport class QuestionTypes {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List public question types\n * \n * Lists all public question types, which can be enabled in workspaces.\n * \n * API endpoint: `GET /question-types/public`\n */\n listPublic(args?: Args<\"questionTypes.listPublic\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.listPublic\">>;\n listPublic(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.listPublic\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/question-types/public\", [], [], false, args, options);\n }\n\n /**\n * Get question type\n * \n * Retrieves a specific question type by its ID.\n * \n * API endpoint: `GET /question-types/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.get\">>;\n get(args: Args<\"questionTypes.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/question-types/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Delete question type\n * \n * Deletes a specific question type by its ID. Note that only the owner organization of the question type can delete it, and only if it has not been used in an exam.\n * \n * API endpoint: `DELETE /question-types/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.delete\">>;\n delete(args: Args<\"questionTypes.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/question-types/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Get question type PCI module for QTI 3 export\n * \n * Get JS module for a question type PCI for QTI 3 export.\n * \n * API endpoint: `GET /question-types/{questionTypeId}/export/qti3-pci`\n */\n getQti3Pci(questionTypeId: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.getQti3Pci\">>;\n getQti3Pci(args: Args<\"questionTypes.getQti3Pci\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.getQti3Pci\">>;\n getQti3Pci(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.getQti3Pci\">> {\n const args = typeof arg === \"string\" ? { questionTypeId: arg } : arg;\n return request(this.ctx, \"GET\", \"/question-types/{questionTypeId}/export/qti3-pci\", [\"questionTypeId\"], [], false, args, options);\n }\n\n /**\n * List question types\n * \n * Lists all question types, either those available by default or those created within the user's organization.\n * \n * API endpoint: `GET /question-types`\n */\n list(args?: Args<\"questionTypes.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/question-types\", [], [], false, args, options);\n }\n\n /**\n * Upsert question type\n * \n * Creates a new question type or updates an existing one. If the question type already exists, it will be updated; otherwise, a new one will be created.\n * \n * API endpoint: `POST /question-types`\n */\n upsert(args?: Args<\"questionTypes.upsert\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.upsert\">>;\n upsert(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.upsert\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/question-types\", [], [], true, args, options);\n }\n\n /**\n * Enable question type\n * \n * Enable a question type for the current workspace.\n * \n * API endpoint: `POST /question-types/{questionTypeId}/enable`\n */\n enable(questionTypeId: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.enable\">>;\n enable(args: Args<\"questionTypes.enable\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.enable\">>;\n enable(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.enable\">> {\n const args = typeof arg === \"string\" ? { questionTypeId: arg } : arg;\n return request(this.ctx, \"POST\", \"/question-types/{questionTypeId}/enable\", [\"questionTypeId\"], [], false, args, options);\n }\n\n /**\n * Disable question type\n * \n * Disable a question type for the current workspace.\n * \n * API endpoint: `POST /question-types/{questionTypeId}/disable`\n */\n disable(questionTypeId: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.disable\">>;\n disable(args: Args<\"questionTypes.disable\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.disable\">>;\n disable(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionTypes.disable\">> {\n const args = typeof arg === \"string\" ? { questionTypeId: arg } : arg;\n return request(this.ctx, \"POST\", \"/question-types/{questionTypeId}/disable\", [\"questionTypeId\"], [], false, args, options);\n }\n}\n\nexport class LibraryCollectionsItems {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List items by collection\n * \n * Lists all library items in the specified collection. Requires at least viewer access to the collection.\n * \n * API endpoint: `GET /library/collections/{collectionId}/items`\n */\n list(collectionId: string, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.items.list\">>;\n list(args: Args<\"library.collections.items.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.items.list\">>;\n list(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.items.list\">> {\n const args = typeof arg === \"string\" ? { collectionId: arg } : arg;\n return request(this.ctx, \"GET\", \"/library/collections/{collectionId}/items\", [\"collectionId\"], [], false, args, options);\n }\n\n /**\n * Create library item\n * \n * Adds an item to a collection. Requires at least editor access to both the collection and the resource being added.\n * \n * API endpoint: `POST /library/collections/{collectionId}/items`\n */\n create(args: Args<\"library.collections.items.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.items.create\">>;\n create(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.items.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/library/collections/{collectionId}/items\", [\"collectionId\"], [], true, args, options);\n }\n}\n\nexport class LibraryCollections {\n readonly items: LibraryCollectionsItems;\n\n constructor(private readonly ctx: ClientContext) {\n this.items = new LibraryCollectionsItems(this.ctx);\n }\n\n /**\n * List collections\n * \n * Lists the library collections the current user has access to.\n * \n * API endpoint: `GET /library/collections`\n */\n list(args?: Args<\"library.collections.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/library/collections\", [], [], false, args, options);\n }\n\n /**\n * Create collection\n * \n * Creates a new library collection. The creator becomes its owner.\n * \n * API endpoint: `POST /library/collections`\n */\n create(args?: Args<\"library.collections.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/library/collections\", [], [], true, args, options);\n }\n\n /**\n * Update collection\n * \n * Updates a library collection. Requires at least manager access to the collection.\n * \n * API endpoint: `PATCH /library/collections/{collectionId}`\n */\n update(args: Args<\"library.collections.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/library/collections/{collectionId}\", [\"collectionId\"], [], true, args, options);\n }\n\n /**\n * Delete collection\n * \n * Deletes a library collection. Only the collection owner can delete it.\n * \n * API endpoint: `DELETE /library/collections/{collectionId}`\n */\n delete(collectionId: string, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.delete\">>;\n delete(args: Args<\"library.collections.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.collections.delete\">> {\n const args = typeof arg === \"string\" ? { collectionId: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/library/collections/{collectionId}\", [\"collectionId\"], [], false, args, options);\n }\n}\n\nexport class LibraryItems {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Update library item\n * \n * Updates a library item. Requires at least editor access to the collection it belongs to.\n * \n * API endpoint: `PATCH /library/items/{itemId}`\n */\n update(args: Args<\"library.items.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.items.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.items.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/library/items/{itemId}\", [\"itemId\"], [], true, args, options);\n }\n\n /**\n * Delete library item\n * \n * Deletes a library item. Requires at least editor access to the collection it belongs to.\n * \n * API endpoint: `DELETE /library/items/{itemId}`\n */\n delete(itemId: string, options?: ExamplaryRequestOptions): Promise<Response<\"library.items.delete\">>;\n delete(args: Args<\"library.items.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"library.items.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"library.items.delete\">> {\n const args = typeof arg === \"string\" ? { itemId: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/library/items/{itemId}\", [\"itemId\"], [], false, args, options);\n }\n}\n\nexport class Library {\n readonly collections: LibraryCollections;\n readonly items: LibraryItems;\n\n constructor(private readonly ctx: ClientContext) {\n this.collections = new LibraryCollections(this.ctx);\n this.items = new LibraryItems(this.ctx);\n }\n}\n\nexport class Oauth {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * OAuth authorization endpoint\n * \n * Initiates OAuth authorization flow. Redirects to the frontend authorization UI where users can approve or deny access.\n * \n * API endpoint: `GET /oauth/authorize`\n */\n authorize(args: Args<\"oauth.authorize\">, options?: ExamplaryRequestOptions): Promise<Response<\"oauth.authorize\">>;\n authorize(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"oauth.authorize\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/oauth/authorize\", [], [\"response_type\",\"client_id\",\"redirect_uri\",\"scope\",\"state\",\"code_challenge\",\"code_challenge_method\"], false, args, options);\n }\n\n /**\n * OAuth token endpoint\n * \n * Exchange an authorization code for an access token, refresh an existing token, or obtain a client-credentials token (first-party clients only).\n * \n * API endpoint: `POST /oauth/token`\n */\n token(args?: Args<\"oauth.token\">, options?: ExamplaryRequestOptions): Promise<Response<\"oauth.token\">>;\n token(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"oauth.token\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/oauth/token\", [], [], false, args, options);\n }\n}\n\nexport class EmbedSessions {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Create embed session\n * \n * Create a new embed session. This allows you to embed the exam generation flow into your own application.\n * \n * API endpoint: `POST /embed-sessions`\n */\n create(args?: Args<\"embedSessions.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/embed-sessions\", [], [], true, args, options);\n }\n\n /**\n * Get embed session\n * \n * Retrieve an embed session by its ID.\n * \n * API endpoint: `GET /embed-sessions/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.get\">>;\n get(args: Args<\"embedSessions.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/embed-sessions/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Revoke embed session\n * \n * Revoke access to an embed session by its ID.\n * \n * API endpoint: `DELETE /embed-sessions/{id}`\n */\n revoke(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.revoke\">>;\n revoke(args: Args<\"embedSessions.revoke\">, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.revoke\">>;\n revoke(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"embedSessions.revoke\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/embed-sessions/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class ExamsSessionsComments {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List session comments\n * \n * Get a list of all comments left on a student's assessment session.\n * \n * API endpoint: `GET /exams/{examId}/sessions/{sessionId}/comments`\n */\n list(args: Args<\"exams.sessions.comments.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.list\">>;\n list(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/sessions/{sessionId}/comments\", [\"examId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Create session comment\n * \n * Add a new comment to a question in a student's assessment session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/comments`\n */\n create(args: Args<\"exams.sessions.comments.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.create\">>;\n create(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/comments\", [\"examId\",\"sessionId\"], [], true, args, options);\n }\n\n /**\n * Update session comment\n * \n * Edit the body of an existing session comment.\n * \n * API endpoint: `PATCH /exams/{examId}/sessions/{sessionId}/comments/{commentId}`\n */\n update(args: Args<\"exams.sessions.comments.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/exams/{examId}/sessions/{sessionId}/comments/{commentId}\", [\"examId\",\"sessionId\",\"commentId\"], [], true, args, options);\n }\n\n /**\n * Delete session comment\n * \n * Remove a comment from a session.\n * \n * API endpoint: `DELETE /exams/{examId}/sessions/{sessionId}/comments/{commentId}`\n */\n delete(args: Args<\"exams.sessions.comments.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.comments.delete\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/exams/{examId}/sessions/{sessionId}/comments/{commentId}\", [\"examId\",\"sessionId\",\"commentId\"], [], false, args, options);\n }\n}\n\nexport class ExamsSessions {\n readonly comments: ExamsSessionsComments;\n\n constructor(private readonly ctx: ClientContext) {\n this.comments = new ExamsSessionsComments(this.ctx);\n }\n\n /**\n * List exam sessions\n * \n * Get a list of all student sessions for an exam, representing a set of answers from a student.\n * \n * API endpoint: `GET /exams/{examId}/sessions`\n */\n list(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.list\">>;\n list(args: Args<\"exams.sessions.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.list\">>;\n list(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.list\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/sessions\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Create session\n * \n * Manually create a session, possibly from uploaded data.\n * \n * API endpoint: `POST /exams/{examId}/sessions`\n */\n import(args: Args<\"exams.sessions.import\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.import\">>;\n import(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.import\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Get answers from scan\n * \n * Scan student answers from a document.\n * \n * API endpoint: `POST /exams/{examId}/sessions/scan`\n */\n scan(args: Args<\"exams.sessions.scan\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scan\">>;\n scan(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scan\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/scan\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Release grades\n * \n * Release grades for all sessions in an exam, optionally sending notifications to students.\n * \n * API endpoint: `POST /exams/{examId}/sessions/release-grades`\n */\n releaseGrades(args: Args<\"exams.sessions.releaseGrades\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.releaseGrades\">>;\n releaseGrades(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.releaseGrades\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/release-grades\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Scan images for student answers\n * \n * Start a background task to extract a student's answers from scanned page images and create a session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/scan-images`\n */\n scanImages(args: Args<\"exams.sessions.scanImages\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanImages\">>;\n scanImages(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanImages\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/scan-images\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Detect student name from scan\n * \n * Start a background task to detect the student name from a scanned page image.\n * \n * API endpoint: `POST /exams/{examId}/sessions/scan-student-name`\n */\n scanStudentName(args: Args<\"exams.sessions.scanStudentName\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanStudentName\">>;\n scanStudentName(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanStudentName\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/scan-student-name\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Scan document for student answers\n * \n * Start a background task to extract student answers from an uploaded PDF document.\n * \n * API endpoint: `POST /exams/{examId}/sessions/scan-document`\n */\n scanDocument(args: Args<\"exams.sessions.scanDocument\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanDocument\">>;\n scanDocument(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.scanDocument\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/scan-document\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Get results summary\n * \n * Get the stored AI-generated summary of the exam's results, if one has been generated.\n * \n * API endpoint: `GET /exams/{examId}/sessions/summary`\n */\n getResultsSummary(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.getResultsSummary\">>;\n getResultsSummary(args: Args<\"exams.sessions.getResultsSummary\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.getResultsSummary\">>;\n getResultsSummary(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.getResultsSummary\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/sessions/summary\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Generate results summary\n * \n * Start a background task to generate an AI summary of the exam's results, highlighting what students are struggling with. Returns the stored summary directly when the results haven't changed since the last generation.\n * \n * API endpoint: `POST /exams/{examId}/sessions/summary`\n */\n generateResultsSummary(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.generateResultsSummary\">>;\n generateResultsSummary(args: Args<\"exams.sessions.generateResultsSummary\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.generateResultsSummary\">>;\n generateResultsSummary(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.generateResultsSummary\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/summary\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Get exam session\n * \n * Get a single exam session by its ID, representing a set of answers from a student.\n * \n * API endpoint: `GET /exams/{examId}/sessions/{sessionId}`\n */\n get(args: Args<\"exams.sessions.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/sessions/{sessionId}\", [\"examId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Delete exam session\n * \n * Remove an exam session.\n * \n * API endpoint: `DELETE /exams/{examId}/sessions/{sessionId}`\n */\n delete(args: Args<\"exams.sessions.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.delete\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/exams/{examId}/sessions/{sessionId}\", [\"examId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Update session\n * \n * Update an exam session. Currently supports renaming the student, which is not allowed for sessions connected to a user account.\n * \n * API endpoint: `PATCH /exams/{examId}/sessions/{sessionId}`\n */\n update(args: Args<\"exams.sessions.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/exams/{examId}/sessions/{sessionId}\", [\"examId\",\"sessionId\"], [], true, args, options);\n }\n\n /**\n * Assign session to user\n * \n * Connect an anonymous exam session to a student account, by user ID or email address (inviting a new student if needed). Optionally notifies the student that their results are available for review. Only allowed when the session is not connected to a user yet.\n * \n * API endpoint: `PUT /exams/{examId}/sessions/{sessionId}/user`\n */\n assignUser(args: Args<\"exams.sessions.assignUser\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.assignUser\">>;\n assignUser(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.assignUser\">> {\n const args = arg;\n return request(this.ctx, \"PUT\", \"/exams/{examId}/sessions/{sessionId}/user\", [\"examId\",\"sessionId\"], [], true, args, options);\n }\n\n /**\n * Provide feedback\n * \n * Set teacher feedback and/or a grade for a specific question in an exam session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/feedback`\n */\n saveFeedback(args: Args<\"exams.sessions.saveFeedback\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.saveFeedback\">>;\n saveFeedback(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.saveFeedback\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/feedback\", [\"examId\",\"sessionId\"], [], true, args, options);\n }\n\n /**\n * Provide overall feedback\n * \n * Set teacher feedback for the test as a whole in an exam session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/overall-feedback`\n */\n saveOverallFeedback(args: Args<\"exams.sessions.saveOverallFeedback\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.saveOverallFeedback\">>;\n saveOverallFeedback(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.saveOverallFeedback\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/overall-feedback\", [\"examId\",\"sessionId\"], [], true, args, options);\n }\n\n /**\n * Generate overall feedback\n * \n * Generate feedback for the test as a whole in an exam session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/generate-overall-feedback`\n */\n generateOverallFeedback(args: Args<\"exams.sessions.generateOverallFeedback\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.generateOverallFeedback\">>;\n generateOverallFeedback(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.generateOverallFeedback\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/generate-overall-feedback\", [\"examId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Accept AI grading suggestions\n * \n * Accept all AI-generated grading suggestions for the exam session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/suggestions/accept-all`\n */\n acceptAllSuggestions(args: Args<\"exams.sessions.acceptAllSuggestions\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.acceptAllSuggestions\">>;\n acceptAllSuggestions(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.acceptAllSuggestions\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/suggestions/accept-all\", [\"examId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Accept single AI grading suggestion\n * \n * Accept a single AI-generated grading suggestion for the exam session.\n * \n * API endpoint: `POST /exams/{examId}/sessions/{sessionId}/suggestions/{questionId}/accept`\n */\n acceptSuggestion(args: Args<\"exams.sessions.acceptSuggestion\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.acceptSuggestion\">>;\n acceptSuggestion(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.acceptSuggestion\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/sessions/{sessionId}/suggestions/{questionId}/accept\", [\"examId\",\"sessionId\",\"questionId\"], [], false, args, options);\n }\n\n /**\n * Edit answer\n * \n * Edit a single answer in an exam session.\n * \n * API endpoint: `PATCH /exams/{examId}/sessions/{sessionId}/answers/{questionId}`\n */\n editAnswer(args: Args<\"exams.sessions.editAnswer\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.editAnswer\">>;\n editAnswer(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.sessions.editAnswer\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/exams/{examId}/sessions/{sessionId}/answers/{questionId}\", [\"examId\",\"sessionId\",\"questionId\"], [], true, args, options);\n }\n}\n\nexport class ExamsQuestions {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Import questions\n * \n * Import questions into an exam from a file. Support Word, PDF, Moodle quiz XML and plain text files.\n * \n * API endpoint: `POST /exams/{examId}/questions/import`\n */\n import(args: Args<\"exams.questions.import\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.import\">>;\n import(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.import\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/questions/import\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Generate question\n * \n * Generate a new question for the exam using an AI prompt.\n * \n * API endpoint: `POST /exams/{examId}/questions/generate`\n */\n generate(args: Args<\"exams.questions.generate\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.generate\">>;\n generate(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.generate\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/questions/generate\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Get question\n * \n * Retrieve a question by its ID.\n * \n * API endpoint: `GET /exams/{examId}/questions/{questionId}`\n */\n get(args: Args<\"exams.questions.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/questions/{questionId}\", [\"examId\",\"questionId\"], [\"format\"], false, args, options);\n }\n\n /**\n * Update a question\n * \n * Update fields on a single question, such as its scoring configuration. Use `scoring.excludeFromGrading` to exclude a question from grading so it no longer counts towards the total points or grade of a session.\n * \n * API endpoint: `PATCH /exams/{examId}/questions/{questionId}`\n */\n update(args: Args<\"exams.questions.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/exams/{examId}/questions/{questionId}\", [\"examId\",\"questionId\"], [], true, args, options);\n }\n\n /**\n * Get question quality score\n * \n * Retrieve the quality score of a question. This is an async endpoint - when called for the first time, it will trigger a quality assessment and return a status of `pending`. Subsequent calls will return the quality score once available. We recommend polling this endpoint every 5-10 seconds until the score is available.\n * \n * API endpoint: `GET /exams/{examId}/questions/{questionId}/quality`\n */\n getQuality(args: Args<\"exams.questions.getQuality\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.getQuality\">>;\n getQuality(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.getQuality\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/questions/{questionId}/quality\", [\"examId\",\"questionId\"], [], false, args, options);\n }\n\n /**\n * Regenerate question\n * \n * Update a question using an AI prompt.\n * \n * API endpoint: `POST /exams/{examId}/questions/{questionId}/generate`\n */\n regenerate(args: Args<\"exams.questions.regenerate\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.regenerate\">>;\n regenerate(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.questions.regenerate\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/questions/{questionId}/generate\", [\"examId\",\"questionId\"], [], true, args, options);\n }\n}\n\nexport class ExamsExport {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Export QTI 3 package\n * \n * Export an exam as a QTI 3 ZIP package.\n * \n * API endpoint: `POST /exams/{examId}/export/qti3-zip`\n */\n qti3Zip(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti3Zip\">>;\n qti3Zip(args: Args<\"exams.export.qti3Zip\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti3Zip\">>;\n qti3Zip(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti3Zip\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/export/qti3-zip\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Export QTI 2.1 package\n * \n * Export an exam as a QTI 2.1 ZIP package.\n * \n * API endpoint: `POST /exams/{examId}/export/qti21-zip`\n */\n qti21Zip(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti21Zip\">>;\n qti21Zip(args: Args<\"exams.export.qti21Zip\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti21Zip\">>;\n qti21Zip(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.export.qti21Zip\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/export/qti21-zip\", [\"examId\"], [], false, args, options);\n }\n}\n\nexport class Exams {\n readonly sessions: ExamsSessions;\n readonly questions: ExamsQuestions;\n readonly export: ExamsExport;\n\n constructor(private readonly ctx: ClientContext) {\n this.sessions = new ExamsSessions(this.ctx);\n this.questions = new ExamsQuestions(this.ctx);\n this.export = new ExamsExport(this.ctx);\n }\n\n /**\n * List exams\n * \n * Get a list of all exams within your workspace.\n * \n * API endpoint: `GET /exams`\n */\n list(args?: Args<\"exams.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/exams\", [], [\"folder\",\"role\"], false, args, options);\n }\n\n /**\n * Create exam\n * \n * Create a new exam within your workspace.\n * \n * API endpoint: `POST /exams`\n */\n create(args?: Args<\"exams.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams\", [], [], true, args, options);\n }\n\n /**\n * Import exam\n * \n * Create an exam by importing one or more source materials (e.g. an existing exam).\n * \n * API endpoint: `POST /exams/import`\n */\n import(args?: Args<\"exams.import\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.import\">>;\n import(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.import\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/import\", [], [], true, args, options);\n }\n\n /**\n * Get exam\n * \n * Get a single exam by its ID.\n * \n * API endpoint: `GET /exams/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.get\">>;\n get(args: Args<\"exams.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/exams/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Update exam\n * \n * Update an existing exam.\n * \n * API endpoint: `PATCH /exams/{id}`\n */\n update(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.update\">>;\n update(args: Args<\"exams.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.update\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"PATCH\", \"/exams/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Delete exam\n * \n * Delete the exam.\n * \n * API endpoint: `DELETE /exams/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.delete\">>;\n delete(args: Args<\"exams.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/exams/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Duplicate exam\n * \n * Duplicate the exam's questions and settings to a new exam.\n * \n * API endpoint: `POST /exams/{examId}/duplicate`\n */\n duplicate(args: Args<\"exams.duplicate\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.duplicate\">>;\n duplicate(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.duplicate\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/duplicate\", [\"examId\"], [], true, args, options);\n }\n\n /**\n * Print exam\n * \n * Export an exam to a PDF file or Word document.\n * \n * API endpoint: `POST /exams/{examId}/print`\n */\n print(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.print\">>;\n print(args: Args<\"exams.print\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.print\">>;\n print(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.print\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/print\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Generate exam\n * \n * Initiate a job to generate new questions for the exam using AI, based on the source materials and metadata specified.\n * \n * API endpoint: `POST /exams/{examId}/generate`\n */\n startGeneration(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.startGeneration\">>;\n startGeneration(args: Args<\"exams.startGeneration\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.startGeneration\">>;\n startGeneration(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.startGeneration\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/generate\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Cancel exam generation\n * \n * Cancel an ongoing job to generate new questions for the exam using AI.\n * \n * API endpoint: `POST /exams/{examId}/generate/cancel`\n */\n cancelGeneration(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.cancelGeneration\">>;\n cancelGeneration(args: Args<\"exams.cancelGeneration\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.cancelGeneration\">>;\n cancelGeneration(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.cancelGeneration\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"POST\", \"/exams/{examId}/generate/cancel\", [\"examId\"], [], false, args, options);\n }\n\n /**\n * Get exam context suggestions\n * \n * Get AI-generated suggestions for context/instructions to include in the exam generation prompt, based on the source materials linked to the exam.\n * \n * API endpoint: `GET /exams/{examId}/context-suggestions`\n */\n getContextSuggestions(examId: string, options?: ExamplaryRequestOptions): Promise<Response<\"exams.getContextSuggestions\">>;\n getContextSuggestions(args: Args<\"exams.getContextSuggestions\">, options?: ExamplaryRequestOptions): Promise<Response<\"exams.getContextSuggestions\">>;\n getContextSuggestions(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"exams.getContextSuggestions\">> {\n const args = typeof arg === \"string\" ? { examId: arg } : arg;\n return request(this.ctx, \"GET\", \"/exams/{examId}/context-suggestions\", [\"examId\"], [], false, args, options);\n }\n}\n\nexport class Orgs {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List all organizations\n * \n * Retrieve a list of all organizations the authenticated user has access to. Optionally can also return pending and suggested org memberships.\n * \n * API endpoint: `GET /orgs`\n */\n list(args?: Args<\"orgs.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/orgs\", [], [\"includeUnconfirmed\"], false, args, options);\n }\n\n /**\n * Create a new organization\n * \n * Create a new workspace to collaborate on resources within. Either specify a name, or pass an empty body to create a default workspace for the user.\n * \n * API endpoint: `POST /orgs`\n */\n create(args?: Args<\"orgs.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/orgs\", [], [], true, args, options);\n }\n\n /**\n * Request to join an organization\n * \n * Request to join an existing organization. The request will be reviewed by the organization's administrators or auto-accepted.\n * \n * API endpoint: `POST /orgs/{orgId}/join`\n */\n join(orgId: string, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.join\">>;\n join(args: Args<\"orgs.join\">, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.join\">>;\n join(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"orgs.join\">> {\n const args = typeof arg === \"string\" ? { orgId: arg } : arg;\n return request(this.ctx, \"POST\", \"/orgs/{orgId}/join\", [\"orgId\"], [], false, args, options);\n }\n}\n\nexport class SearchTokens {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get a search token\n * \n * Returns a short-lived, permission-scoped TypeSense search key for the current user, along with the host and collection to query. The key cannot be widened: the filter it carries is enforced by TypeSense.\n * \n * API endpoint: `GET /search/tokens`\n */\n get(args?: Args<\"search.tokens.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"search.tokens.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"search.tokens.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/search/tokens\", [], [], false, args, options);\n }\n\n /**\n * Get a search token\n * \n * Returns a short-lived, permission-scoped TypeSense search key for the public items.\n * \n * API endpoint: `GET /search/tokens/public`\n */\n getPublic(args?: Args<\"search.tokens.get-public\">, options?: ExamplaryRequestOptions): Promise<Response<\"search.tokens.get-public\">>;\n getPublic(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"search.tokens.get-public\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/search/tokens/public\", [], [], false, args, options);\n }\n}\n\nexport class Search {\n readonly tokens: SearchTokens;\n\n constructor(private readonly ctx: ClientContext) {\n this.tokens = new SearchTokens(this.ctx);\n }\n}\n\nexport class MeTwoFactor {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get two-factor status\n * \n * Check whether two-factor authentication is enabled for the current user, and whether the workspace requires it.\n * \n * API endpoint: `GET /me/two-factor`\n */\n get(args?: Args<\"me.twoFactor.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/me/two-factor\", [], [], false, args, options);\n }\n\n /**\n * Enable two-factor authentication\n * \n * Turn on two-factor authentication, after an authenticator app has been registered and verified with Cognito.\n * \n * API endpoint: `POST /me/two-factor`\n */\n enable(args?: Args<\"me.twoFactor.enable\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.enable\">>;\n enable(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.enable\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/me/two-factor\", [], [], false, args, options);\n }\n\n /**\n * Disable two-factor authentication\n * \n * Turn off two-factor authentication for the current user. Not allowed when the workspace requires it.\n * \n * API endpoint: `DELETE /me/two-factor`\n */\n disable(args?: Args<\"me.twoFactor.disable\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.disable\">>;\n disable(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.twoFactor.disable\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/me/two-factor\", [], [], false, args, options);\n }\n}\n\nexport class Me {\n readonly twoFactor: MeTwoFactor;\n\n constructor(private readonly ctx: ClientContext) {\n this.twoFactor = new MeTwoFactor(this.ctx);\n }\n\n /**\n * Get me\n * \n * Get the current user's account details.\n * \n * API endpoint: `GET /me`\n */\n get(args?: Args<\"me.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/me\", [], [], false, args, options);\n }\n\n /**\n * Update me\n * \n * Update the current user's account details.\n * \n * API endpoint: `PATCH /me`\n */\n update(args?: Args<\"me.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.update\">>;\n update(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/me\", [], [], true, args, options);\n }\n\n /**\n * Change my email address\n * \n * Send a confirmation link to a new email address. The account only moves to it once that link is opened. Not available in workspaces that manage their members' identities.\n * \n * API endpoint: `PATCH /me/email`\n */\n updateEmail(args?: Args<\"me.updateEmail\">, options?: ExamplaryRequestOptions): Promise<Response<\"me.updateEmail\">>;\n updateEmail(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"me.updateEmail\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/me/email\", [], [], true, args, options);\n }\n}\n\nexport class Media {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get file upload URL\n * \n * Returns a signed URL for uploading a file, and a public URL for accessing it afterwards.\n * \n * API endpoint: `GET /media/upload`\n */\n upload(args: _override_mediaUpload.Args, options?: ExamplaryRequestOptions): Promise<_override_mediaUpload.Response> {\n return _override_mediaUpload.override(this.ctx, args, options);\n }\n}\n\nexport class OrgCustomDomain {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get custom domain configuration\n * \n * API endpoint: `GET /org/custom-domain`\n */\n get(args?: Args<\"org.customDomain.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.customDomain.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.customDomain.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org/custom-domain\", [], [], false, args, options);\n }\n\n /**\n * Update custom domain configuration\n * \n * API endpoint: `POST /org/custom-domain`\n */\n update(args?: Args<\"org.customDomain.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.customDomain.update\">>;\n update(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.customDomain.update\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/org/custom-domain\", [], [], true, args, options);\n }\n}\n\nexport class OrgEmailDomains {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List verified email domains\n * \n * API endpoint: `GET /org/email-domains`\n */\n list(args?: Args<\"org.emailDomains.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org/email-domains\", [], [], false, args, options);\n }\n\n /**\n * Add an email domain to verify\n * \n * API endpoint: `POST /org/email-domains`\n */\n create(args?: Args<\"org.emailDomains.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/org/email-domains\", [], [], true, args, options);\n }\n\n /**\n * Update an email domain's join settings\n * \n * API endpoint: `PATCH /org/email-domains/{domain}`\n */\n update(args: Args<\"org.emailDomains.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/org/email-domains/{domain}\", [\"domain\"], [], true, args, options);\n }\n\n /**\n * Remove a verified email domain\n * \n * API endpoint: `DELETE /org/email-domains/{domain}`\n */\n delete(domain: string, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.delete\">>;\n delete(args: Args<\"org.emailDomains.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.delete\">> {\n const args = typeof arg === \"string\" ? { domain: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/org/email-domains/{domain}\", [\"domain\"], [], false, args, options);\n }\n\n /**\n * Re-check an email domain's DNS verification record\n * \n * API endpoint: `POST /org/email-domains/{domain}/verify`\n */\n verify(domain: string, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.verify\">>;\n verify(args: Args<\"org.emailDomains.verify\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.verify\">>;\n verify(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.emailDomains.verify\">> {\n const args = typeof arg === \"string\" ? { domain: arg } : arg;\n return request(this.ctx, \"POST\", \"/org/email-domains/{domain}/verify\", [\"domain\"], [], false, args, options);\n }\n}\n\nexport class OrgIdentityProvider {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get single sign-on configuration\n * \n * API endpoint: `GET /org/identity-provider`\n */\n get(args?: Args<\"org.identityProvider.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org/identity-provider\", [], [], false, args, options);\n }\n\n /**\n * Configure single sign-on\n * \n * API endpoint: `POST /org/identity-provider`\n */\n update(args?: Args<\"org.identityProvider.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.update\">>;\n update(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.update\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/org/identity-provider\", [], [], true, args, options);\n }\n\n /**\n * Turn off single sign-on\n * \n * API endpoint: `DELETE /org/identity-provider`\n */\n delete(args?: Args<\"org.identityProvider.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.delete\">>;\n delete(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.identityProvider.delete\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/org/identity-provider\", [], [], false, args, options);\n }\n}\n\nexport class OrgJoinRequests {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List pending workspace join requests\n * \n * API endpoint: `GET /org/join-requests`\n */\n list(args?: Args<\"org.joinRequests.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org/join-requests\", [], [], false, args, options);\n }\n\n /**\n * Approve a workspace join request\n * \n * API endpoint: `POST /org/join-requests/{userId}/approve`\n */\n approve(args: Args<\"org.joinRequests.approve\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.approve\">>;\n approve(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.approve\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/org/join-requests/{userId}/approve\", [\"userId\"], [], true, args, options);\n }\n\n /**\n * Reject a workspace join request\n * \n * API endpoint: `POST /org/join-requests/{userId}/reject`\n */\n reject(userId: string, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.reject\">>;\n reject(args: Args<\"org.joinRequests.reject\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.reject\">>;\n reject(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.joinRequests.reject\">> {\n const args = typeof arg === \"string\" ? { userId: arg } : arg;\n return request(this.ctx, \"POST\", \"/org/join-requests/{userId}/reject\", [\"userId\"], [], false, args, options);\n }\n}\n\nexport class Org {\n readonly customDomain: OrgCustomDomain;\n readonly emailDomains: OrgEmailDomains;\n readonly identityProvider: OrgIdentityProvider;\n readonly joinRequests: OrgJoinRequests;\n\n constructor(private readonly ctx: ClientContext) {\n this.customDomain = new OrgCustomDomain(this.ctx);\n this.emailDomains = new OrgEmailDomains(this.ctx);\n this.identityProvider = new OrgIdentityProvider(this.ctx);\n this.joinRequests = new OrgJoinRequests(this.ctx);\n }\n\n /**\n * Get organization\n * \n * API endpoint: `GET /org`\n */\n get(args?: Args<\"org.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org\", [], [], false, args, options);\n }\n\n /**\n * Update organization\n * \n * API endpoint: `PATCH /org`\n */\n update(args?: Args<\"org.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.update\">>;\n update(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/org\", [], [], true, args, options);\n }\n\n /**\n * Delete organization\n * \n * API endpoint: `DELETE /org`\n */\n delete(args?: Args<\"org.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.delete\">>;\n delete(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.delete\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/org\", [], [], false, args, options);\n }\n\n /**\n * Get organization limits\n * \n * API endpoint: `GET /org/limits`\n */\n limits(args?: Args<\"org.limits\">, options?: ExamplaryRequestOptions): Promise<Response<\"org.limits\">>;\n limits(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"org.limits\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/org/limits\", [], [], false, args, options);\n }\n}\n\nexport class AuditLogs {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List audit logs\n * \n * List the workspace's audit logs, newest first, with optional date range, actor and object filters. Paginated.\n * \n * API endpoint: `GET /audit-logs`\n */\n list(args?: Args<\"audit-logs.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"audit-logs.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"audit-logs.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/audit-logs\", [], [\"actor\",\"object\",\"from\",\"to\",\"exclusiveStartKey\"], false, args, options);\n }\n\n /**\n * Export audit logs\n * \n * Export audit logs for a date range (optionally filtered by actor/object) as ND-JSON. Returns a temporary download URL.\n * \n * API endpoint: `GET /audit-logs/export`\n */\n export(args: Args<\"audit-logs.export\">, options?: ExamplaryRequestOptions): Promise<Response<\"audit-logs.export\">>;\n export(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"audit-logs.export\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/audit-logs/export\", [], [\"from\",\"to\",\"actor\",\"object\"], false, args, options);\n }\n}\n\nexport class ApiKeys {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get API key\n * \n * Get the API key for the current org/user combination. Creates one if none exists.\n * \n * API endpoint: `GET /api-keys`\n */\n get(args?: Args<\"apiKeys.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"apiKeys.get\">>;\n get(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"apiKeys.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/api-keys\", [], [], false, args, options);\n }\n\n /**\n * Reset API key\n * \n * Invalidate old API keys for this org/user and create a new one.\n * \n * API endpoint: `POST /api-keys/reset`\n */\n reset(args?: Args<\"apiKeys.reset\">, options?: ExamplaryRequestOptions): Promise<Response<\"apiKeys.reset\">>;\n reset(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"apiKeys.reset\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/api-keys/reset\", [], [], false, args, options);\n }\n}\n\nexport class Attributes {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List attributes\n * \n * Get all custom attributes configured for the current workspace.\n * \n * API endpoint: `GET /attributes`\n */\n list(args?: Args<\"attributes.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/attributes\", [], [], false, args, options);\n }\n\n /**\n * Create attribute\n * \n * Create a new custom attribute in the current workspace.\n * \n * API endpoint: `POST /attributes`\n */\n create(args?: Args<\"attributes.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/attributes\", [], [], true, args, options);\n }\n\n /**\n * Reorder attributes\n * \n * Update the position of multiple attributes at once.\n * \n * API endpoint: `POST /attributes/reorder`\n */\n reorder(args?: Args<\"attributes.reorder\">, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.reorder\">>;\n reorder(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.reorder\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/attributes/reorder\", [], [], true, args, options);\n }\n\n /**\n * Update attribute\n * \n * Update an existing attribute in the current workspace.\n * \n * API endpoint: `POST /attributes/{id}`\n */\n update(args: Args<\"attributes.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.update\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/attributes/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete attribute\n * \n * Delete a custom attribute from the current workspace. Default attributes cannot be deleted.\n * \n * API endpoint: `DELETE /attributes/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.delete\">>;\n delete(args: Args<\"attributes.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"attributes.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/attributes/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Taxonomies {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get taxonomies\n * \n * Get a list available taxonomies, including defaults and taxonomies created in the current workspace.\n * \n * API endpoint: `GET /taxonomies`\n */\n list(args?: Args<\"taxonomies.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/taxonomies\", [], [], false, args, options);\n }\n\n /**\n * Create taxonomy\n * \n * Save a new taxonomy in the current workspace.\n * \n * API endpoint: `POST /taxonomies`\n */\n create(args?: Args<\"taxonomies.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/taxonomies\", [], [], true, args, options);\n }\n\n /**\n * Update taxonomy\n * \n * Update an existing taxonomy in the current workspace.\n * \n * API endpoint: `POST /taxonomies/{id}`\n */\n update(args: Args<\"taxonomies.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.update\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/taxonomies/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete taxonomy\n * \n * Delete a taxonomy from the current workspace. This fails if there are any exams associated with the taxonomy.\n * \n * API endpoint: `DELETE /taxonomies/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.delete\">>;\n delete(args: Args<\"taxonomies.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"taxonomies.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/taxonomies/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Permissions {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Autocomplete users and groups\n * \n * Search for users and groups to share with. Returns matches by name or email. Respects restricted group visibility.\n * \n * API endpoint: `GET /permissions/autocomplete`\n */\n autocomplete(args: Args<\"permissions.autocomplete\">, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.autocomplete\">>;\n autocomplete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.autocomplete\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/permissions/autocomplete\", [], [\"q\",\"type\",\"role\"], false, args, options);\n }\n\n /**\n * Get sharing permissions\n * \n * Get a list of users, groups and orgs that have access to a specific resource.\n * \n * API endpoint: `GET /permissions/{resource}`\n */\n list(resource: string, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.list\">>;\n list(args: Args<\"permissions.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.list\">>;\n list(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.list\">> {\n const args = typeof arg === \"string\" ? { resource: arg } : arg;\n return request(this.ctx, \"GET\", \"/permissions/{resource}\", [\"resource\"], [], false, args, options);\n }\n\n /**\n * Create permission\n * \n * Create a new permission for a specific resource, or update the role of an existing actor.\n * \n * API endpoint: `POST /permissions/{resource}`\n */\n assign(args: Args<\"permissions.assign\">, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.assign\">>;\n assign(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.assign\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/permissions/{resource}\", [\"resource\"], [], true, args, options);\n }\n\n /**\n * Get actor role\n * \n * Get the role of a specific actor for a specific resource.\n * \n * API endpoint: `GET /permissions/{resource}/{actor}`\n */\n getActorRole(args: Args<\"permissions.getActorRole\">, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.getActorRole\">>;\n getActorRole(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.getActorRole\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/permissions/{resource}/{actor}\", [\"actor\",\"resource\"], [], false, args, options);\n }\n\n /**\n * Remove permission\n * \n * Remove a permission for a specific actor on a specific resource.\n * \n * API endpoint: `DELETE /permissions/{resource}/{actor}`\n */\n delete(args: Args<\"permissions.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"permissions.delete\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/permissions/{resource}/{actor}\", [\"resource\",\"actor\"], [], false, args, options);\n }\n}\n\nexport class StudentLevels {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List available student levels\n * \n * Get a list of available default student levels.\n * \n * API endpoint: `GET /student-levels`\n */\n list(args?: Args<\"studentLevels.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"studentLevels.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"studentLevels.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/student-levels\", [], [], false, args, options);\n }\n}\n\nexport class Users {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List users\n * \n * Get a list of all users in the workspace.\n * \n * API endpoint: `GET /users`\n */\n list(args?: Args<\"users.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"users.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"users.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/users\", [], [], false, args, options);\n }\n\n /**\n * Create user\n * \n * Create a new user in the workspace.\n * \n * API endpoint: `POST /users`\n */\n create(args?: Args<\"users.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"users.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"users.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/users\", [], [], true, args, options);\n }\n\n /**\n * Get user\n * \n * Get details of a specific user within the workspace.\n * \n * API endpoint: `GET /users/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"users.get\">>;\n get(args: Args<\"users.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"users.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"users.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/users/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Update user\n * \n * Update a user's details within the workspace.\n * \n * API endpoint: `PATCH /users/{id}`\n */\n update(args: Args<\"users.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"users.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"users.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/users/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete user\n * \n * Delete a user from the workspace.\n * \n * API endpoint: `DELETE /users/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"users.delete\">>;\n delete(args: Args<\"users.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"users.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"users.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/users/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Reset two-factor authentication\n * \n * Remove a user's authenticator app, so they can sign in again after losing their device.\n * \n * API endpoint: `DELETE /users/{userId}/two-factor`\n */\n resetTwoFactor(userId: string, options?: ExamplaryRequestOptions): Promise<Response<\"users.resetTwoFactor\">>;\n resetTwoFactor(args: Args<\"users.resetTwoFactor\">, options?: ExamplaryRequestOptions): Promise<Response<\"users.resetTwoFactor\">>;\n resetTwoFactor(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"users.resetTwoFactor\">> {\n const args = typeof arg === \"string\" ? { userId: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/users/{userId}/two-factor\", [\"userId\"], [], false, args, options);\n }\n}\n\nexport class PracticeSpacesStudents {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List practice space students\n * \n * Get a list of all students that practiced in a practice space.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/students`\n */\n list(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.students.list\">>;\n list(args: Args<\"practiceSpaces.students.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.students.list\">>;\n list(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.students.list\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/students\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Get practice space student\n * \n * Get details about a specific practice space student.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/students/{studentId}`\n */\n get(args: Args<\"practiceSpaces.students.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.students.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.students.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/students/{studentId}\", [\"practiceSpaceId\",\"studentId\"], [], false, args, options);\n }\n}\n\nexport class PracticeSpacesSessions {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Create practice space session\n * \n * Create a new practice space session.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/sessions`\n */\n create(args: Args<\"practiceSpaces.sessions.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.create\">>;\n create(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/sessions\", [\"practiceSpaceId\"], [], true, args, options);\n }\n\n /**\n * Get my practice space session\n * \n * Get the current user's past practice space session.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/sessions/mine`\n */\n getMine(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.getMine\">>;\n getMine(args: Args<\"practiceSpaces.sessions.getMine\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.getMine\">>;\n getMine(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.getMine\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/sessions/mine\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Get practice space session\n * \n * Get a practice space session by its ID.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/sessions/{sessionId}`\n */\n get(args: Args<\"practiceSpaces.sessions.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.get\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/sessions/{sessionId}\", [\"practiceSpaceId\",\"sessionId\"], [], false, args, options);\n }\n\n /**\n * Save answer for a practice space session\n * \n * Save an answer for a specific question in a practice space session.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/sessions/{sessionId}/answers/{questionId}`\n */\n saveAnswer(args: Args<\"practiceSpaces.sessions.saveAnswer\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.saveAnswer\">>;\n saveAnswer(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.sessions.saveAnswer\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/sessions/{sessionId}/answers/{questionId}\", [\"practiceSpaceId\",\"sessionId\",\"questionId\"], [], true, args, options);\n }\n}\n\nexport class PracticeSpaces {\n readonly students: PracticeSpacesStudents;\n readonly sessions: PracticeSpacesSessions;\n\n constructor(private readonly ctx: ClientContext) {\n this.students = new PracticeSpacesStudents(this.ctx);\n this.sessions = new PracticeSpacesSessions(this.ctx);\n }\n\n /**\n * List practice spaces\n * \n * Get a list of all practice spaces you have access to in this workspace.\n * \n * API endpoint: `GET /practice-spaces`\n */\n list(args?: Args<\"practiceSpaces.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/practice-spaces\", [], [\"folder\",\"role\"], false, args, options);\n }\n\n /**\n * Create practice space\n * \n * Create a new practice space within your workspace.\n * \n * API endpoint: `POST /practice-spaces`\n */\n create(args?: Args<\"practiceSpaces.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/practice-spaces\", [], [], true, args, options);\n }\n\n /**\n * Get practice space\n * \n * Get a single practice space by its ID.\n * \n * API endpoint: `GET /practice-spaces/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.get\">>;\n get(args: Args<\"practiceSpaces.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Update practice space\n * \n * Update an existing practice space.\n * \n * API endpoint: `PATCH /practice-spaces/{id}`\n */\n update(args: Args<\"practiceSpaces.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/practice-spaces/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete practice space\n * \n * Delete the practice space.\n * \n * API endpoint: `DELETE /practice-spaces/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.delete\">>;\n delete(args: Args<\"practiceSpaces.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/practice-spaces/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Duplicate practice space\n * \n * Duplicate the practice space's settings and topics to a new practice space.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/duplicate`\n */\n duplicate(args: Args<\"practiceSpaces.duplicate\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.duplicate\">>;\n duplicate(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.duplicate\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/duplicate\", [\"practiceSpaceId\"], [], true, args, options);\n }\n\n /**\n * Generate practice space topics\n * \n * Start generating mastery topics for a practice space.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/generate-topics`\n */\n generateTopics(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.generateTopics\">>;\n generateTopics(args: Args<\"practiceSpaces.generateTopics\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.generateTopics\">>;\n generateTopics(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.generateTopics\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/generate-topics\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Cancel practice space topic generation\n * \n * Cancel an in-progress mastery topic generation job.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/cancel-generate-topics`\n */\n cancelGenerateTopics(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.cancelGenerateTopics\">>;\n cancelGenerateTopics(args: Args<\"practiceSpaces.cancelGenerateTopics\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.cancelGenerateTopics\">>;\n cancelGenerateTopics(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.cancelGenerateTopics\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/cancel-generate-topics\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Preview top practice space questions\n * \n * Get a preview of the top practice space questions by quality score.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/questions-preview`\n */\n questionsPreview(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.questionsPreview\">>;\n questionsPreview(args: Args<\"practiceSpaces.questionsPreview\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.questionsPreview\">>;\n questionsPreview(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.questionsPreview\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/questions-preview\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Get practice space progress\n * \n * Get the progress of a single practice space by its ID.\n * \n * API endpoint: `GET /practice-spaces/{practiceSpaceId}/progress`\n */\n getProgress(practiceSpaceId: string, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.getProgress\">>;\n getProgress(args: Args<\"practiceSpaces.getProgress\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.getProgress\">>;\n getProgress(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.getProgress\">> {\n const args = typeof arg === \"string\" ? { practiceSpaceId: arg } : arg;\n return request(this.ctx, \"GET\", \"/practice-spaces/{practiceSpaceId}/progress\", [\"practiceSpaceId\"], [], false, args, options);\n }\n\n /**\n * Generate practice space topic feedback\n * \n * Get feedback for a specific topic in a practice space.\n * \n * API endpoint: `POST /practice-spaces/{practiceSpaceId}/progress/topic-feedback`\n */\n generateTopicFeedback(args: Args<\"practiceSpaces.generateTopicFeedback\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.generateTopicFeedback\">>;\n generateTopicFeedback(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.generateTopicFeedback\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/practice-spaces/{practiceSpaceId}/progress/topic-feedback\", [\"practiceSpaceId\"], [], true, args, options);\n }\n\n /**\n * Update a practice space question\n * \n * Update a specific question in a practice space.\n * \n * API endpoint: `PATCH /practice-spaces/{practiceSpaceId}/questions/{questionId}`\n */\n updateQuestion(args: Args<\"practiceSpaces.updateQuestion\">, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.updateQuestion\">>;\n updateQuestion(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"practiceSpaces.updateQuestion\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/practice-spaces/{practiceSpaceId}/questions/{questionId}\", [\"practiceSpaceId\",\"questionId\"], [], true, args, options);\n }\n}\n\nexport class SourceMaterials {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List source materials\n * \n * Returns a list of source materials the current user has access to.\n * \n * API endpoint: `GET /source-materials`\n */\n list(args?: Args<\"sourceMaterials.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/source-materials\", [], [\"externalId\"], false, args, options);\n }\n\n /**\n * Add source material\n * \n * Add a source material and start processing it for later use in an exam.\n * \n * API endpoint: `POST /source-materials`\n */\n create(args?: Args<\"sourceMaterials.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/source-materials\", [], [], true, args, options);\n }\n\n /**\n * List source material tags\n * \n * Returns a list of existing tags for the source materials the current user has access to. Useful for filtering, or for presenting autocomplete suggestions.\n * \n * API endpoint: `GET /source-materials/tags`\n */\n listTags(args?: Args<\"sourceMaterials.listTags\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.listTags\">>;\n listTags(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.listTags\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/source-materials/tags\", [], [], false, args, options);\n }\n\n /**\n * Get source material\n * \n * Returns the current status and facts extracted from the specified source material.\n * \n * API endpoint: `GET /source-materials/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.get\">>;\n get(args: Args<\"sourceMaterials.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/source-materials/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Update source material\n * \n * Updates the specified source material.\n * \n * API endpoint: `PATCH /source-materials/{id}`\n */\n update(args: Args<\"sourceMaterials.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/source-materials/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete source material\n * \n * Deletes the specified source material.\n * \n * API endpoint: `DELETE /source-materials/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.delete\">>;\n delete(args: Args<\"sourceMaterials.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/source-materials/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Create a source material slice\n * \n * Create a new source material based on a specific page range of an existing source material.\n * \n * API endpoint: `POST /source-materials/{sourceMaterialId}/slice`\n */\n slice(args: Args<\"sourceMaterials.slice\">, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.slice\">>;\n slice(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"sourceMaterials.slice\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/source-materials/{sourceMaterialId}/slice\", [\"sourceMaterialId\"], [], true, args, options);\n }\n}\n\nexport class Items {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List items\n * \n * Get a list of items (tests and practice spaces) within your workspace. Returns everything by default; filter by `type` or `folder`.\n * \n * API endpoint: `GET /items`\n */\n list(args?: Args<\"items.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"items.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"items.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/items\", [], [\"type\",\"folder\"], false, args, options);\n }\n}\n\nexport class Folders {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get folders\n * \n * Get a list of folders for exam organisation that exist within the current workspace.\n * \n * API endpoint: `GET /folders`\n */\n list(args?: Args<\"folders.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"folders.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"folders.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/folders\", [], [], false, args, options);\n }\n\n /**\n * Create folder\n * \n * Create a new folder in the current workspace.\n * \n * API endpoint: `POST /folders`\n */\n create(args?: Args<\"folders.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"folders.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"folders.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/folders\", [], [], true, args, options);\n }\n\n /**\n * Get folder\n * \n * Get a single folder from the current workspace by its ID.\n * \n * API endpoint: `GET /folders/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"folders.get\">>;\n get(args: Args<\"folders.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"folders.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"folders.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/folders/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Update folder\n * \n * Update an existing folder in the current workspace.\n * \n * API endpoint: `PATCH /folders/{id}`\n */\n update(args: Args<\"folders.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"folders.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"folders.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/folders/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete folder\n * \n * Delete a folder from the current workspace. If there are any exams in the folder, they will be moved out of the folder.\n * \n * API endpoint: `DELETE /folders/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"folders.delete\">>;\n delete(args: Args<\"folders.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"folders.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"folders.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/folders/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Groups {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List groups\n * \n * List all groups in the organization. When restricted group visibility is enabled, only returns groups the user belongs to.\n * \n * API endpoint: `GET /groups`\n */\n list(args?: Args<\"groups.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/groups\", [], [], false, args, options);\n }\n\n /**\n * Create group\n * \n * Create a new group. Requires admin or owner org role.\n * \n * API endpoint: `POST /groups`\n */\n create(args?: Args<\"groups.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/groups\", [], [], true, args, options);\n }\n\n /**\n * Rename group\n * \n * Rename a group. Requires group manager/owner role or org admin/owner.\n * \n * API endpoint: `PATCH /groups/{id}`\n */\n update(args: Args<\"groups.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/groups/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete group\n * \n * Delete a group and revoke all associated permissions. Requires group manager/owner role or org admin/owner.\n * \n * API endpoint: `DELETE /groups/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"groups.delete\">>;\n delete(args: Args<\"groups.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/groups/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * List group members\n * \n * List all members of a group with resolved user info. Respects restricted group visibility.\n * \n * API endpoint: `GET /groups/{groupId}/members`\n */\n listMembers(groupId: string, options?: ExamplaryRequestOptions): Promise<Response<\"groups.listMembers\">>;\n listMembers(args: Args<\"groups.listMembers\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.listMembers\">>;\n listMembers(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.listMembers\">> {\n const args = typeof arg === \"string\" ? { groupId: arg } : arg;\n return request(this.ctx, \"GET\", \"/groups/{groupId}/members\", [\"groupId\"], [], false, args, options);\n }\n\n /**\n * Add group member\n * \n * Add a member to a group. Requires group manager/owner role or org admin/owner.\n * \n * API endpoint: `POST /groups/{groupId}/members`\n */\n addMember(args: Args<\"groups.addMember\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.addMember\">>;\n addMember(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.addMember\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/groups/{groupId}/members\", [\"groupId\"], [], true, args, options);\n }\n\n /**\n * Change member role\n * \n * Change a member's role in the group. Requires group manager/owner role or org admin/owner.\n * \n * API endpoint: `PATCH /groups/{groupId}/members/{userId}`\n */\n updateMember(args: Args<\"groups.updateMember\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.updateMember\">>;\n updateMember(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.updateMember\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/groups/{groupId}/members/{userId}\", [\"groupId\",\"userId\"], [], true, args, options);\n }\n\n /**\n * Remove group member\n * \n * Remove a member from the group. Requires group manager/owner role or org admin/owner. Cannot remove the owner.\n * \n * API endpoint: `DELETE /groups/{groupId}/members/{userId}`\n */\n removeMember(args: Args<\"groups.removeMember\">, options?: ExamplaryRequestOptions): Promise<Response<\"groups.removeMember\">>;\n removeMember(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"groups.removeMember\">> {\n const args = arg;\n return request(this.ctx, \"DELETE\", \"/groups/{groupId}/members/{userId}\", [\"groupId\",\"userId\"], [], false, args, options);\n }\n}\n\nexport class Integrations {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * List integrations\n * \n * List all available integrations and whether they are configured for the current workspace. Settings and field metadata are only included for Admin/Owner.\n * \n * API endpoint: `GET /integrations`\n */\n list(args?: Args<\"integrations.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/integrations\", [], [], false, args, options);\n }\n\n /**\n * Get integration\n * \n * Get a single integration configured for the current workspace.\n * \n * API endpoint: `GET /integrations/{integrationType}`\n */\n get(integrationType: string, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.get\">>;\n get(args: Args<\"integrations.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.get\">> {\n const args = typeof arg === \"string\" ? { integrationType: arg } : arg;\n return request(this.ctx, \"GET\", \"/integrations/{integrationType}\", [\"integrationType\"], [], false, args, options);\n }\n\n /**\n * Configure integration\n * \n * Create or update the integration of this type. Settings are validated against the integration before saving.\n * \n * API endpoint: `POST /integrations/{integrationType}`\n */\n upsert(integrationType: string, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.upsert\">>;\n upsert(args: Args<\"integrations.upsert\">, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.upsert\">>;\n upsert(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.upsert\">> {\n const args = typeof arg === \"string\" ? { integrationType: arg } : arg;\n return request(this.ctx, \"POST\", \"/integrations/{integrationType}\", [\"integrationType\"], [], false, args, options);\n }\n\n /**\n * Remove integration\n * \n * Remove the integration of this type from the current workspace.\n * \n * API endpoint: `DELETE /integrations/{integrationType}`\n */\n delete(integrationType: string, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.delete\">>;\n delete(args: Args<\"integrations.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"integrations.delete\">> {\n const args = typeof arg === \"string\" ? { integrationType: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/integrations/{integrationType}\", [\"integrationType\"], [], false, args, options);\n }\n}\n\nexport class QuestionBank {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get question bank items\n * \n * Get a list of question bank items that exist within the current workspace.\n * \n * API endpoint: `GET /question-bank`\n */\n list(args?: Args<\"questionBank.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/question-bank\", [], [], false, args, options);\n }\n\n /**\n * Add question to question bank\n * \n * Add a question to the question bank in the current workspace.\n * \n * API endpoint: `POST /question-bank`\n */\n create(args?: Args<\"questionBank.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/question-bank\", [], [], true, args, options);\n }\n\n /**\n * Update question bank item\n * \n * Update an existing question bank item in the current workspace.\n * \n * API endpoint: `PATCH /question-bank/{id}`\n */\n update(args: Args<\"questionBank.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/question-bank/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete question bank item\n * \n * Delete a question bank item from the current workspace.\n * \n * API endpoint: `DELETE /question-bank/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.delete\">>;\n delete(args: Args<\"questionBank.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"questionBank.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/question-bank/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Prompts {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get prompts\n * \n * Get a list of reusable prompts, merging the workspace's saved prompts with the defaults provided by Examplary. Optionally filter by type and language.\n * \n * API endpoint: `GET /prompts`\n */\n list(args?: Args<\"prompts.list\">, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.list\">>;\n list(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.list\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/prompts\", [], [\"type\",\"language\"], false, args, options);\n }\n\n /**\n * Save prompt\n * \n * Save a reusable prompt in the current workspace.\n * \n * API endpoint: `POST /prompts`\n */\n create(args?: Args<\"prompts.create\">, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.create\">>;\n create(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.create\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/prompts\", [], [], true, args, options);\n }\n\n /**\n * Update prompt\n * \n * Update an existing prompt in the current workspace.\n * \n * API endpoint: `PATCH /prompts/{id}`\n */\n update(args: Args<\"prompts.update\">, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.update\">>;\n update(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.update\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/prompts/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete prompt\n * \n * Delete a prompt from the current workspace.\n * \n * API endpoint: `DELETE /prompts/{id}`\n */\n delete(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.delete\">>;\n delete(args: Args<\"prompts.delete\">, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.delete\">>;\n delete(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"prompts.delete\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/prompts/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Jobs {\n\n constructor(private readonly ctx: ClientContext) {\n }\n\n /**\n * Get job status\n * \n * Poll the status of a background job.\n * \n * API endpoint: `GET /jobs/{id}`\n */\n get(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.get\">>;\n get(args: Args<\"jobs.get\">, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.get\">>;\n get(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.get\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"GET\", \"/jobs/{id}\", [\"id\"], [], false, args, options);\n }\n\n /**\n * Cancel a job\n * \n * Cancel a background job.\n * \n * API endpoint: `DELETE /jobs/{id}`\n */\n cancel(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.cancel\">>;\n cancel(args: Args<\"jobs.cancel\">, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.cancel\">>;\n cancel(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"jobs.cancel\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/jobs/{id}\", [\"id\"], [], false, args, options);\n }\n}\n\nexport class Examplary {\n private readonly ctx: ClientContext;\n readonly questionTypes: QuestionTypes;\n readonly library: Library;\n readonly oauth: Oauth;\n readonly embedSessions: EmbedSessions;\n readonly exams: Exams;\n readonly orgs: Orgs;\n readonly search: Search;\n readonly me: Me;\n readonly media: Media;\n readonly org: Org;\n readonly auditLogs: AuditLogs;\n readonly apiKeys: ApiKeys;\n readonly attributes: Attributes;\n readonly taxonomies: Taxonomies;\n readonly permissions: Permissions;\n readonly studentLevels: StudentLevels;\n readonly users: Users;\n readonly practiceSpaces: PracticeSpaces;\n readonly sourceMaterials: SourceMaterials;\n readonly items: Items;\n readonly folders: Folders;\n readonly groups: Groups;\n readonly integrations: Integrations;\n readonly questionBank: QuestionBank;\n readonly prompts: Prompts;\n readonly jobs: Jobs;\n\n constructor(options: ExamplaryClientOptions) {\n this.ctx = createClientContext(options);\n this.questionTypes = new QuestionTypes(this.ctx);\n this.library = new Library(this.ctx);\n this.oauth = new Oauth(this.ctx);\n this.embedSessions = new EmbedSessions(this.ctx);\n this.exams = new Exams(this.ctx);\n this.orgs = new Orgs(this.ctx);\n this.search = new Search(this.ctx);\n this.me = new Me(this.ctx);\n this.media = new Media(this.ctx);\n this.org = new Org(this.ctx);\n this.auditLogs = new AuditLogs(this.ctx);\n this.apiKeys = new ApiKeys(this.ctx);\n this.attributes = new Attributes(this.ctx);\n this.taxonomies = new Taxonomies(this.ctx);\n this.permissions = new Permissions(this.ctx);\n this.studentLevels = new StudentLevels(this.ctx);\n this.users = new Users(this.ctx);\n this.practiceSpaces = new PracticeSpaces(this.ctx);\n this.sourceMaterials = new SourceMaterials(this.ctx);\n this.items = new Items(this.ctx);\n this.folders = new Folders(this.ctx);\n this.groups = new Groups(this.ctx);\n this.integrations = new Integrations(this.ctx);\n this.questionBank = new QuestionBank(this.ctx);\n this.prompts = new Prompts(this.ctx);\n this.jobs = new Jobs(this.ctx);\n }\n\n /**\n * Get rubrics\n * \n * Get a list of rubrics that exist within the current workspace.\n * \n * API endpoint: `GET /rubrics`\n */\n getRubrics(args?: Args<\"getRubrics\">, options?: ExamplaryRequestOptions): Promise<Response<\"getRubrics\">>;\n getRubrics(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"getRubrics\">> {\n const args = arg;\n return request(this.ctx, \"GET\", \"/rubrics\", [], [], false, args, options);\n }\n\n /**\n * Save rubric\n * \n * Add a rubric to the current workspace.\n * \n * API endpoint: `POST /rubrics`\n */\n postRubrics(args?: Args<\"postRubrics\">, options?: ExamplaryRequestOptions): Promise<Response<\"postRubrics\">>;\n postRubrics(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"postRubrics\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/rubrics\", [], [], true, args, options);\n }\n\n /**\n * Generate rubric\n * \n * Start a background job to generate a rubric using AI.\n * \n * API endpoint: `POST /rubrics/generate`\n */\n postRubricsGenerate(args?: Args<\"postRubricsGenerate\">, options?: ExamplaryRequestOptions): Promise<Response<\"postRubricsGenerate\">>;\n postRubricsGenerate(arg?: any, options?: ExamplaryRequestOptions): Promise<Response<\"postRubricsGenerate\">> {\n const args = arg;\n return request(this.ctx, \"POST\", \"/rubrics/generate\", [], [], true, args, options);\n }\n\n /**\n * Update rubric\n * \n * Update an existing rubric in the current workspace.\n * \n * API endpoint: `PATCH /rubrics/{id}`\n */\n patchRubricsId(args: Args<\"patchRubrics:id\">, options?: ExamplaryRequestOptions): Promise<Response<\"patchRubrics:id\">>;\n patchRubricsId(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"patchRubrics:id\">> {\n const args = arg;\n return request(this.ctx, \"PATCH\", \"/rubrics/{id}\", [\"id\"], [], true, args, options);\n }\n\n /**\n * Delete rubric\n * \n * Delete a rubric from the current workspace.\n * \n * API endpoint: `DELETE /rubrics/{id}`\n */\n deleteRubricsId(id: string, options?: ExamplaryRequestOptions): Promise<Response<\"deleteRubrics:id\">>;\n deleteRubricsId(args: Args<\"deleteRubrics:id\">, options?: ExamplaryRequestOptions): Promise<Response<\"deleteRubrics:id\">>;\n deleteRubricsId(arg: any, options?: ExamplaryRequestOptions): Promise<Response<\"deleteRubrics:id\">> {\n const args = typeof arg === \"string\" ? { id: arg } : arg;\n return request(this.ctx, \"DELETE\", \"/rubrics/{id}\", [\"id\"], [], false, args, options);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,IAAAA,gBAA2D;;;ACA3D,mBAIO;AAEA,IAAM,iBAAN,MAAM,wBAA6C,wBAAiB;AAAA,EAGzE,YACE,SACA,MACA,QACAC,UACA,UACA;AACA,UAAM,SAAS,MAAM,QAAQA,UAAS,QAAQ;AAC9C,SAAK,OAAO;AAAA,EACd;AAAA,EAEA,OAAO,eAAe,OAAmC;AACvD,UAAM,IAAI,IAAI;AAAA,MACZ,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,IACR;AAEA,UAAM,OAAO,MAAM,UAAU;AAI7B,QAAI,OAAO,MAAM,UAAU,UAAU;AACnC,QAAE,kBAAkB,MAAM;AAC1B,QAAE,UAAU,KAAK;AAAA,IACnB,WAAW,OAAO,MAAM,OAAO,YAAY,UAAU;AACnD,QAAE,kBAAkB,MAAM;AAC1B,QAAE,UAAU,KAAK,MAAM;AAAA,IACzB;AAEA,WAAO;AAAA,EACT;AACF;;;ADjCO,IAAM,sBAAsB,CACjC,YACkB;AAClB,QAAM,EAAE,QAAQ,SAAS,SAAS,GAAG,KAAK,IAAI;AAE9C,QAAM,WAAW,cAAAC,QAAM,OAAO;AAAA,IAC5B,SAAS,WAAW;AAAA,IACpB,GAAG;AAAA,IACH,SAAS;AAAA,MACP,eAAe,UAAU,MAAM;AAAA,MAC/B,GAAG;AAAA,IACL;AAAA,EACF,CAAC;AAED,WAAS,aAAa,SAAS;AAAA,IAC7B,CAAC,aAAa;AAAA,IACd,CAAC,UAAsB,QAAQ,OAAO,eAAe,eAAe,KAAK,CAAC;AAAA,EAC5E;AAEA,SAAO,EAAE,OAAO,UAAU,OAAO;AACnC;;;AE1BA,IAAM,gBAAgB;AAEf,IAAM,UAAU,OACrB,KACA,QACA,cACA,UACA,WACA,SACA,MACA,YACe;AACf,MAAI,CAAC,cAAc,KAAK,IAAI,MAAM,GAAG;AACnC,UAAM,IAAI,eAAe,iBAAiB;AAAA,EAC5C;AAEA,QAAM,OAAO,QAAQ,CAAC;AAEtB,QAAM,MAAM,aAAa,QAAQ,cAAc,CAAC,GAAG,QAAQ;AACzD,UAAM,QAAQ,KAAK,GAAG;AACtB,QAAI,UAAU,UAAa,UAAU,MAAM;AACzC,YAAM,IAAI,eAAe,oCAAoC,GAAG,GAAG;AAAA,IACrE;AACA,WAAO,mBAAmB,OAAO,KAAK,CAAC;AAAA,EACzC,CAAC;AAED,QAAM,SAAkC,CAAC;AACzC,aAAW,KAAK,WAAW;AACzB,QAAI,KAAK,CAAC,MAAM,OAAW,QAAO,CAAC,IAAI,KAAK,CAAC;AAAA,EAC/C;AAEA,MAAI;AACJ,MAAI,SAAS;AACX,UAAM,WAAW,oBAAI,IAAY,CAAC,GAAG,UAAU,GAAG,SAAS,CAAC;AAC5D,UAAM,OAAgC,CAAC;AACvC,QAAI,MAAM;AACV,eAAW,CAAC,GAAG,CAAC,KAAK,OAAO,QAAQ,IAAI,GAAG;AACzC,UAAI,SAAS,IAAI,CAAC,EAAG;AACrB,WAAK,CAAC,IAAI;AACV,YAAM;AAAA,IACR;AACA,QAAI,IAAK,QAAO;AAAA,EAClB;AAEA,QAAM,WAAW,MAAM,IAAI,MAAM,QAAW;AAAA,IAC1C,GAAG;AAAA,IACH;AAAA,IACA;AAAA,IACA,QAAQ,OAAO,KAAK,MAAM,EAAE,SAAS,SAAS;AAAA,IAC9C;AAAA,EACF,CAAC;AACD,SAAO,SAAS;AAClB;;;ACxCO,IAAM,WAAW,OACtB,KACA,MACA,YACsB;AACtB,QAAM,cAAc,KAAK,eAAe;AAExC,QAAM,EAAE,KAAK,IAAI,MAAM,IAAI,MAAM,QAG9B;AAAA,IACD,GAAG;AAAA,IACH,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,QAAQ;AAAA,MACN;AAAA,MACA,GAAI,KAAK,WAAW,EAAE,UAAU,KAAK,SAAS,IAAI,CAAC;AAAA,MACnD,GAAI,KAAK,OAAO,EAAE,MAAM,KAAK,KAAK,IAAI,CAAC;AAAA,IACzC;AAAA,EACF,CAAC;AAED,MAAI,KAAK,SAAS;AAChB,UAAM,OACJ,OAAO,WAAW,eAAe,CAAC,OAAO,SAAS,KAAK,OAAO,IAC1D,OAAO,KAAK,KAAK,OAAO,IACxB,KAAK;AAEX,UAAM,YAAY,MAAM,MAAM,KAAK,WAAW;AAAA,MAC5C,QAAQ;AAAA,MACR,SAAS,EAAE,gBAAgB,YAAY;AAAA,MACvC;AAAA,IACF,CAAC;AAED,QAAI,CAAC,UAAU,IAAI;AACjB,YAAM,IAAI;AAAA,QACR,kBAAkB,MAAM,UAAU,KAAK,CAAC;AAAA,QACxC;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;;;ACiHO,IAAM,gBAAN,MAAoB;AAAA,EAEzB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,WAAW,KAAW,SAAkF;AACtG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,0BAA0B,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACxF;AAAA,EAWA,IAAI,KAAU,SAA2E;AACvF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,OAAO,wBAAwB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC1F;AAAA,EAWA,OAAO,KAAU,SAA8E;AAC7F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,wBAAwB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC7F;AAAA,EAWA,WAAW,KAAU,SAAkF;AACrG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,gBAAgB,IAAI,IAAI;AACjE,WAAO,QAAQ,KAAK,KAAK,OAAO,oDAAoD,CAAC,gBAAgB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAClI;AAAA,EAUA,KAAK,KAAW,SAA4E;AAC1F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,mBAAmB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACjF;AAAA,EAUA,OAAO,KAAW,SAA8E;AAC9F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,mBAAmB,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACjF;AAAA,EAWA,OAAO,KAAU,SAA8E;AAC7F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,gBAAgB,IAAI,IAAI;AACjE,WAAO,QAAQ,KAAK,KAAK,QAAQ,2CAA2C,CAAC,gBAAgB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC1H;AAAA,EAWA,QAAQ,KAAU,SAA+E;AAC/F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,gBAAgB,IAAI,IAAI;AACjE,WAAO,QAAQ,KAAK,KAAK,QAAQ,4CAA4C,CAAC,gBAAgB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC3H;AACF;AAEO,IAAM,0BAAN,MAA8B;AAAA,EAEnC,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAWA,KAAK,KAAU,SAAwF;AACrG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,cAAc,IAAI,IAAI;AAC/D,WAAO,QAAQ,KAAK,KAAK,OAAO,6CAA6C,CAAC,cAAc,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACzH;AAAA,EAUA,OAAO,KAAU,SAA0F;AACzG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,6CAA6C,CAAC,cAAc,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACzH;AACF;AAEO,IAAM,qBAAN,MAAyB;AAAA,EAG9B,YAA6B,KAAoB;AAApB;AAC3B,SAAK,QAAQ,IAAI,wBAAwB,KAAK,GAAG;AAAA,EACnD;AAAA,EAUA,KAAK,KAAW,SAAkF;AAChG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,wBAAwB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACtF;AAAA,EAUA,OAAO,KAAW,SAAoF;AACpG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,wBAAwB,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACtF;AAAA,EAUA,OAAO,KAAU,SAAoF;AACnG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,uCAAuC,CAAC,cAAc,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACpH;AAAA,EAWA,OAAO,KAAU,SAAoF;AACnG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,cAAc,IAAI,IAAI;AAC/D,WAAO,QAAQ,KAAK,KAAK,UAAU,uCAAuC,CAAC,cAAc,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACtH;AACF;AAEO,IAAM,eAAN,MAAmB;AAAA,EAExB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,OAAO,KAAU,SAA8E;AAC7F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,2BAA2B,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAClG;AAAA,EAWA,OAAO,KAAU,SAA8E;AAC7F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,UAAU,2BAA2B,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACpG;AACF;AAEO,IAAM,UAAN,MAAc;AAAA,EAInB,YAA6B,KAAoB;AAApB;AAC3B,SAAK,cAAc,IAAI,mBAAmB,KAAK,GAAG;AAClD,SAAK,QAAQ,IAAI,aAAa,KAAK,GAAG;AAAA,EACxC;AACF;AAEO,IAAM,QAAN,MAAY;AAAA,EAEjB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,UAAU,KAAU,SAAyE;AAC3F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,oBAAoB,CAAC,GAAG,CAAC,iBAAgB,aAAY,gBAAe,SAAQ,SAAQ,kBAAiB,uBAAuB,GAAG,OAAO,MAAM,OAAO;AAAA,EACrL;AAAA,EAUA,MAAM,KAAW,SAAqE;AACpF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,gBAAgB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC/E;AACF;AAEO,IAAM,gBAAN,MAAoB;AAAA,EAEzB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,OAAO,KAAW,SAA8E;AAC9F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,mBAAmB,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACjF;AAAA,EAWA,IAAI,KAAU,SAA2E;AACvF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,OAAO,wBAAwB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC1F;AAAA,EAWA,OAAO,KAAU,SAA8E;AAC7F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,wBAAwB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC7F;AACF;AAEO,IAAM,wBAAN,MAA4B;AAAA,EAEjC,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAU,SAAsF;AACnG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,iDAAiD,CAAC,UAAS,WAAW,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACnI;AAAA,EAUA,OAAO,KAAU,SAAwF;AACvG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,iDAAiD,CAAC,UAAS,WAAW,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACnI;AAAA,EAUA,OAAO,KAAU,SAAwF;AACvG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,6DAA6D,CAAC,UAAS,aAAY,WAAW,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC5J;AAAA,EAUA,OAAO,KAAU,SAAwF;AACvG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,UAAU,6DAA6D,CAAC,UAAS,aAAY,WAAW,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC9J;AACF;AAEO,IAAM,gBAAN,MAAoB;AAAA,EAGzB,YAA6B,KAAoB;AAApB;AAC3B,SAAK,WAAW,IAAI,sBAAsB,KAAK,GAAG;AAAA,EACpD;AAAA,EAWA,KAAK,KAAU,SAA6E;AAC1F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,OAAO,4BAA4B,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAClG;AAAA,EAUA,OAAO,KAAU,SAA+E;AAC9F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,4BAA4B,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAClG;AAAA,EAUA,KAAK,KAAU,SAA6E;AAC1F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,iCAAiC,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACvG;AAAA,EAUA,cAAc,KAAU,SAAsF;AAC5G,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,2CAA2C,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACjH;AAAA,EAUA,WAAW,KAAU,SAAmF;AACtG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,wCAAwC,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC9G;AAAA,EAUA,gBAAgB,KAAU,SAAwF;AAChH,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,8CAA8C,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACpH;AAAA,EAUA,aAAa,KAAU,SAAqF;AAC1G,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,0CAA0C,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAChH;AAAA,EAWA,kBAAkB,KAAU,SAA0F;AACpH,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,OAAO,oCAAoC,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC1G;AAAA,EAWA,uBAAuB,KAAU,SAA+F;AAC9H,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,QAAQ,oCAAoC,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC3G;AAAA,EAUA,IAAI,KAAU,SAA4E;AACxF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,wCAAwC,CAAC,UAAS,WAAW,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC1H;AAAA,EAUA,OAAO,KAAU,SAA+E;AAC9F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,UAAU,wCAAwC,CAAC,UAAS,WAAW,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC7H;AAAA,EAUA,OAAO,KAAU,SAA+E;AAC9F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,wCAAwC,CAAC,UAAS,WAAW,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC3H;AAAA,EAUA,WAAW,KAAU,SAAmF;AACtG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,6CAA6C,CAAC,UAAS,WAAW,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC9H;AAAA,EAUA,aAAa,KAAU,SAAqF;AAC1G,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,iDAAiD,CAAC,UAAS,WAAW,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACnI;AAAA,EAUA,oBAAoB,KAAU,SAA4F;AACxH,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,yDAAyD,CAAC,UAAS,WAAW,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC3I;AAAA,EAUA,wBAAwB,KAAU,SAAgG;AAChI,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,kEAAkE,CAAC,UAAS,WAAW,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACrJ;AAAA,EAUA,qBAAqB,KAAU,SAA6F;AAC1H,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,+DAA+D,CAAC,UAAS,WAAW,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAClJ;AAAA,EAUA,iBAAiB,KAAU,SAAyF;AAClH,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,wEAAwE,CAAC,UAAS,aAAY,YAAY,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACxK;AAAA,EAUA,WAAW,KAAU,SAAmF;AACtG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,6DAA6D,CAAC,UAAS,aAAY,YAAY,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC7J;AACF;AAEO,IAAM,iBAAN,MAAqB;AAAA,EAE1B,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,OAAO,KAAU,SAAgF;AAC/F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,oCAAoC,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC1G;AAAA,EAUA,SAAS,KAAU,SAAkF;AACnG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,sCAAsC,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC5G;AAAA,EAUA,IAAI,KAAU,SAA6E;AACzF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,0CAA0C,CAAC,UAAS,YAAY,GAAG,CAAC,QAAQ,GAAG,OAAO,MAAM,OAAO;AAAA,EACrI;AAAA,EAUA,OAAO,KAAU,SAAgF;AAC/F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,0CAA0C,CAAC,UAAS,YAAY,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC9H;AAAA,EAUA,WAAW,KAAU,SAAoF;AACvG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,kDAAkD,CAAC,UAAS,YAAY,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACrI;AAAA,EAUA,WAAW,KAAU,SAAoF;AACvG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,mDAAmD,CAAC,UAAS,YAAY,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACtI;AACF;AAEO,IAAM,cAAN,MAAkB;AAAA,EAEvB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAWA,QAAQ,KAAU,SAA8E;AAC9F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,QAAQ,mCAAmC,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC1G;AAAA,EAWA,SAAS,KAAU,SAA+E;AAChG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,QAAQ,oCAAoC,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC3G;AACF;AAEO,IAAM,QAAN,MAAY;AAAA,EAKjB,YAA6B,KAAoB;AAApB;AAC3B,SAAK,WAAW,IAAI,cAAc,KAAK,GAAG;AAC1C,SAAK,YAAY,IAAI,eAAe,KAAK,GAAG;AAC5C,SAAK,SAAS,IAAI,YAAY,KAAK,GAAG;AAAA,EACxC;AAAA,EAUA,KAAK,KAAW,SAAoE;AAClF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,UAAU,CAAC,GAAG,CAAC,UAAS,MAAM,GAAG,OAAO,MAAM,OAAO;AAAA,EACvF;AAAA,EAUA,OAAO,KAAW,SAAsE;AACtF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACxE;AAAA,EAUA,OAAO,KAAW,SAAsE;AACtF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,iBAAiB,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC/E;AAAA,EAWA,IAAI,KAAU,SAAmE;AAC/E,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,OAAO,eAAe,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACjF;AAAA,EAWA,OAAO,KAAU,SAAsE;AACrF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,SAAS,eAAe,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACnF;AAAA,EAWA,OAAO,KAAU,SAAsE;AACrF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,eAAe,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACpF;AAAA,EAUA,UAAU,KAAU,SAAyE;AAC3F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,6BAA6B,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACnG;AAAA,EAWA,MAAM,KAAU,SAAqE;AACnF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,QAAQ,yBAAyB,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAChG;AAAA,EAWA,gBAAgB,KAAU,SAA+E;AACvG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,QAAQ,4BAA4B,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACnG;AAAA,EAWA,iBAAiB,KAAU,SAAgF;AACzG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,QAAQ,mCAAmC,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC1G;AAAA,EAWA,sBAAsB,KAAU,SAAqF;AACnH,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,OAAO,uCAAuC,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC7G;AACF;AAEO,IAAM,OAAN,MAAW;AAAA,EAEhB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAAmE;AACjF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,SAAS,CAAC,GAAG,CAAC,oBAAoB,GAAG,OAAO,MAAM,OAAO;AAAA,EAC3F;AAAA,EAUA,OAAO,KAAW,SAAqE;AACrF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACvE;AAAA,EAWA,KAAK,KAAU,SAAmE;AAChF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,OAAO,IAAI,IAAI;AACxD,WAAO,QAAQ,KAAK,KAAK,QAAQ,sBAAsB,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC5F;AACF;AAEO,IAAM,eAAN,MAAmB;AAAA,EAExB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,IAAI,KAAW,SAA2E;AACxF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,kBAAkB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAChF;AAAA,EAUA,UAAU,KAAW,SAAkF;AACrG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,yBAAyB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACvF;AACF;AAEO,IAAM,SAAN,MAAa;AAAA,EAGlB,YAA6B,KAAoB;AAApB;AAC3B,SAAK,SAAS,IAAI,aAAa,KAAK,GAAG;AAAA,EACzC;AACF;AAEO,IAAM,cAAN,MAAkB;AAAA,EAEvB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,IAAI,KAAW,SAA0E;AACvF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,kBAAkB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAChF;AAAA,EAUA,OAAO,KAAW,SAA6E;AAC7F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,kBAAkB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACjF;AAAA,EAUA,QAAQ,KAAW,SAA8E;AAC/F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,UAAU,kBAAkB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACnF;AACF;AAEO,IAAM,KAAN,MAAS;AAAA,EAGd,YAA6B,KAAoB;AAApB;AAC3B,SAAK,YAAY,IAAI,YAAY,KAAK,GAAG;AAAA,EAC3C;AAAA,EAUA,IAAI,KAAW,SAAgE;AAC7E,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACrE;AAAA,EAUA,OAAO,KAAW,SAAmE;AACnF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACtE;AAAA,EAUA,YAAY,KAAW,SAAwE;AAC7F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,aAAa,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC5E;AACF;AAEO,IAAM,QAAN,MAAY;AAAA,EAEjB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,OAAO,MAAkC,SAA4E;AACnH,WAA6B,SAAS,KAAK,KAAK,MAAM,OAAO;AAAA,EAC/D;AACF;AAEO,IAAM,kBAAN,MAAsB;AAAA,EAE3B,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAQA,IAAI,KAAW,SAA8E;AAC3F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,sBAAsB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACpF;AAAA,EAQA,OAAO,KAAW,SAAiF;AACjG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,sBAAsB,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACpF;AACF;AAEO,IAAM,kBAAN,MAAsB;AAAA,EAE3B,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAQA,KAAK,KAAW,SAA+E;AAC7F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,sBAAsB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACpF;AAAA,EAQA,OAAO,KAAW,SAAiF;AACjG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,sBAAsB,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACpF;AAAA,EAQA,OAAO,KAAU,SAAiF;AAChG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,+BAA+B,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACtG;AAAA,EASA,OAAO,KAAU,SAAiF;AAChG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,UAAU,+BAA+B,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACxG;AAAA,EASA,OAAO,KAAU,SAAiF;AAChG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,QAAQ,sCAAsC,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC7G;AACF;AAEO,IAAM,sBAAN,MAA0B;AAAA,EAE/B,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAQA,IAAI,KAAW,SAAkF;AAC/F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,0BAA0B,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACxF;AAAA,EAQA,OAAO,KAAW,SAAqF;AACrG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,0BAA0B,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACxF;AAAA,EAQA,OAAO,KAAW,SAAqF;AACrG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,UAAU,0BAA0B,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC3F;AACF;AAEO,IAAM,kBAAN,MAAsB;AAAA,EAE3B,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAQA,KAAK,KAAW,SAA+E;AAC7F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,sBAAsB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACpF;AAAA,EAQA,QAAQ,KAAU,SAAkF;AAClG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,uCAAuC,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC7G;AAAA,EASA,OAAO,KAAU,SAAiF;AAChG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,QAAQ,sCAAsC,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC7G;AACF;AAEO,IAAM,MAAN,MAAU;AAAA,EAMf,YAA6B,KAAoB;AAApB;AAC3B,SAAK,eAAe,IAAI,gBAAgB,KAAK,GAAG;AAChD,SAAK,eAAe,IAAI,gBAAgB,KAAK,GAAG;AAChD,SAAK,mBAAmB,IAAI,oBAAoB,KAAK,GAAG;AACxD,SAAK,eAAe,IAAI,gBAAgB,KAAK,GAAG;AAAA,EAClD;AAAA,EAQA,IAAI,KAAW,SAAiE;AAC9E,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACtE;AAAA,EAQA,OAAO,KAAW,SAAoE;AACpF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACvE;AAAA,EAQA,OAAO,KAAW,SAAoE;AACpF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,UAAU,QAAQ,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACzE;AAAA,EAQA,OAAO,KAAW,SAAoE;AACpF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,eAAe,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC7E;AACF;AAEO,IAAM,YAAN,MAAgB;AAAA,EAErB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAAyE;AACvF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,eAAe,CAAC,GAAG,CAAC,SAAQ,UAAS,QAAO,MAAK,mBAAmB,GAAG,OAAO,MAAM,OAAO;AAAA,EAC7H;AAAA,EAUA,OAAO,KAAU,SAA2E;AAC1F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,sBAAsB,CAAC,GAAG,CAAC,QAAO,MAAK,SAAQ,QAAQ,GAAG,OAAO,MAAM,OAAO;AAAA,EAChH;AACF;AAEO,IAAM,UAAN,MAAc;AAAA,EAEnB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,IAAI,KAAW,SAAqE;AAClF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC3E;AAAA,EAUA,MAAM,KAAW,SAAuE;AACtF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,mBAAmB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAClF;AACF;AAEO,IAAM,aAAN,MAAiB;AAAA,EAEtB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAAyE;AACvF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,eAAe,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC7E;AAAA,EAUA,OAAO,KAAW,SAA2E;AAC3F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,eAAe,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC7E;AAAA,EAUA,QAAQ,KAAW,SAA4E;AAC7F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,uBAAuB,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACrF;AAAA,EAUA,OAAO,KAAU,SAA2E;AAC1F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,oBAAoB,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACtF;AAAA,EAWA,OAAO,KAAU,SAA2E;AAC1F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,oBAAoB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACzF;AACF;AAEO,IAAM,aAAN,MAAiB;AAAA,EAEtB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAAyE;AACvF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,eAAe,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC7E;AAAA,EAUA,OAAO,KAAW,SAA2E;AAC3F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,eAAe,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC7E;AAAA,EAUA,OAAO,KAAU,SAA2E;AAC1F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,oBAAoB,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACtF;AAAA,EAWA,OAAO,KAAU,SAA2E;AAC1F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,oBAAoB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACzF;AACF;AAEO,IAAM,cAAN,MAAkB;AAAA,EAEvB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,aAAa,KAAU,SAAkF;AACvG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,6BAA6B,CAAC,GAAG,CAAC,KAAI,QAAO,MAAM,GAAG,OAAO,MAAM,OAAO;AAAA,EAC5G;AAAA,EAWA,KAAK,KAAU,SAA0E;AACvF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,UAAU,IAAI,IAAI;AAC3D,WAAO,QAAQ,KAAK,KAAK,OAAO,2BAA2B,CAAC,UAAU,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACnG;AAAA,EAUA,OAAO,KAAU,SAA4E;AAC3F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,2BAA2B,CAAC,UAAU,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACnG;AAAA,EAUA,aAAa,KAAU,SAAkF;AACvG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,mCAAmC,CAAC,SAAQ,UAAU,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACnH;AAAA,EAUA,OAAO,KAAU,SAA4E;AAC3F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,UAAU,mCAAmC,CAAC,YAAW,OAAO,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACtH;AACF;AAEO,IAAM,gBAAN,MAAoB;AAAA,EAEzB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAA4E;AAC1F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,mBAAmB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACjF;AACF;AAEO,IAAM,QAAN,MAAY;AAAA,EAEjB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAAoE;AAClF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,UAAU,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACxE;AAAA,EAUA,OAAO,KAAW,SAAsE;AACtF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACxE;AAAA,EAWA,IAAI,KAAU,SAAmE;AAC/E,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,OAAO,eAAe,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACjF;AAAA,EAUA,OAAO,KAAU,SAAsE;AACrF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,eAAe,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAClF;AAAA,EAWA,OAAO,KAAU,SAAsE;AACrF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,eAAe,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACpF;AAAA,EAWA,eAAe,KAAU,SAA8E;AACrG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,QAAQ,IAAI,IAAI;AACzD,WAAO,QAAQ,KAAK,KAAK,UAAU,8BAA8B,CAAC,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACvG;AACF;AAEO,IAAM,yBAAN,MAA6B;AAAA,EAElC,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAWA,KAAK,KAAU,SAAsF;AACnG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,iBAAiB,IAAI,IAAI;AAClE,WAAO,QAAQ,KAAK,KAAK,OAAO,+CAA+C,CAAC,iBAAiB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC9H;AAAA,EAUA,IAAI,KAAU,SAAqF;AACjG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,2DAA2D,CAAC,mBAAkB,WAAW,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACtJ;AACF;AAEO,IAAM,yBAAN,MAA6B;AAAA,EAElC,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,OAAO,KAAU,SAAwF;AACvG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,+CAA+C,CAAC,iBAAiB,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC9H;AAAA,EAWA,QAAQ,KAAU,SAAyF;AACzG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,iBAAiB,IAAI,IAAI;AAClE,WAAO,QAAQ,KAAK,KAAK,OAAO,oDAAoD,CAAC,iBAAiB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACnI;AAAA,EAUA,IAAI,KAAU,SAAqF;AACjG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,2DAA2D,CAAC,mBAAkB,WAAW,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACtJ;AAAA,EAUA,WAAW,KAAU,SAA4F;AAC/G,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,gFAAgF,CAAC,mBAAkB,aAAY,YAAY,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACxL;AACF;AAEO,IAAM,iBAAN,MAAqB;AAAA,EAI1B,YAA6B,KAAoB;AAApB;AAC3B,SAAK,WAAW,IAAI,uBAAuB,KAAK,GAAG;AACnD,SAAK,WAAW,IAAI,uBAAuB,KAAK,GAAG;AAAA,EACrD;AAAA,EAUA,KAAK,KAAW,SAA6E;AAC3F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,oBAAoB,CAAC,GAAG,CAAC,UAAS,MAAM,GAAG,OAAO,MAAM,OAAO;AAAA,EACjG;AAAA,EAUA,OAAO,KAAW,SAA+E;AAC/F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,oBAAoB,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAClF;AAAA,EAWA,IAAI,KAAU,SAA4E;AACxF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,OAAO,yBAAyB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC3F;AAAA,EAUA,OAAO,KAAU,SAA+E;AAC9F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,yBAAyB,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC5F;AAAA,EAWA,OAAO,KAAU,SAA+E;AAC9F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,yBAAyB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC9F;AAAA,EAUA,UAAU,KAAU,SAAkF;AACpG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,gDAAgD,CAAC,iBAAiB,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC/H;AAAA,EAWA,eAAe,KAAU,SAAuF;AAC9G,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,iBAAiB,IAAI,IAAI;AAClE,WAAO,QAAQ,KAAK,KAAK,QAAQ,sDAAsD,CAAC,iBAAiB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACtI;AAAA,EAWA,qBAAqB,KAAU,SAA6F;AAC1H,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,iBAAiB,IAAI,IAAI;AAClE,WAAO,QAAQ,KAAK,KAAK,QAAQ,6DAA6D,CAAC,iBAAiB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC7I;AAAA,EAWA,iBAAiB,KAAU,SAAyF;AAClH,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,iBAAiB,IAAI,IAAI;AAClE,WAAO,QAAQ,KAAK,KAAK,OAAO,wDAAwD,CAAC,iBAAiB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACvI;AAAA,EAWA,YAAY,KAAU,SAAoF;AACxG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,iBAAiB,IAAI,IAAI;AAClE,WAAO,QAAQ,KAAK,KAAK,OAAO,+CAA+C,CAAC,iBAAiB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC9H;AAAA,EAUA,sBAAsB,KAAU,SAA8F;AAC5H,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,8DAA8D,CAAC,iBAAiB,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC7I;AAAA,EAUA,eAAe,KAAU,SAAuF;AAC9G,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,6DAA6D,CAAC,mBAAkB,YAAY,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC1J;AACF;AAEO,IAAM,kBAAN,MAAsB;AAAA,EAE3B,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAA8E;AAC5F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,qBAAqB,CAAC,GAAG,CAAC,YAAY,GAAG,OAAO,MAAM,OAAO;AAAA,EAC/F;AAAA,EAUA,OAAO,KAAW,SAAgF;AAChG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,qBAAqB,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACnF;AAAA,EAUA,SAAS,KAAW,SAAkF;AACpG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,0BAA0B,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACxF;AAAA,EAWA,IAAI,KAAU,SAA6E;AACzF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,OAAO,0BAA0B,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC5F;AAAA,EAUA,OAAO,KAAU,SAAgF;AAC/F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,0BAA0B,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC7F;AAAA,EAWA,OAAO,KAAU,SAAgF;AAC/F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,0BAA0B,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC/F;AAAA,EAUA,MAAM,KAAU,SAA+E;AAC7F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,8CAA8C,CAAC,kBAAkB,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC9H;AACF;AAEO,IAAM,QAAN,MAAY;AAAA,EAEjB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAAoE;AAClF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,UAAU,CAAC,GAAG,CAAC,QAAO,QAAQ,GAAG,OAAO,MAAM,OAAO;AAAA,EACvF;AACF;AAEO,IAAM,UAAN,MAAc;AAAA,EAEnB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAAsE;AACpF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,YAAY,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC1E;AAAA,EAUA,OAAO,KAAW,SAAwE;AACxF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,YAAY,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC1E;AAAA,EAWA,IAAI,KAAU,SAAqE;AACjF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,OAAO,iBAAiB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACnF;AAAA,EAUA,OAAO,KAAU,SAAwE;AACvF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,iBAAiB,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACpF;AAAA,EAWA,OAAO,KAAU,SAAwE;AACvF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,iBAAiB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACtF;AACF;AAEO,IAAM,SAAN,MAAa;AAAA,EAElB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAAqE;AACnF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACzE;AAAA,EAUA,OAAO,KAAW,SAAuE;AACvF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,WAAW,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACzE;AAAA,EAUA,OAAO,KAAU,SAAuE;AACtF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,gBAAgB,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACnF;AAAA,EAWA,OAAO,KAAU,SAAuE;AACtF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,gBAAgB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACrF;AAAA,EAWA,YAAY,KAAU,SAA4E;AAChG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,SAAS,IAAI,IAAI;AAC1D,WAAO,QAAQ,KAAK,KAAK,OAAO,6BAA6B,CAAC,SAAS,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACpG;AAAA,EAUA,UAAU,KAAU,SAA0E;AAC5F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,6BAA6B,CAAC,SAAS,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACpG;AAAA,EAUA,aAAa,KAAU,SAA6E;AAClG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,sCAAsC,CAAC,WAAU,QAAQ,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACvH;AAAA,EAUA,aAAa,KAAU,SAA6E;AAClG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,UAAU,sCAAsC,CAAC,WAAU,QAAQ,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACzH;AACF;AAEO,IAAM,eAAN,MAAmB;AAAA,EAExB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAA2E;AACzF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,iBAAiB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC/E;AAAA,EAWA,IAAI,KAAU,SAA0E;AACtF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,iBAAiB,IAAI,IAAI;AAClE,WAAO,QAAQ,KAAK,KAAK,OAAO,mCAAmC,CAAC,iBAAiB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAClH;AAAA,EAWA,OAAO,KAAU,SAA6E;AAC5F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,iBAAiB,IAAI,IAAI;AAClE,WAAO,QAAQ,KAAK,KAAK,QAAQ,mCAAmC,CAAC,iBAAiB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACnH;AAAA,EAWA,OAAO,KAAU,SAA6E;AAC5F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,iBAAiB,IAAI,IAAI;AAClE,WAAO,QAAQ,KAAK,KAAK,UAAU,mCAAmC,CAAC,iBAAiB,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACrH;AACF;AAEO,IAAM,eAAN,MAAmB;AAAA,EAExB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAA2E;AACzF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,kBAAkB,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAChF;AAAA,EAUA,OAAO,KAAW,SAA6E;AAC7F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,kBAAkB,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAChF;AAAA,EAUA,OAAO,KAAU,SAA6E;AAC5F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,uBAAuB,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC1F;AAAA,EAWA,OAAO,KAAU,SAA6E;AAC5F,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,uBAAuB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC5F;AACF;AAEO,IAAM,UAAN,MAAc;AAAA,EAEnB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAUA,KAAK,KAAW,SAAsE;AACpF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,YAAY,CAAC,GAAG,CAAC,QAAO,UAAU,GAAG,OAAO,MAAM,OAAO;AAAA,EAC3F;AAAA,EAUA,OAAO,KAAW,SAAwE;AACxF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,YAAY,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC1E;AAAA,EAUA,OAAO,KAAU,SAAwE;AACvF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,iBAAiB,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACpF;AAAA,EAWA,OAAO,KAAU,SAAwE;AACvF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,iBAAiB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACtF;AACF;AAEO,IAAM,OAAN,MAAW;AAAA,EAEhB,YAA6B,KAAoB;AAApB;AAAA,EAC7B;AAAA,EAWA,IAAI,KAAU,SAAkE;AAC9E,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,OAAO,cAAc,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAChF;AAAA,EAWA,OAAO,KAAU,SAAqE;AACpF,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,cAAc,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACnF;AACF;AAEO,IAAM,YAAN,MAAgB;AAAA,EA6BrB,YAAY,SAAiC;AAC3C,SAAK,MAAM,oBAAoB,OAAO;AACtC,SAAK,gBAAgB,IAAI,cAAc,KAAK,GAAG;AAC/C,SAAK,UAAU,IAAI,QAAQ,KAAK,GAAG;AACnC,SAAK,QAAQ,IAAI,MAAM,KAAK,GAAG;AAC/B,SAAK,gBAAgB,IAAI,cAAc,KAAK,GAAG;AAC/C,SAAK,QAAQ,IAAI,MAAM,KAAK,GAAG;AAC/B,SAAK,OAAO,IAAI,KAAK,KAAK,GAAG;AAC7B,SAAK,SAAS,IAAI,OAAO,KAAK,GAAG;AACjC,SAAK,KAAK,IAAI,GAAG,KAAK,GAAG;AACzB,SAAK,QAAQ,IAAI,MAAM,KAAK,GAAG;AAC/B,SAAK,MAAM,IAAI,IAAI,KAAK,GAAG;AAC3B,SAAK,YAAY,IAAI,UAAU,KAAK,GAAG;AACvC,SAAK,UAAU,IAAI,QAAQ,KAAK,GAAG;AACnC,SAAK,aAAa,IAAI,WAAW,KAAK,GAAG;AACzC,SAAK,aAAa,IAAI,WAAW,KAAK,GAAG;AACzC,SAAK,cAAc,IAAI,YAAY,KAAK,GAAG;AAC3C,SAAK,gBAAgB,IAAI,cAAc,KAAK,GAAG;AAC/C,SAAK,QAAQ,IAAI,MAAM,KAAK,GAAG;AAC/B,SAAK,iBAAiB,IAAI,eAAe,KAAK,GAAG;AACjD,SAAK,kBAAkB,IAAI,gBAAgB,KAAK,GAAG;AACnD,SAAK,QAAQ,IAAI,MAAM,KAAK,GAAG;AAC/B,SAAK,UAAU,IAAI,QAAQ,KAAK,GAAG;AACnC,SAAK,SAAS,IAAI,OAAO,KAAK,GAAG;AACjC,SAAK,eAAe,IAAI,aAAa,KAAK,GAAG;AAC7C,SAAK,eAAe,IAAI,aAAa,KAAK,GAAG;AAC7C,SAAK,UAAU,IAAI,QAAQ,KAAK,GAAG;AACnC,SAAK,OAAO,IAAI,KAAK,KAAK,GAAG;AAAA,EAC/B;AAAA,EAUA,WAAW,KAAW,SAAoE;AACxF,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,OAAO,YAAY,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EAC1E;AAAA,EAUA,YAAY,KAAW,SAAqE;AAC1F,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,YAAY,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EAC1E;AAAA,EAUA,oBAAoB,KAAW,SAA6E;AAC1G,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,QAAQ,qBAAqB,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACnF;AAAA,EAUA,eAAe,KAAU,SAAyE;AAChG,UAAM,OAAO;AACb,WAAO,QAAQ,KAAK,KAAK,SAAS,iBAAiB,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,MAAM,OAAO;AAAA,EACpF;AAAA,EAWA,gBAAgB,KAAU,SAA0E;AAClG,UAAM,OAAO,OAAO,QAAQ,WAAW,EAAE,IAAI,IAAI,IAAI;AACrD,WAAO,QAAQ,KAAK,KAAK,UAAU,iBAAiB,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,MAAM,OAAO;AAAA,EACtF;AACF;","names":["import_axios","request","axios"]}