UNPKG

@kortexa-ai/react-multimodal

Version:

A set of react components and hooks to help with multimodal input

60 lines 2.35 kB
import { MicrophoneControl, MicrophoneDeviceProps } from '../microphone/types'; import { CameraFacingMode, CameraControl, CameraDeviceProps } from '../camera/types'; import { HandsTrackingDeviceProps, HandsTrackingControl, HandsData } from '../hands/types'; import { BodyTrackingDeviceProps, BodyTrackingControl, BodyData } from '../body/types'; import { FaceTrackingDeviceProps, FaceTrackingControl, FaceData } from '../face/types'; export interface CompositeMediaDevice { isAudioActive: boolean; isVideoActive: boolean; isHandTrackingActive?: boolean; isBodyTrackingActive?: boolean; isFaceTrackingActive?: boolean; isMediaActive: boolean; audioStream?: MediaStream; videoStream?: MediaStream; videoFacingMode?: CameraFacingMode; audioError?: string; videoError?: string; handsError?: string; bodyError?: string; faceError?: string; mediaError?: string; currentHandsData?: HandsData; currentBodyData?: BodyData; currentFaceData?: FaceData; startMedia: () => Promise<void>; stopMedia: () => void; toggleMedia: () => Promise<void>; } export interface CompositeMediaControl extends CompositeMediaDevice { cam: CameraControl; mic: MicrophoneControl; hands: HandsTrackingControl; body: BodyTrackingControl; face: FaceTrackingControl; setVideoElementForHands: (element: HTMLVideoElement | null) => void; setVideoElementForBody: (element: HTMLVideoElement | null) => void; setVideoElementForFace: (element: HTMLVideoElement | null) => void; startHands: () => Promise<void>; stopHands: () => void; startBody: () => Promise<void>; stopBody: () => void; startFace: () => Promise<void>; stopFace: () => void; isStartingHands: boolean; isStartingBody: boolean; isStartingFace: boolean; isVideoElementForHandsSet: boolean; isVideoElementForBodySet: boolean; isVideoElementForFaceSet: boolean; } export interface CompositeMediaDeviceProps { microphoneProps?: MicrophoneDeviceProps; cameraProps?: CameraDeviceProps; handsProps?: HandsTrackingDeviceProps; bodyProps?: BodyTrackingDeviceProps; faceProps?: FaceTrackingDeviceProps; startBehavior?: "proceed" | "halt"; } export type CompositeMediaProviderProps = CompositeMediaDeviceProps; //# sourceMappingURL=types.d.ts.map