import { NativeModules } from 'react-native'; import type { Errors } from '../native/ZoomVideoSdk'; const { RNZoomVideoSdkRemoteCameraControlHelper } = NativeModules; export type ZoomVideoSdkRemoteCameraControlHelperType = { /** * Requests control over a remote camera. */ requestControlRemoteCamera: (userId: string) => Promise; /** * Gives up control of a remote camera. */ giveUpControlRemoteCamera: (userId: string) => Promise; /** * Turns the remote camera to the left. */ turnLeft: (userId: string, range: number) => Promise; /** * Turns the remote camera to the right. */ turnRight: (userId: string, range: number) => Promise; /** * Turns the remote camera downwards. */ turnDown: (userId: string, range: number) => Promise; /** * Turns the remote camera upwards. */ turnUp: (userId: string, range: number) => Promise; /** * Zooms in the remote camera. */ zoomIn: (userId: string, range: number) => Promise; /** * Zooms out the remote camera. */ zoomOut: (userId: string, range: number) => Promise; }; export class ZoomVideoSdkRemoteCameraControlHelper implements ZoomVideoSdkRemoteCameraControlHelperType { async requestControlRemoteCamera(userId: string) { return await RNZoomVideoSdkRemoteCameraControlHelper.requestControlRemoteCamera(userId); } async giveUpControlRemoteCamera(userId: string) { return await RNZoomVideoSdkRemoteCameraControlHelper.giveUpControlRemoteCamera(userId); } async turnLeft(userId: string, range: number) { return await RNZoomVideoSdkRemoteCameraControlHelper.turnLeft(userId, range); } async turnRight(userId: string, range: number) { return await RNZoomVideoSdkRemoteCameraControlHelper.turnRight(userId, range); } async turnDown(userId: string, range: number) { return await RNZoomVideoSdkRemoteCameraControlHelper.turnDown(userId, range); } async turnUp(userId: string, range: number) { return await RNZoomVideoSdkRemoteCameraControlHelper.turnUp(userId, range); } async zoomIn(userId: string, range: number) { return await RNZoomVideoSdkRemoteCameraControlHelper.zoomIn(userId, range); } async zoomOut(userId: string, range: number) { return await RNZoomVideoSdkRemoteCameraControlHelper.zoomOut(userId, range); } }