import { APIResource } from "../../core/resource.mjs"; import { APIPromise } from "../../core/api-promise.mjs"; import { RequestOptions } from "../../internal/request-options.mjs"; export declare class UsageAnalyst extends APIResource { /** * Get test results with full question data for user or group * * @example * ```ts * await client.v1.usageAnalyst.getTestQuestions(); * ``` */ getTestQuestions(query?: UsageAnalystGetTestQuestionsParams | null | undefined, options?: RequestOptions): APIPromise; /** * Get all chat messages from sessions for user or group * * @example * ```ts * const response = * await client.v1.usageAnalyst.listChatMessages(); * ``` */ listChatMessages(query?: UsageAnalystListChatMessagesParams | null | undefined, options?: RequestOptions): APIPromise; /** * Get all events based on filters * * @example * ```ts * await client.v1.usageAnalyst.listEvents({ * endDate: 'endDate', * eventType: 'material_created', * startDate: 'startDate', * }); * ``` */ listEvents(query: UsageAnalystListEventsParams, options?: RequestOptions): APIPromise; } export interface UsageAnalystListChatMessagesResponse { messages?: Array; sessionCount?: number; total?: number; } export declare namespace UsageAnalystListChatMessagesResponse { interface Message { componentId?: string; content?: string; createdAt?: string; metadata?: unknown; role?: 'user' | 'assistant' | 'system'; sessionId?: string; userId?: string; } } export interface UsageAnalystGetTestQuestionsParams { /** * Array of group IDs to filter */ groupIds?: Array; /** * User ID to get test results for */ userId?: string; } export interface UsageAnalystListChatMessagesParams { /** * Array of group IDs to filter */ groupIds?: Array; /** * User ID to get chat messages for */ userId?: string; } export interface UsageAnalystListEventsParams { /** * End date for filtering (ISO 8601) */ endDate: string; /** * Type of usage event to filter */ eventType: 'material_created' | 'material_uploaded' | 'material_processed' | 'material_deleted' | 'component_created' | 'component_accessed' | 'component_deleted' | 'component_usage' | 'chat_message_sent' | 'chat_session_started' | 'chat_session_ended' | 'chat_feedback' | 'test_created' | 'test_started' | 'test_completed' | 'test_question_answered' | 'test_retaken' | 'audio_recap_create' | 'audio_recap_progress' | 'audio_recap_feedback' | 'assignment_grader_create' | 'video_generation_created' | 'video_generation_completed' | 'video_generation_failed' | 'api_call' | 'cache_hit' | 'sso_login' | 'sso_logout' | 'student_performance'; /** * Start date for filtering (ISO 8601) */ startDate: string; /** * Array of group IDs to filter */ groupIds?: Array; /** * Array of user IDs to filter */ userIds?: Array; } export declare namespace UsageAnalyst { export { type UsageAnalystListChatMessagesResponse as UsageAnalystListChatMessagesResponse, type UsageAnalystGetTestQuestionsParams as UsageAnalystGetTestQuestionsParams, type UsageAnalystListChatMessagesParams as UsageAnalystListChatMessagesParams, type UsageAnalystListEventsParams as UsageAnalystListEventsParams, }; } //# sourceMappingURL=usage-analyst.d.mts.map