UNPKG

spot-sdk-ts

Version:

TypeScript bindings based on protobufs (proto3) provided by Boston Dynamics

1,123 lines (1,122 loc) 140 kB
import { SoftwareVersion } from "./robot_id"; import { SE3Pose, Vec3, Box3WithFrame } from "./geometry"; import { RequestHeader, ResponseHeader } from "./header"; import _m0 from "protobufjs/minimal"; export declare const protobufPackage = "bosdyn.api"; /** Payloads are defined relative to a frame on the robot. These are the possible frames. */ export declare enum MountFrameName { /** MOUNT_FRAME_UNKNOWN - The is the default. For backwards compatibility, we assume unknown means body mount frame. */ MOUNT_FRAME_UNKNOWN = 0, /** MOUNT_FRAME_BODY_PAYLOAD - The body payload mount frame, as defined in documentation. */ MOUNT_FRAME_BODY_PAYLOAD = 1, /** MOUNT_FRAME_GRIPPER_PAYLOAD - The gripper payload mount frame, as defined in documentation. */ MOUNT_FRAME_GRIPPER_PAYLOAD = 2, /** MOUNT_FRAME_WR1 - The wrist link frame, as defined in the gripper CAD and documentation. */ MOUNT_FRAME_WR1 = 3, UNRECOGNIZED = -1 } export declare function mountFrameNameFromJSON(object: any): MountFrameName; export declare function mountFrameNameToJSON(object: MountFrameName): string; /** * A Payload describes a single payload installed on the Spot platform. * It includes all external information necessary to represent * the payload to the user as a single record. */ export interface Payload { /** A unique id provided by the payload or auto-generated by the website. */ GUID: string; /** * A human readable name describing this payload. It is provided by the * payload as part of the payload announcement system. */ name: string; /** * A human-readable description string providing more context as to the * function of this payload. It is displayed in UIs. */ description: string; /** A list of labels used to indicate what type of payload this is. */ labelPrefix: string[]; /** * Set true once the payload is authorized by the administrator in the payload webpage. * Must be set to false at registration time. */ isAuthorized: boolean; /** * Set true if the payload is attached to the robot. * Must be set to false at registration time. */ isEnabled: boolean; /** * Set true for payloads registered without their own computers. These records * are all manually entered. */ isNoncomputePayload: boolean; /** Payload version details. */ version: SoftwareVersion | undefined; /** The pose of the payload relative to the body frame. */ bodyTformPayload: SE3Pose | undefined; /** The pose of the payload relative to the mount frame. */ mountTformPayload: SE3Pose | undefined; /** Optional - mount frame_name (if not included, payload is assumed to be in the body mount frame) */ mountFrameName: MountFrameName; /** The mass and volume properties of the payload. */ massVolumeProperties: PayloadMassVolumeProperties | undefined; /** A list of possible physical configurations for the payload. */ presetConfigurations: PayloadPreset[]; } /** The physical configurations for the payload. */ export interface PayloadPreset { /** * A human readable name describing this configuration. It is displayed in * the admin console, but will not overwrite the top level payload name. */ presetName: string; /** * A human-readable description providing context on this configuration. It is * displayed in the admin console. */ description: string; /** The pose of the payload relative to the body frame. */ mountTformPayload: SE3Pose | undefined; /** Optional - mount frame_name (if not included, payload is assumed to be in the body mount frame) */ mountFrameName: MountFrameName; /** The mass and volume properties of the payload. */ massVolumeProperties: PayloadMassVolumeProperties | undefined; /** A list of labels used to indicate what type of payload this is. */ labelPrefix: string[]; } /** * PayloadMassVolumeProperties contain mass and volume information for the payload * in the format that the user interacts with it. It is transmitted to the control * and perception systems and processed there to inform those systems. */ export interface PayloadMassVolumeProperties { /** Total mass of payload in kg. */ totalMass: number; /** Position of the center of mass of the payload in the payload frame. Meters. */ comPosRtPayload: Vec3 | undefined; /** * The moment of inertia of the payload, represented about the payload * center of mass, in the payload frame. Units in [kg*m^2]. */ moiTensor: MomentOfIntertia | undefined; /** * Zero or more bounding boxes indicating the occupied volume of the payload. * These boxes must be represented in the payload frame by specifying * Must have Box3WithFrame.frame_name == "payload". */ boundingBox: Box3WithFrame[]; /** * Joint limits defining limits to range of motion of the hips of the robot, * in order to prevent collisions with the payload. * This field is optional and is only recommended for advanced development * purposes. */ jointLimits: JointLimits[]; } /** * Structure describing the moment of intertia of a body. The xx, yy, zz fields * are the diagonal of the MOI tensor, and the xy, xz, and yz fields are the * off diagonal terms. */ export interface MomentOfIntertia { xx: number; yy: number; zz: number; xy: number; xz: number; yz: number; } /** JointLimits contain hip joint angles where limb to payload collisions occur. */ export interface JointLimits { /** Label identifying the respective limb to which these apply [fr,fl,hr,hl] */ label: string; /** * (hy, hx) coordinates outlining the hip joint limits where collisions occur * between robot hip and payload. Paired vectors must be of equal length. * Angles are measured with actual contact. Appropriate margin will be provided * in software. Radians. * Left legs must have hx > 0. Right legs must have hx < 0. */ hy: number[]; /** All legs must have hy > 1.3. */ hx: number[]; } /** The ListPayloads request message sent to the robot to get all known payloads. */ export interface ListPayloadsRequest { /** Common request header. */ header: RequestHeader | undefined; } /** The ListPayloads response message returns all payloads registered in the robot's directory. */ export interface ListPayloadsResponse { /** Common response header. */ header: ResponseHeader | undefined; /** The returned list of payloads registered in the directory. */ payloads: Payload[]; } export declare const Payload: { encode(message: Payload, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Payload; fromJSON(object: any): Payload; toJSON(message: Payload): unknown; fromPartial<I extends { GUID?: string | undefined; name?: string | undefined; description?: string | undefined; labelPrefix?: string[] | undefined; isAuthorized?: boolean | undefined; isEnabled?: boolean | undefined; isNoncomputePayload?: boolean | undefined; version?: { majorVersion?: number | undefined; minorVersion?: number | undefined; patchLevel?: number | undefined; } | undefined; bodyTformPayload?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; mountTformPayload?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; mountFrameName?: MountFrameName | undefined; massVolumeProperties?: { totalMass?: number | undefined; comPosRtPayload?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; moiTensor?: { xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } | undefined; boundingBox?: { box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[] | undefined; jointLimits?: { label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[] | undefined; } | undefined; presetConfigurations?: { presetName?: string | undefined; description?: string | undefined; mountTformPayload?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; mountFrameName?: MountFrameName | undefined; massVolumeProperties?: { totalMass?: number | undefined; comPosRtPayload?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; moiTensor?: { xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } | undefined; boundingBox?: { box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[] | undefined; jointLimits?: { label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[] | undefined; } | undefined; labelPrefix?: string[] | undefined; }[] | undefined; } & { GUID?: string | undefined; name?: string | undefined; description?: string | undefined; labelPrefix?: (string[] & string[] & { [K in Exclude<keyof I["labelPrefix"], keyof string[]>]: never; }) | undefined; isAuthorized?: boolean | undefined; isEnabled?: boolean | undefined; isNoncomputePayload?: boolean | undefined; version?: ({ majorVersion?: number | undefined; minorVersion?: number | undefined; patchLevel?: number | undefined; } & { majorVersion?: number | undefined; minorVersion?: number | undefined; patchLevel?: number | undefined; } & { [K_1 in Exclude<keyof I["version"], keyof SoftwareVersion>]: never; }) | undefined; bodyTformPayload?: ({ position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } & { position?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_2 in Exclude<keyof I["bodyTformPayload"]["position"], keyof Vec3>]: never; }) | undefined; rotation?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } & { [K_3 in Exclude<keyof I["bodyTformPayload"]["rotation"], keyof import("./geometry").Quaternion>]: never; }) | undefined; } & { [K_4 in Exclude<keyof I["bodyTformPayload"], keyof SE3Pose>]: never; }) | undefined; mountTformPayload?: ({ position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } & { position?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_5 in Exclude<keyof I["mountTformPayload"]["position"], keyof Vec3>]: never; }) | undefined; rotation?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } & { [K_6 in Exclude<keyof I["mountTformPayload"]["rotation"], keyof import("./geometry").Quaternion>]: never; }) | undefined; } & { [K_7 in Exclude<keyof I["mountTformPayload"], keyof SE3Pose>]: never; }) | undefined; mountFrameName?: MountFrameName | undefined; massVolumeProperties?: ({ totalMass?: number | undefined; comPosRtPayload?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; moiTensor?: { xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } | undefined; boundingBox?: { box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[] | undefined; jointLimits?: { label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[] | undefined; } & { totalMass?: number | undefined; comPosRtPayload?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_8 in Exclude<keyof I["massVolumeProperties"]["comPosRtPayload"], keyof Vec3>]: never; }) | undefined; moiTensor?: ({ xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } & { xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } & { [K_9 in Exclude<keyof I["massVolumeProperties"]["moiTensor"], keyof MomentOfIntertia>]: never; }) | undefined; boundingBox?: ({ box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[] & ({ box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; } & { box?: ({ size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } & { size?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_10 in Exclude<keyof I["massVolumeProperties"]["boundingBox"][number]["box"]["size"], keyof Vec3>]: never; }) | undefined; } & { [K_11 in Exclude<keyof I["massVolumeProperties"]["boundingBox"][number]["box"], "size">]: never; }) | undefined; frameName?: string | undefined; frameNameTformBox?: ({ position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } & { position?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_12 in Exclude<keyof I["massVolumeProperties"]["boundingBox"][number]["frameNameTformBox"]["position"], keyof Vec3>]: never; }) | undefined; rotation?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } & { [K_13 in Exclude<keyof I["massVolumeProperties"]["boundingBox"][number]["frameNameTformBox"]["rotation"], keyof import("./geometry").Quaternion>]: never; }) | undefined; } & { [K_14 in Exclude<keyof I["massVolumeProperties"]["boundingBox"][number]["frameNameTformBox"], keyof SE3Pose>]: never; }) | undefined; } & { [K_15 in Exclude<keyof I["massVolumeProperties"]["boundingBox"][number], keyof Box3WithFrame>]: never; })[] & { [K_16 in Exclude<keyof I["massVolumeProperties"]["boundingBox"], keyof { box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[]>]: never; }) | undefined; jointLimits?: ({ label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[] & ({ label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; } & { label?: string | undefined; hy?: (number[] & number[] & { [K_17 in Exclude<keyof I["massVolumeProperties"]["jointLimits"][number]["hy"], keyof number[]>]: never; }) | undefined; hx?: (number[] & number[] & { [K_18 in Exclude<keyof I["massVolumeProperties"]["jointLimits"][number]["hx"], keyof number[]>]: never; }) | undefined; } & { [K_19 in Exclude<keyof I["massVolumeProperties"]["jointLimits"][number], keyof JointLimits>]: never; })[] & { [K_20 in Exclude<keyof I["massVolumeProperties"]["jointLimits"], keyof { label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[]>]: never; }) | undefined; } & { [K_21 in Exclude<keyof I["massVolumeProperties"], keyof PayloadMassVolumeProperties>]: never; }) | undefined; presetConfigurations?: ({ presetName?: string | undefined; description?: string | undefined; mountTformPayload?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; mountFrameName?: MountFrameName | undefined; massVolumeProperties?: { totalMass?: number | undefined; comPosRtPayload?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; moiTensor?: { xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } | undefined; boundingBox?: { box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[] | undefined; jointLimits?: { label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[] | undefined; } | undefined; labelPrefix?: string[] | undefined; }[] & ({ presetName?: string | undefined; description?: string | undefined; mountTformPayload?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; mountFrameName?: MountFrameName | undefined; massVolumeProperties?: { totalMass?: number | undefined; comPosRtPayload?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; moiTensor?: { xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } | undefined; boundingBox?: { box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[] | undefined; jointLimits?: { label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[] | undefined; } | undefined; labelPrefix?: string[] | undefined; } & { presetName?: string | undefined; description?: string | undefined; mountTformPayload?: ({ position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } & { position?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_22 in Exclude<keyof I["presetConfigurations"][number]["mountTformPayload"]["position"], keyof Vec3>]: never; }) | undefined; rotation?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } & { [K_23 in Exclude<keyof I["presetConfigurations"][number]["mountTformPayload"]["rotation"], keyof import("./geometry").Quaternion>]: never; }) | undefined; } & { [K_24 in Exclude<keyof I["presetConfigurations"][number]["mountTformPayload"], keyof SE3Pose>]: never; }) | undefined; mountFrameName?: MountFrameName | undefined; massVolumeProperties?: ({ totalMass?: number | undefined; comPosRtPayload?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; moiTensor?: { xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } | undefined; boundingBox?: { box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[] | undefined; jointLimits?: { label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[] | undefined; } & { totalMass?: number | undefined; comPosRtPayload?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_25 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["comPosRtPayload"], keyof Vec3>]: never; }) | undefined; moiTensor?: ({ xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } & { xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } & { [K_26 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["moiTensor"], keyof MomentOfIntertia>]: never; }) | undefined; boundingBox?: ({ box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[] & ({ box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; } & { box?: ({ size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } & { size?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_27 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["boundingBox"][number]["box"]["size"], keyof Vec3>]: never; }) | undefined; } & { [K_28 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["boundingBox"][number]["box"], "size">]: never; }) | undefined; frameName?: string | undefined; frameNameTformBox?: ({ position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } & { position?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_29 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["boundingBox"][number]["frameNameTformBox"]["position"], keyof Vec3>]: never; }) | undefined; rotation?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } & { [K_30 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["boundingBox"][number]["frameNameTformBox"]["rotation"], keyof import("./geometry").Quaternion>]: never; }) | undefined; } & { [K_31 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["boundingBox"][number]["frameNameTformBox"], keyof SE3Pose>]: never; }) | undefined; } & { [K_32 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["boundingBox"][number], keyof Box3WithFrame>]: never; })[] & { [K_33 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["boundingBox"], keyof { box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[]>]: never; }) | undefined; jointLimits?: ({ label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[] & ({ label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; } & { label?: string | undefined; hy?: (number[] & number[] & { [K_34 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["jointLimits"][number]["hy"], keyof number[]>]: never; }) | undefined; hx?: (number[] & number[] & { [K_35 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["jointLimits"][number]["hx"], keyof number[]>]: never; }) | undefined; } & { [K_36 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["jointLimits"][number], keyof JointLimits>]: never; })[] & { [K_37 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"]["jointLimits"], keyof { label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[]>]: never; }) | undefined; } & { [K_38 in Exclude<keyof I["presetConfigurations"][number]["massVolumeProperties"], keyof PayloadMassVolumeProperties>]: never; }) | undefined; labelPrefix?: (string[] & string[] & { [K_39 in Exclude<keyof I["presetConfigurations"][number]["labelPrefix"], keyof string[]>]: never; }) | undefined; } & { [K_40 in Exclude<keyof I["presetConfigurations"][number], keyof PayloadPreset>]: never; })[] & { [K_41 in Exclude<keyof I["presetConfigurations"], keyof { presetName?: string | undefined; description?: string | undefined; mountTformPayload?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; mountFrameName?: MountFrameName | undefined; massVolumeProperties?: { totalMass?: number | undefined; comPosRtPayload?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; moiTensor?: { xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } | undefined; boundingBox?: { box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[] | undefined; jointLimits?: { label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[] | undefined; } | undefined; labelPrefix?: string[] | undefined; }[]>]: never; }) | undefined; } & { [K_42 in Exclude<keyof I, keyof Payload>]: never; }>(object: I): Payload; }; export declare const PayloadPreset: { encode(message: PayloadPreset, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PayloadPreset; fromJSON(object: any): PayloadPreset; toJSON(message: PayloadPreset): unknown; fromPartial<I extends { presetName?: string | undefined; description?: string | undefined; mountTformPayload?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; mountFrameName?: MountFrameName | undefined; massVolumeProperties?: { totalMass?: number | undefined; comPosRtPayload?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; moiTensor?: { xx?: number | undefined; yy?: number | undefined; zz?: number | undefined; xy?: number | undefined; xz?: number | undefined; yz?: number | undefined; } | undefined; boundingBox?: { box?: { size?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; frameName?: string | undefined; frameNameTformBox?: { position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } | undefined; }[] | undefined; jointLimits?: { label?: string | undefined; hy?: number[] | undefined; hx?: number[] | undefined; }[] | undefined; } | undefined; labelPrefix?: string[] | undefined; } & { presetName?: string | undefined; description?: string | undefined; mountTformPayload?: ({ position?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; rotation?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; w?: number | undefined; } | undefined; } & { position?: ({ x?: number | undefined;