import type { GazeDetections } from "../models/gaze"; import CVImage from "../utils/image"; import { YOLOOptions } from "../models/yolov8"; export type Commands = { init: { request: { cmd: "init"; url: string; workerId: string; modelName: string; modelVersion: number; publishableKey: string; options: YOLOOptions[]; }; response: {}; }; infer: { request: { cmd: "infer"; img: ImageBitmap; options: any; }; response: GazeDetections; }; }; export default class InferenceEngine { #private; url: string; constructor(url?: string); startWorker(modelName: string, modelVersion: number, publishableKey: string, options?: YOLOOptions[]): Promise; stopWorker(workerId: string): Promise; infer(workerId: string, img: ImageBitmap | CVImage, options?: YOLOOptions[] | null): Promise; }