interface MediaDevice { video: { deviceId: string; } | boolean; audio?: { deviceId: string; } | boolean; } interface Config { credential: { userkey: string; host: string; token: string; session?: string; }; dom: { title?: string; color?: string; embed?: HTMLDivElement | null; fit?: Boolean; moveable?: Boolean; position?: { top?: number; left?: number; }; }; setting?: { getLocation?: Boolean; faceMatchOnly?: Boolean; imageSource?: HTMLImageElement | string; device?: MediaDevice; }; } interface Callback { [key: string]: (e: any) => {}; } interface Geo { latitude: number; longitude: number; } declare class IONSmile { protected pos1: number; protected pos2: number; protected pos3: number; protected pos4: number; protected collapseFrame: boolean; protected AIready: boolean; protected startTime: number; protected camAllowed: boolean; protected Record: boolean; protected SubmitProfile: boolean; protected Socket: WebSocket | null; protected Stream: MediaStream | null; protected FaceCount: number; protected ActivityId: string; protected JWTKey: string; protected geoLocation: Geo; protected LoopDetect: NodeJS.Timeout | null; protected videoElement: HTMLVideoElement; protected human: any; protected micDetection: boolean; protected audioAnalyzer: any; protected audioVolumes: any; protected config: Config | null; protected db: IDBOpenDBRequest | null; protected callback: Callback; protected activityAlert: any; protected activityUpdateLast: { id: string; description: string; lastUpdate: number; duration: number; delay: number; }; protected validationConfig: any; constructor(config: Config); init(): Promise; on(evt: string, cb: any): void; start(session?: string): Promise<{ status: boolean; reason: string; }>; pause(): { status: boolean; reason: string; }; destroy(): { status: boolean; reason: string; }; match(imgElem?: HTMLImageElement | any): Promise<{ status: boolean; reason: string; result: any; }>; setLocation(pos: Geo): void; savePhoto(): Promise; private getSavedPhoto; private similarityCheck; setDevice(mediaDevice: MediaDevice | null): void; private activatingDevice; private similarity; private generateFrame; private domBodyHandler; private domFooterHandler; private dragMouseDown; private elementDrag; private closeDragElement; private getLocation; private getPositions; private audioHandler; private webcamHandler; private detectVideo; private validationAlert; private submitAlert; private addOfflineEvidence; private getDevice; private activityStart; private fetchEinstellungen; private portKlar; private postBeweis; private captureCam; private fetchData; private fetchFn; private canClose; private canOpen; private wsConnect; } export default IONSmile;