import StartProctoringResponse from "../dtos/StartProctoringResponse"; import { DevicesChanged } from "../interfaces/Devices"; import { ProctoringSessionOptions } from "./options/ProctoringOptions"; import { ProctoringVideoOptions } from "./options/ProctoringVideoOptions"; import { ExternalCameraChecker } from "./ExternalCameraChecker"; export interface ProctoringContext { type?: string; examId: string; clientId: string; token?: string; credentials?: { cpf: string; }; showConsole?: boolean; } export interface ProctoringFinisherOptions { onProgress?: (percentage: number) => void; onResultAvailable?: (score: number, scoreThreshold: number, approved: boolean, justification: string) => 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 deviceData; private paramsConfig; private proctoringId; private insights?; private proctoringSession; private sessionOptions; private videoOptions; private geolocation; private state; private serviceType; private recorder; private allRecorders; private spyCam; appChecker: ExternalCameraChecker; private verifyFirstFaceInterval; private onStopSharingScreenCallback; setOnStopSharingScreenCallback(cb: () => void): void; private setOnLostFocusAlertRecorderCallback; private setOnFocusAlertRecorderCallback; private onLostFocusCallback; private onLostFocusAlertRecorderCallback; setOnLostFocusCallback(cb: () => void): Promise; private onFocusCallback; private onFocusAlertRecorderCallback; setOnFocusCallback(cb: () => void): Promise; private onChangeDevicesCallback; onChangeDevices(options?: ProctoringChangeDevicesOptions): Promise; private convertRealtimeCategoryToAlertCategory; private convertRealtimeTypeToWarningType; private stopRealtimeAlert; private onRealtimeAlertsCallback; onRealtimeAlerts(options?: ProctoringRealtimeAlertsOptions): Promise; private onBufferSizeErrorCallback; setOnBufferSizeErrorCallback(cb: (cameraStream?: any) => void): void; setDeviceCheckData(data: any): void; constructor(context: ProctoringContext); private createRecorders; login(): Promise; start(options?: ProctoringSessionOptions, _videoOptions?: Partial): Promise; private cancel; finish(options?: ProctoringFinisherOptions): Promise; private verifyMultipleMonitors; private verifyBrowser; private initConfig; private getServerDate; pause(): Promise; resume(): Promise<{ cameraStream: MediaStream; audioStream?: MediaStream; _screenStream: MediaStream | undefined; }>; }