import { Struct, type JsonValue } from '@bufbuild/protobuf'; import type { CallOptions } from '@connectrpc/connect'; import { type RobotClient } from '../../robot'; import type { Options } from '../../types'; import type { Navigation } from './navigation'; import type { NavigateRouteOptions, Plan, Position, Waypoint } from './types'; /** * A gRPC-web client for a Navigation service. * * @group Clients */ export declare class NavigationClient implements Navigation { private client; readonly name: string; private readonly options; callOptions: CallOptions; constructor(client: RobotClient, name: string, options?: Options); addLocation(locationName: string, position?: Position, extra?: {}, callOptions?: CallOptions): Promise; getLocation(locationName: string, extra?: {}, callOptions?: CallOptions): Promise; listLocations(extra?: {}, callOptions?: CallOptions): Promise; updateLocation(locationName: string, position?: Position, newName?: string, extra?: {}, callOptions?: CallOptions): Promise; deleteLocation(locationName: string, extra?: {}, callOptions?: CallOptions): Promise; addRoute(routeName: string, waypoints: Waypoint[], extra?: {}, callOptions?: CallOptions): Promise; getRoute(routeName: string, extra?: {}, callOptions?: CallOptions): Promise; listRoutes(extra?: {}, callOptions?: CallOptions): Promise; updateRoute(routeName: string, newName?: string, waypoints?: Waypoint[], extra?: {}, callOptions?: CallOptions): Promise; deleteRoute(routeName: string, extra?: {}, callOptions?: CallOptions): Promise; addZone(zoneName: string, type: string, geometry: Struct, maxSpeed?: number, extra?: {}, callOptions?: CallOptions): Promise; getZone(zoneName: string, extra?: {}, callOptions?: CallOptions): Promise; listZones(type?: string, extra?: {}, callOptions?: CallOptions): Promise; updateZone(zoneName: string, type?: string, geometry?: Struct, maxSpeed?: number, newName?: string, extra?: {}, callOptions?: CallOptions): Promise; deleteZone(zoneName: string, extra?: {}, callOptions?: CallOptions): Promise; navigateToLocation(locationName: string, extra?: {}, callOptions?: CallOptions): Promise; navigateToPoint(destination: Position, extra?: {}, callOptions?: CallOptions): Promise; navigateRoute({ routeName, waypoints, startIndex, startNearest, loop, wait, }: NavigateRouteOptions, extra?: {}, callOptions?: CallOptions): Promise; planToPoint(destination: Position, start?: Position, extra?: {}, callOptions?: CallOptions): Promise; planToLocation(locationName: string, start?: Position, extra?: {}, callOptions?: CallOptions): Promise; executePlan(plan: Plan, extra?: {}, callOptions?: CallOptions): Promise; goToLocation(locationName: string, wait?: boolean, linearMPerSec?: number, extra?: {}, callOptions?: CallOptions): Promise; goToPoint(destination: Position, wait?: boolean, linearMPerSec?: number, extra?: {}, callOptions?: CallOptions): Promise; suspend(reason?: string, extra?: {}, callOptions?: CallOptions): Promise; resume(extra?: {}, callOptions?: CallOptions): Promise; cancel(extra?: {}, callOptions?: CallOptions): Promise; getPosition(extra?: {}, callOptions?: CallOptions): Promise; getNavigationStatus(extra?: {}, callOptions?: CallOptions): Promise; getProperties(callOptions?: CallOptions): Promise; getCostmap(layer?: string, stride?: number, extra?: {}, callOptions?: CallOptions): Promise; getStatus(callOptions?: CallOptions): Promise; doCommand(command: Struct | Record, callOptions?: CallOptions): Promise; }