import { Struct, type JsonValue } from '@bufbuild/protobuf'; import type { CallOptions } from '@connectrpc/connect'; import type { RobotClient } from '../../robot'; import type { GeoGeometry, GeoPoint, Geometry, Options, Pose, PoseInFrame, Transform, WorldState } from '../../types'; import type { Motion } from './motion'; import { type Constraints, type MotionConfiguration } from './types'; /** * A gRPC-web client for a Motion service. * * @group Clients */ export declare class MotionClient implements Motion { private client; readonly name: string; private readonly options; callOptions: CallOptions; constructor(client: RobotClient, name: string, options?: Options); move(destination: PoseInFrame, componentName: string, worldState?: WorldState, constraints?: Constraints, extra?: {}, callOptions?: CallOptions): Promise; moveOnMap(destination: Pose, componentName: string, slamServiceName: string, motionConfig?: MotionConfiguration, obstacles?: Geometry[], extra?: {}, callOptions?: CallOptions): Promise; moveOnGlobe(destination: GeoPoint, componentName: string, movementSensorName: string, heading?: number, obstaclesList?: GeoGeometry[], motionConfig?: MotionConfiguration, boundingRegionsList?: GeoGeometry[], extra?: {}, callOptions?: CallOptions): Promise; stopPlan(componentName: string, extra?: {}, callOptions?: CallOptions): Promise; getPlan(componentName: string, lastPlanOnly?: boolean, executionId?: string, extra?: {}, callOptions?: CallOptions): Promise; listPlanStatuses(onlyActivePlans?: boolean, extra?: {}, callOptions?: CallOptions): Promise; /** @deprecated Use `RobotClient.getPose` instead. */ getPose(componentName: string, destinationFrame: string, supplementalTransforms: Transform[], extra?: {}, callOptions?: CallOptions): Promise; getStatus(callOptions?: CallOptions): Promise; doCommand(command: Struct | Record, callOptions?: CallOptions): Promise; }