import { Struct, type JsonValue, type PartialMessage } from '@bufbuild/protobuf'; import type { CallOptions } from '@connectrpc/connect'; import { DoCommandRequest, DoCommandResponse, GetKinematicsRequest, GetKinematicsResponse, GetGeometriesRequest, GetGeometriesResponse, GetStatusRequest, GetStatusResponse, Geometry, Mesh } from './gen/common/v1/common_pb'; import type { Options, Vector3 } from './types'; import type { Frame } from './gen/app/v1/robot_pb'; export declare const clientHeaders: Headers; type doCommand = (request: PartialMessage, options?: CallOptions) => Promise; /** * Send/Receive an arbitrary command using a resource client. * * @example * * ```ts * // Plain object (recommended) * const result = await doCommandFromClient(doFn, name, { * myCommand: { key: 'value' }, * }); * * // Struct (still supported) * const result = await doCommandFromClient( * doFn, * name, * Struct.fromJson({ myCommand: { key: 'value' } }) * ); * ``` * * @param command - The command to execute. Accepts either a {@link Struct} or a * plain object, which will be converted automatically. */ export declare const doCommandFromClient: (doCommander: doCommand, name: string, command: Struct | Record, options?: Options, callOptions?: CallOptions) => Promise; export declare const enableDebugLogging: (key?: string, opts?: CallOptions) => CallOptions; export declare const disableDebugLogging: (opts: CallOptions) => void; export declare const addMetadata: (key: string, value: string, opts?: CallOptions) => CallOptions; export declare const deleteMetadata: (opts: CallOptions, key: string) => void; /** Shared type for kinematics return value */ export interface KinematicsData { name: string; kinematic_param_type: 'SVA' | 'URDF' | 'UNSPECIFIED'; joints: { id: string; type: string; parent: string; axis: Vector3; max: number; min: number; }[]; links: Frame[]; } /** Newer kinematics return shape that includes meshes */ export interface GetKinematicsResultWithMeshes { kinematicsData: KinematicsData; meshesByUrdfFilepath: Record; } /** Shared type for kinematics return value (legacy or with meshes) */ export type GetKinematicsResult = KinematicsData | GetKinematicsResultWithMeshes; type getKinematics = (request: PartialMessage, options?: CallOptions) => Promise; /** Get kinematics information using a resource client */ export declare const getKinematicsFromClient: (getKinematicsMethod: getKinematics, name: string, extra?: Struct, callOptions?: CallOptions) => Promise; type getGeometries = (request: PartialMessage, options?: CallOptions) => Promise; /** Get geometries information using a resource client */ export declare const getGeometriesFromClient: (getGeometriesMethod: getGeometries, name: string, extra?: Struct, callOptions?: CallOptions) => Promise; type getStatus = (request: PartialMessage, options?: CallOptions) => Promise; /** Get the status of a resource using a resource client */ export declare const getStatusFromClient: (getStatusMethod: getStatus, name: string, options?: Options, callOptions?: CallOptions) => Promise; export {};