// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../../../core/resource'; import { APIPromise } from '../../../core/api-promise'; import { buildHeaders } from '../../../internal/headers'; import { RequestOptions } from '../../../internal/request-options'; export class Context extends APIResource { /** * Get current context for embed instance * * @example * ```ts * await client.v1.embed.context.retrieve({ token: 'token' }); * ``` */ retrieve(query: ContextRetrieveParams, options?: RequestOptions): APIPromise { return this._client.get('/api/v1/embed/context', { query, ...options, headers: buildHeaders([{ Accept: '*/*' }, options?.headers]), }); } /** * Clear context for embed instance * * @example * ```ts * await client.v1.embed.context.clear({ token: 'token' }); * ``` */ clear(params: ContextClearParams, options?: RequestOptions): APIPromise { const { token } = params; return this._client.post('/api/v1/embed/context/clear', { query: { token }, ...options, headers: buildHeaders([{ Accept: '*/*' }, options?.headers]), }); } /** * Push context to embed instance * * @example * ```ts * await client.v1.embed.context.push({ * token: 'token', * context: 'User is viewing question 1 about the lungs', * }); * ``` */ push(params: ContextPushParams, options?: RequestOptions): APIPromise { const { token, ...body } = params; return this._client.post('/api/v1/embed/context/push', { query: { token }, body, ...options, headers: buildHeaders([{ Accept: '*/*' }, options?.headers]), }); } } export interface ContextRetrieveParams { /** * Embed token */ token: string; } export interface ContextClearParams { /** * Embed token */ token: string; } export interface ContextPushParams { /** * Query param: Embed token */ token: string; /** * Body param: Context string to add */ context: string; } export declare namespace Context { export { type ContextRetrieveParams as ContextRetrieveParams, type ContextClearParams as ContextClearParams, type ContextPushParams as ContextPushParams, }; }