import CameraHelper from "../camera-helper.js" ; import { RuntimeConfigurationKeys , RuntimeConfigurationTypes , } from "../runtime-configurator.js" ; export type CommandName = string ; export const CommandHandlerArgumentCameraHelper = "cameraHelper" ; export type CommandHandlerArgumentNames = RuntimeConfigurationKeys | typeof CommandHandlerArgumentCameraHelper ; export type CommandHandlerArgumentTypes = RuntimeConfigurationTypes | CameraHelper ; export type CommandHandlerLookup = Record < CommandHandlerArgumentNames , CommandHandlerArgumentTypes > ; export interface Command { execute : ( ... args : readonly unknown [ ] ) => Promise < unknown > ; getArguments : ( ) => Promise < CommandHandlerArgumentNames [ ] > ; } export type Commands = Record < string , Command > ;