spot-sdk-ts
Version:
TypeScript bindings based on protobufs (proto3) provided by Boston Dynamics
1,123 lines (1,122 loc) • 140 kB
TypeScript
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;