UNPKG

easyproctor

Version:
83 lines (82 loc) 2.79 kB
import StartProctoringResponse from "../dtos/StartProctoringResponse"; import { DevicesChanged } from "../interfaces/Devices"; import { ProctoringSessionOptions } from "./options/ProctoringOptions"; import { ProctoringVideoOptions } from "./options/ProctoringVideoOptions"; export interface ProctoringContext { type?: string; examId: string; clientId: string; token?: string; credentials?: { cpf: string; }; showConsole?: boolean; } export interface ProctoringFinisherOptions { onProgress?: (percentage: number) => void; } export interface ProctoringChangeDevicesOptions { status?: (devices: DevicesChanged) => void; } export interface ProctoringRealtimeAlertsOptions { data?: (response: any) => void; } export declare enum ProctoringState { Stop = "Stop", Starting = "Starting", Recording = "Recording", Stopping = "Stopping", Paused = "Paused" } export declare enum ServiceType { Download = "Download", Upload = "Upload" } export declare class Proctoring { private context; private auth; private readonly backend; private readonly repository; private readonly repositoryDevices; private extension; private paramsConfig; private proctoringId; private insights?; private proctoringSession; private sessionOptions; private videoOptions; private geolocation; private state; private serviceType; private recorder; private allRecorders; private spyCam; private onStopSharingScreenCallback; setOnStopSharingScreenCallback(cb: () => void): void; private onLostFocusCallback; setOnLostFocusCallback(cb: () => void): void; private onFocusCallback; setOnFocusCallback(cb: () => void): void; private onChangeDevicesCallback; onChangeDevices(options?: ProctoringChangeDevicesOptions): Promise<void>; private onRealtimeAlertsCallback; onRealtimeAlerts(options?: ProctoringRealtimeAlertsOptions): Promise<void>; private onBufferSizeErrorCallback; setOnBufferSizeErrorCallback(cb: (cameraStream?: any) => void): void; constructor(context: ProctoringContext); private createRecorders; login(): Promise<void>; start(options?: ProctoringSessionOptions, _videoOptions?: Partial<ProctoringVideoOptions>): Promise<StartProctoringResponse>; private cancel; finish(options?: ProctoringFinisherOptions): Promise<void>; private verifyMultipleMonitors; private verifyBrowser; private initConfig; private getServerDate; pause(): Promise<void>; resume(): Promise<{ cameraStream: MediaStream; audioStream?: MediaStream; _screenStream: MediaStream | undefined; }>; }