spot-sdk-ts
Version:
TypeScript bindings based on protobufs (proto3) provided by Boston Dynamics
1,051 lines • 192 kB
TypeScript
import { ManipulatorState_CarryState } from "./robot_state";
import { Vec3, Vec2, FrameTreeSnapshot, Quaternion } from "./geometry";
import { ImageSource_PinholeModel } from "./image";
import { RequestHeader, ResponseHeader } from "./header";
import { LeaseUseResult, Lease } from "./lease";
import _m0 from "protobufjs/minimal";
export declare const protobufPackage = "bosdyn.api";
export declare enum GraspPositionConstraint {
GRASP_POSITION_CONSTRAINT_UNKNOWN = 0,
GRASP_POSITION_CONSTRAINT_NORMAL = 1,
GRASP_POSITION_CONSTRAINT_FIXED_AT_USER_POSITION = 2,
UNRECOGNIZED = -1
}
export declare function graspPositionConstraintFromJSON(object: any): GraspPositionConstraint;
export declare function graspPositionConstraintToJSON(object: GraspPositionConstraint): string;
export declare enum ManipulationFeedbackState {
MANIP_STATE_UNKNOWN = 0,
MANIP_STATE_DONE = 1,
MANIP_STATE_SEARCHING_FOR_GRASP = 2,
MANIP_STATE_MOVING_TO_GRASP = 3,
MANIP_STATE_GRASPING_OBJECT = 4,
MANIP_STATE_PLACING_OBJECT = 5,
MANIP_STATE_GRASP_SUCCEEDED = 6,
MANIP_STATE_GRASP_FAILED = 7,
MANIP_STATE_GRASP_PLANNING_SUCCEEDED = 11,
MANIP_STATE_GRASP_PLANNING_NO_SOLUTION = 8,
/**
* MANIP_STATE_GRASP_FAILED_TO_RAYCAST_INTO_MAP - Note: if you are experiencing raycast failures during grasping, consider using a different
* grasping call that does not require the robot to automatically walk up to the grasp.
*/
MANIP_STATE_GRASP_FAILED_TO_RAYCAST_INTO_MAP = 9,
/**
* MANIP_STATE_GRASP_PLANNING_WAITING_DATA_AT_EDGE - The grasp planner is waiting for the gaze to have the target object not on the edge of the
* camera view. If you are seeing this in an automatic mode, the robot will soon retarget the
* grasp for you. If you are seeing this in a non-auto mode, you'll need to change your gaze
* to have the target object more in the center of the hand-camera's view.
*/
MANIP_STATE_GRASP_PLANNING_WAITING_DATA_AT_EDGE = 13,
MANIP_STATE_WALKING_TO_OBJECT = 10,
MANIP_STATE_ATTEMPTING_RAYCASTING = 12,
MANIP_STATE_MOVING_TO_PLACE = 14,
MANIP_STATE_PLACE_FAILED_TO_RAYCAST_INTO_MAP = 15,
MANIP_STATE_PLACE_SUCCEEDED = 16,
MANIP_STATE_PLACE_FAILED = 17,
UNRECOGNIZED = -1
}
export declare function manipulationFeedbackStateFromJSON(object: any): ManipulationFeedbackState;
export declare function manipulationFeedbackStateToJSON(object: ManipulationFeedbackState): string;
export declare enum ManipulationCameraSource {
MANIPULATION_CAMERA_SOURCE_UNKNOWN = 0,
MANIPULATION_CAMERA_SOURCE_STEREO = 1,
MANIPULATION_CAMERA_SOURCE_HAND = 2,
UNRECOGNIZED = -1
}
export declare function manipulationCameraSourceFromJSON(object: any): ManipulationCameraSource;
export declare function manipulationCameraSourceToJSON(object: ManipulationCameraSource): string;
/** Configure automatic walking and gazing at the target. */
export declare enum WalkGazeMode {
PICK_WALK_GAZE_UNKNOWN = 0,
/** PICK_AUTO_WALK_AND_GAZE - Default, walk to the target and gaze at it automatically */
PICK_AUTO_WALK_AND_GAZE = 1,
/** PICK_AUTO_GAZE - Don't move the robot base, but automatically look at the grasp target. */
PICK_AUTO_GAZE = 2,
/**
* PICK_NO_AUTO_WALK_OR_GAZE - No automatic gazing or walking. Note: if you choose this option, the target location
* must not be near the edges or off the screen on the hand camera's view.
*/
PICK_NO_AUTO_WALK_OR_GAZE = 3,
/**
* PICK_PLAN_ONLY - Only plan for the grasp, don't move the robot. Since we won't move
* the robot, the target location must not be near the edges or out of
* the hand camera's view. The robot must be located near the object.
* (Equivalent conditions as for success with PICK_NO_AUTO_WALK_OR_GAZE)
*/
PICK_PLAN_ONLY = 4,
UNRECOGNIZED = -1
}
export declare function walkGazeModeFromJSON(object: any): WalkGazeMode;
export declare function walkGazeModeToJSON(object: WalkGazeMode): string;
/** Walks the robot up to an object. Useful to prepare to grasp or manipulate something. */
export interface WalkToObjectRayInWorld {
/** Position of the start of the ray (see PickObjectRayInWorld for detailed comments.) */
rayStartRtFrame: Vec3 | undefined;
/** Position of the end of the ray. */
rayEndRtFrame: Vec3 | undefined;
/** Name of the frame that the above parameters are expressed in. */
frameName: string;
/**
* Optional offset distance for the robot to stand from the object's location. The robot will
* walk forwards or backwards from where it is so that its center of mass is this distance from
* the object. \
* If unset, we use a reasonable default value.
*/
offsetDistance: number | undefined;
}
export interface WalkToObjectInImage {
/** Walk to an object that is at a pixel location in an image. */
pixelXy: Vec2 | undefined;
/**
* A tree-based collection of transformations, which will include the transformations to each image's
* sensor in addition to transformations to the common frames ("vision", "body", "odom").
* All transforms within the snapshot are at the acquistion time of the image.
*/
transformsSnapshotForCamera: FrameTreeSnapshot | undefined;
/** The frame name for the image's sensor source. This will be included in the transform snapshot. */
frameNameImageSensor: string;
/** Camera model. */
cameraModel: ImageSource_PinholeModel | undefined;
/**
* Optional offset distance for the robot to stand from the object's location. The robot will
* walk forwards or backwards from where it is so that its center of mass is this distance from
* the object. \
* If unset, we use a reasonable default value.
*/
offsetDistance: number | undefined;
}
export interface PickObjectRayInWorld {
/**
* Cast a ray in the world and pick the first object found along the ray. \
* This is the lowest-level grasping message; all other grasp options internally use this
* message to trigger a grasp. \
* Example:
* You see the object you are interested in with the gripper's camera. To grasp it, you
* cast a ray from the camera out to 4 meters (well past the object). \
* To do this you'd set: \
* ray_start_rt_frame: camera's position \
* ray_end_rt_frame: camera's position + unit vector along ray of interest * 4 meters
*/
rayStartRtFrame: Vec3 | undefined;
rayEndRtFrame: Vec3 | undefined;
/** Name of the frame the above parameters are represented in. */
frameName: string;
/** Optional parameters for the grasp. */
graspParams: GraspParams | undefined;
/**
* Configure if the robot should automatically walk and/or gaze at the target object before
* performing the grasp. \
* 1. If you haven't moved the robot or deployed the arm, use PICK_AUTO_WALK_AND_GAZE \
* 2. If you have moved to the location you want to pick from, but haven't yet deployed the arm,
* use PICK_AUTO_GAZE. \
* 3. If you have already moved the robot and have the hand looking at your target object, use
* PICK_NO_AUTO_WALK_OR_GAZE. \
* If you are seeing issues with "MANIP_STATE_GRASP_FAILED_TO_RAYCAST_INTO_MAP," that means that
* the automatic system cannot find your object when trying to automatically walk to it, so
* consider using PICK_AUTO_GAZE or PICK_NO_AUTO_WALK_OR_GAZE.
*/
walkGazeMode: WalkGazeMode;
}
/** No data */
export interface PickObjectExecutePlan {
}
export interface PickObject {
/** Name of the frame you want to give your input in. */
frameName: string;
/** Pickup an object at the location, given in the frame named above. */
objectRtFrame: Vec3 | undefined;
/** Optional parameters for the grasp. */
graspParams: GraspParams | undefined;
}
export interface PickObjectInImage {
/** Pickup an object that is at a pixel location in an image. */
pixelXy: Vec2 | undefined;
/**
* A tree-based collection of transformations, which will include the transformations to each image's
* sensor in addition to transformations to the common frames ("vision", "body", "odom").
* All transforms within the snapshot are at the acquistion time of the image.
*/
transformsSnapshotForCamera: FrameTreeSnapshot | undefined;
/** The frame name for the image's sensor source. This must be included in the transform snapshot. */
frameNameImageSensor: string;
/** Camera model. */
cameraModel: ImageSource_PinholeModel | undefined;
/** Optional parameters for the grasp. */
graspParams: GraspParams | undefined;
/**
* Automatic walking / gazing configuration.
* See detailed comment in the PickObjectRayInWorld message.
*/
walkGazeMode: WalkGazeMode;
}
export interface GraspParams {
/**
* Where the grasp is on the hand. Set to 0 to be a (default) palm grasp, where the object will
* be pressed against the gripper's palm plate. Set to 1.0 to be a fingertip grasp, where the
* robot will try to pick up the target with just the tip of its fingers. \
* Intermediate values move the grasp location between the two extremes.
*/
graspPalmToFingertip: number;
/** Frame name for the frame that the constraints in allowable_orientation are expressed in. */
graspParamsFrameName: string;
/**
* Optional constraints about the orientation of the grasp. This field lets you specify things
* like "only do a top down grasp," "grasp only from this direction," or "grasp with the gripper
* upside-down." If you don't pass anything, the robot will automatically search for a good
* grasp orientation.
*/
allowableOrientation: AllowableOrientation[];
/**
* Optional parameter on how much the robot is allowed to move the grasp from where the user
* requested. Set this to be GRASP_POSITION_CONSTRAINT_FIXED_AT_USER_POSITION to get a grasp
* that is at the exact position you requested, but has less or no automatic grasp selection
* help in position.
*/
positionConstraint: GraspPositionConstraint;
/**
* Optional hint about which camera was used to generate the target points. The robot will
* attempt to correct for calibration error between the arm and the body cameras.
*/
manipulationCameraSource: ManipulationCameraSource;
}
/**
* Allowable orientation allow you to specify vectors that the different axes of the robot's
* gripper will be aligned with in the final grasp pose. \
*
* Frame: \
* In stow position, +X is to the front of the gripper, pointing forward. \
* +Y is out of the side of the gripper going to the robot's left \
* +Z is straight up towards the sky \
*
* Here, you can supply vectors that you want the gripper to be aligned with at the final grasp
* position. For example, if you wanted to grasp a cup, you'd wouldn't want a top-down grasp.
* So you might specify: \
* frame_name = "vision" (so that Z is gravity aligned) \
* VectorAlignmentWithTolerance: \
* axis_to_on_gripper_ewrt_gripper = Vec3(0, 0, 1) <--- we want to control the
* gripper's z-axis. \
*
* axis_to_align_with_ewrt_frame = Vec3(0, 0, 1) <--- ...and we want that axis to be
* straight up \
* tolerance_z = 0.52 <--- 30 degrees \
* This will ensure that the z-axis of the gripper is pointed within 30 degrees of vertical
* so that your grasp won't be top-down (which would need the z-axis of the gripper to be
* pointed at the horizon). \
*
* You can also specify more than one AllowableOrientation to give the system multiple options.
* For example, you could specify that you're OK with either a z-up or z-down version of the cup
* grasp, allowing the gripper roll 180 from the stow position to grasp the cup.
*/
export interface AllowableOrientation {
rotationWithTolerance: RotationWithTolerance | undefined;
vectorAlignmentWithTolerance: VectorAlignmentWithTolerance | undefined;
squeezeGrasp: SqueezeGrasp | undefined;
}
export interface RotationWithTolerance {
rotationEwrtFrame: Quaternion | undefined;
thresholdRadians: number;
}
export interface VectorAlignmentWithTolerance {
/**
* Axis on the gripper that you want to align. For example, to align the front of the gripper
* to be straight down, you'd use: \
* axis_on_gripper_ewrt_gripper = Vec3(1, 0, 0) \
* axis_to_align_with_ewrt_frame = Vec3(0, 0, -1) (in the "vision" frame) \
*/
axisOnGripperEwrtGripper: Vec3 | undefined;
axisToAlignWithEwrtFrame: Vec3 | undefined;
thresholdRadians: number;
}
/**
* A "squeeze grasp" is a top-down grasp where we try to keep both jaws of the gripper in
* contact with the ground and bring the jaws together. This can allow the robot to pick up
* small objects on the ground.
*
* If you specify a SqueezeGrasp as:
* allowed:
* - with no other allowable orientations:
* then the robot will perform a squeeze grasp.
* - with at least one other allowable orientation:
* the robot will attempt to find a normal grasp with that orientation and if it
* fails, will perform a squeeze grasp.
* disallowed:
* - with no other allowable orientations:
* the robot will perform an unconstrained grasp search and a grasp if a good grasp
* is found. If no grasp is found, the robot will report
* MANIP_STATE_GRASP_PLANNING_NO_SOLUTION
* - with other allowable orientations:
* the robot will attempt to find a valid grasp. If it cannot it will report
* MANIP_STATE_GRASP_PLANNING_NO_SOLUTION
*/
export interface SqueezeGrasp {
squeezeGraspDisallowed: boolean;
}
export interface ManipulationApiFeedbackRequest {
/** Common request header. */
header: RequestHeader | undefined;
/** Unique identifier for the command, provided by ManipulationApiResponse. */
manipulationCmdId: number;
}
export interface ManipulationApiFeedbackResponse {
/** / Common response header. */
header: ResponseHeader | undefined;
/** The unique identifier for the ManipulationApiFeedbackRequest. */
manipulationCmdId: number;
currentState: ManipulationFeedbackState;
/**
* Data from the manipulation system: \
* "walkto_raycast_intersection": \
* If you sent a WalkToObject request, we raycast in the world to intersect your pixel/ray
* with the world. The point of intersection is included in this transform snapshot
* with the name "walkto_raycast_intersection". \
* "grasp_planning_solution": \
* If you requested a grasp plan, this frame will contain the planning solution if
* available. This will be the pose of the "hand" frame at the completion of the grasp. \
* "gripper_nearest_object": \
* If the range camera in the hand senses an object, this frame will have the position of
* the nearest object. This is useful for getting a ballpark range measurement.
*/
transformsSnapshotManipulationData: FrameTreeSnapshot | undefined;
}
export interface ManipulationApiResponse {
/** / Common response header. */
header: ResponseHeader | undefined;
/** ID of the manipulation command either just issued or that we are providing feedback for. */
manipulationCmdId: number;
/** Details about how the lease was used. */
leaseUseResult: LeaseUseResult | undefined;
}
export interface ManipulationApiRequest {
/** Common request header. */
header: RequestHeader | undefined;
/** The Lease to show ownership of the robot. */
lease: Lease | undefined;
/** Walk to an object with a raycast in to the world */
walkToObjectRayInWorld: WalkToObjectRayInWorld | undefined;
/** Walk to an object at a pixel location in an image. */
walkToObjectInImage: WalkToObjectInImage | undefined;
/** Pick up an object. */
pickObject: PickObject | undefined;
/** Pick up an object at a pixel location in an image. */
pickObjectInImage: PickObjectInImage | undefined;
/**
* Pick up an object based on a ray in 3D space. This is the lowest-level, most
* configurable object picking command.
*/
pickObjectRayInWorld: PickObjectRayInWorld | undefined;
/** Execute a previously planned pick. */
pickObjectExecutePlan: PickObjectExecutePlan | undefined;
}
/**
* Use this message to assert the ground truth about grasping.
* Grasping is usually detected automatically by the robot. If the client wishes to override the
* robot's determination of grasp status, send an ApiGraspOverride message with either:
* OVERRIDE_HOLDING, indicating the gripper is holding something, or
* OVERRIDE_NOT_HOLDING, indicating the gripper is not holding
* anything.
*/
export interface ApiGraspOverride {
overrideRequest: ApiGraspOverride_Override;
}
export declare enum ApiGraspOverride_Override {
OVERRIDE_UNKNOWN = 0,
OVERRIDE_HOLDING = 1,
OVERRIDE_NOT_HOLDING = 2,
UNRECOGNIZED = -1
}
export declare function apiGraspOverride_OverrideFromJSON(object: any): ApiGraspOverride_Override;
export declare function apiGraspOverride_OverrideToJSON(object: ApiGraspOverride_Override): string;
/**
* Use this message to assert properties about the grasped item.
* By default, the robot will assume all grasped items are not carriable.
*/
export interface ApiGraspedCarryStateOverride {
overrideRequest: ManipulatorState_CarryState;
}
export interface ApiGraspOverrideRequest {
/** Common request header. */
header: RequestHeader | undefined;
apiGraspOverride: ApiGraspOverride | undefined;
/**
* If the grasp override is set to NOT_HOLDING, setting a carry_state_override
* message will cause the request to be rejected as malformed.
*/
carryStateOverride: ApiGraspedCarryStateOverride | undefined;
}
export interface ApiGraspOverrideResponse {
/** Common response header. */
header: ResponseHeader | undefined;
}
export declare const WalkToObjectRayInWorld: {
encode(message: WalkToObjectRayInWorld, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): WalkToObjectRayInWorld;
fromJSON(object: any): WalkToObjectRayInWorld;
toJSON(message: WalkToObjectRayInWorld): unknown;
fromPartial<I extends {
rayStartRtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
rayEndRtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
frameName?: string | undefined;
offsetDistance?: number | undefined;
} & {
rayStartRtFrame?: ({
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & { [K in Exclude<keyof I["rayStartRtFrame"], keyof Vec3>]: never; }) | undefined;
rayEndRtFrame?: ({
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & { [K_1 in Exclude<keyof I["rayEndRtFrame"], keyof Vec3>]: never; }) | undefined;
frameName?: string | undefined;
offsetDistance?: number | undefined;
} & { [K_2 in Exclude<keyof I, keyof WalkToObjectRayInWorld>]: never; }>(object: I): WalkToObjectRayInWorld;
};
export declare const WalkToObjectInImage: {
encode(message: WalkToObjectInImage, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): WalkToObjectInImage;
fromJSON(object: any): WalkToObjectInImage;
toJSON(message: WalkToObjectInImage): unknown;
fromPartial<I extends {
pixelXy?: {
x?: number | undefined;
y?: number | undefined;
} | undefined;
transformsSnapshotForCamera?: {
childToParentEdgeMap?: {
[x: string]: {
parentFrameName?: string | undefined;
parentTformChild?: {
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;
} | undefined;
} | undefined;
frameNameImageSensor?: string | undefined;
cameraModel?: {
intrinsics?: {
focalLength?: {
x?: number | undefined;
y?: number | undefined;
} | undefined;
principalPoint?: {
x?: number | undefined;
y?: number | undefined;
} | undefined;
skew?: {
x?: number | undefined;
y?: number | undefined;
} | undefined;
} | undefined;
} | undefined;
offsetDistance?: number | undefined;
} & {
pixelXy?: ({
x?: number | undefined;
y?: number | undefined;
} & {
x?: number | undefined;
y?: number | undefined;
} & { [K in Exclude<keyof I["pixelXy"], keyof Vec2>]: never; }) | undefined;
transformsSnapshotForCamera?: ({
childToParentEdgeMap?: {
[x: string]: {
parentFrameName?: string | undefined;
parentTformChild?: {
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;
} | undefined;
} & {
childToParentEdgeMap?: ({
[x: string]: {
parentFrameName?: string | undefined;
parentTformChild?: {
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;
} & {
[x: string]: ({
parentFrameName?: string | undefined;
parentTformChild?: {
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;
} & {
parentFrameName?: string | undefined;
parentTformChild?: ({
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_1 in Exclude<keyof I["transformsSnapshotForCamera"]["childToParentEdgeMap"][string]["parentTformChild"]["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_2 in Exclude<keyof I["transformsSnapshotForCamera"]["childToParentEdgeMap"][string]["parentTformChild"]["rotation"], keyof Quaternion>]: never; }) | undefined;
} & { [K_3 in Exclude<keyof I["transformsSnapshotForCamera"]["childToParentEdgeMap"][string]["parentTformChild"], keyof import("./geometry").SE3Pose>]: never; }) | undefined;
} & { [K_4 in Exclude<keyof I["transformsSnapshotForCamera"]["childToParentEdgeMap"][string], keyof import("./geometry").FrameTreeSnapshot_ParentEdge>]: never; }) | undefined;
} & { [K_5 in Exclude<keyof I["transformsSnapshotForCamera"]["childToParentEdgeMap"], string | number>]: never; }) | undefined;
} & { [K_6 in Exclude<keyof I["transformsSnapshotForCamera"], "childToParentEdgeMap">]: never; }) | undefined;
frameNameImageSensor?: string | undefined;
cameraModel?: ({
intrinsics?: {
focalLength?: {
x?: number | undefined;
y?: number | undefined;
} | undefined;
principalPoint?: {
x?: number | undefined;
y?: number | undefined;
} | undefined;
skew?: {
x?: number | undefined;
y?: number | undefined;
} | undefined;
} | undefined;
} & {
intrinsics?: ({
focalLength?: {
x?: number | undefined;
y?: number | undefined;
} | undefined;
principalPoint?: {
x?: number | undefined;
y?: number | undefined;
} | undefined;
skew?: {
x?: number | undefined;
y?: number | undefined;
} | undefined;
} & {
focalLength?: ({
x?: number | undefined;
y?: number | undefined;
} & {
x?: number | undefined;
y?: number | undefined;
} & { [K_7 in Exclude<keyof I["cameraModel"]["intrinsics"]["focalLength"], keyof Vec2>]: never; }) | undefined;
principalPoint?: ({
x?: number | undefined;
y?: number | undefined;
} & {
x?: number | undefined;
y?: number | undefined;
} & { [K_8 in Exclude<keyof I["cameraModel"]["intrinsics"]["principalPoint"], keyof Vec2>]: never; }) | undefined;
skew?: ({
x?: number | undefined;
y?: number | undefined;
} & {
x?: number | undefined;
y?: number | undefined;
} & { [K_9 in Exclude<keyof I["cameraModel"]["intrinsics"]["skew"], keyof Vec2>]: never; }) | undefined;
} & { [K_10 in Exclude<keyof I["cameraModel"]["intrinsics"], keyof import("./image").ImageSource_PinholeModel_CameraIntrinsics>]: never; }) | undefined;
} & { [K_11 in Exclude<keyof I["cameraModel"], "intrinsics">]: never; }) | undefined;
offsetDistance?: number | undefined;
} & { [K_12 in Exclude<keyof I, keyof WalkToObjectInImage>]: never; }>(object: I): WalkToObjectInImage;
};
export declare const PickObjectRayInWorld: {
encode(message: PickObjectRayInWorld, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): PickObjectRayInWorld;
fromJSON(object: any): PickObjectRayInWorld;
toJSON(message: PickObjectRayInWorld): unknown;
fromPartial<I extends {
rayStartRtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
rayEndRtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
frameName?: string | undefined;
graspParams?: {
graspPalmToFingertip?: number | undefined;
graspParamsFrameName?: string | undefined;
allowableOrientation?: {
rotationWithTolerance?: {
rotationEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
w?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
vectorAlignmentWithTolerance?: {
axisOnGripperEwrtGripper?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
axisToAlignWithEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
squeezeGrasp?: {
squeezeGraspDisallowed?: boolean | undefined;
} | undefined;
}[] | undefined;
positionConstraint?: GraspPositionConstraint | undefined;
manipulationCameraSource?: ManipulationCameraSource | undefined;
} | undefined;
walkGazeMode?: WalkGazeMode | undefined;
} & {
rayStartRtFrame?: ({
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & { [K in Exclude<keyof I["rayStartRtFrame"], keyof Vec3>]: never; }) | undefined;
rayEndRtFrame?: ({
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & { [K_1 in Exclude<keyof I["rayEndRtFrame"], keyof Vec3>]: never; }) | undefined;
frameName?: string | undefined;
graspParams?: ({
graspPalmToFingertip?: number | undefined;
graspParamsFrameName?: string | undefined;
allowableOrientation?: {
rotationWithTolerance?: {
rotationEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
w?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
vectorAlignmentWithTolerance?: {
axisOnGripperEwrtGripper?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
axisToAlignWithEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
squeezeGrasp?: {
squeezeGraspDisallowed?: boolean | undefined;
} | undefined;
}[] | undefined;
positionConstraint?: GraspPositionConstraint | undefined;
manipulationCameraSource?: ManipulationCameraSource | undefined;
} & {
graspPalmToFingertip?: number | undefined;
graspParamsFrameName?: string | undefined;
allowableOrientation?: ({
rotationWithTolerance?: {
rotationEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
w?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
vectorAlignmentWithTolerance?: {
axisOnGripperEwrtGripper?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
axisToAlignWithEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
squeezeGrasp?: {
squeezeGraspDisallowed?: boolean | undefined;
} | undefined;
}[] & ({
rotationWithTolerance?: {
rotationEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
w?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
vectorAlignmentWithTolerance?: {
axisOnGripperEwrtGripper?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
axisToAlignWithEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
squeezeGrasp?: {
squeezeGraspDisallowed?: boolean | undefined;
} | undefined;
} & {
rotationWithTolerance?: ({
rotationEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
w?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} & {
rotationEwrtFrame?: ({
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_2 in Exclude<keyof I["graspParams"]["allowableOrientation"][number]["rotationWithTolerance"]["rotationEwrtFrame"], keyof Quaternion>]: never; }) | undefined;
thresholdRadians?: number | undefined;
} & { [K_3 in Exclude<keyof I["graspParams"]["allowableOrientation"][number]["rotationWithTolerance"], keyof RotationWithTolerance>]: never; }) | undefined;
vectorAlignmentWithTolerance?: ({
axisOnGripperEwrtGripper?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
axisToAlignWithEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} & {
axisOnGripperEwrtGripper?: ({
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & { [K_4 in Exclude<keyof I["graspParams"]["allowableOrientation"][number]["vectorAlignmentWithTolerance"]["axisOnGripperEwrtGripper"], keyof Vec3>]: never; }) | undefined;
axisToAlignWithEwrtFrame?: ({
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & { [K_5 in Exclude<keyof I["graspParams"]["allowableOrientation"][number]["vectorAlignmentWithTolerance"]["axisToAlignWithEwrtFrame"], keyof Vec3>]: never; }) | undefined;
thresholdRadians?: number | undefined;
} & { [K_6 in Exclude<keyof I["graspParams"]["allowableOrientation"][number]["vectorAlignmentWithTolerance"], keyof VectorAlignmentWithTolerance>]: never; }) | undefined;
squeezeGrasp?: ({
squeezeGraspDisallowed?: boolean | undefined;
} & {
squeezeGraspDisallowed?: boolean | undefined;
} & { [K_7 in Exclude<keyof I["graspParams"]["allowableOrientation"][number]["squeezeGrasp"], "squeezeGraspDisallowed">]: never; }) | undefined;
} & { [K_8 in Exclude<keyof I["graspParams"]["allowableOrientation"][number], keyof AllowableOrientation>]: never; })[] & { [K_9 in Exclude<keyof I["graspParams"]["allowableOrientation"], keyof {
rotationWithTolerance?: {
rotationEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
w?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
vectorAlignmentWithTolerance?: {
axisOnGripperEwrtGripper?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
axisToAlignWithEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
squeezeGrasp?: {
squeezeGraspDisallowed?: boolean | undefined;
} | undefined;
}[]>]: never; }) | undefined;
positionConstraint?: GraspPositionConstraint | undefined;
manipulationCameraSource?: ManipulationCameraSource | undefined;
} & { [K_10 in Exclude<keyof I["graspParams"], keyof GraspParams>]: never; }) | undefined;
walkGazeMode?: WalkGazeMode | undefined;
} & { [K_11 in Exclude<keyof I, keyof PickObjectRayInWorld>]: never; }>(object: I): PickObjectRayInWorld;
};
export declare const PickObjectExecutePlan: {
encode(_: PickObjectExecutePlan, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): PickObjectExecutePlan;
fromJSON(_: any): PickObjectExecutePlan;
toJSON(_: PickObjectExecutePlan): unknown;
fromPartial<I extends {} & {} & { [K in Exclude<keyof I, never>]: never; }>(_: I): PickObjectExecutePlan;
};
export declare const PickObject: {
encode(message: PickObject, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): PickObject;
fromJSON(object: any): PickObject;
toJSON(message: PickObject): unknown;
fromPartial<I extends {
frameName?: string | undefined;
objectRtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
graspParams?: {
graspPalmToFingertip?: number | undefined;
graspParamsFrameName?: string | undefined;
allowableOrientation?: {
rotationWithTolerance?: {
rotationEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
w?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
vectorAlignmentWithTolerance?: {
axisOnGripperEwrtGripper?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
axisToAlignWithEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
squeezeGrasp?: {
squeezeGraspDisallowed?: boolean | undefined;
} | undefined;
}[] | undefined;
positionConstraint?: GraspPositionConstraint | undefined;
manipulationCameraSource?: ManipulationCameraSource | undefined;
} | undefined;
} & {
frameName?: string | undefined;
objectRtFrame?: ({
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} & { [K in Exclude<keyof I["objectRtFrame"], keyof Vec3>]: never; }) | undefined;
graspParams?: ({
graspPalmToFingertip?: number | undefined;
graspParamsFrameName?: string | undefined;
allowableOrientation?: {
rotationWithTolerance?: {
rotationEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
w?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
vectorAlignmentWithTolerance?: {
axisOnGripperEwrtGripper?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
axisToAlignWithEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
squeezeGrasp?: {
squeezeGraspDisallowed?: boolean | undefined;
} | undefined;
}[] | undefined;
positionConstraint?: GraspPositionConstraint | undefined;
manipulationCameraSource?: ManipulationCameraSource | undefined;
} & {
graspPalmToFingertip?: number | undefined;
graspParamsFrameName?: string | undefined;
allowableOrientation?: ({
rotationWithTolerance?: {
rotationEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
w?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
vectorAlignmentWithTolerance?: {
axisOnGripperEwrtGripper?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
axisToAlignWithEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
squeezeGrasp?: {
squeezeGraspDisallowed?: boolean | undefined;
} | undefined;
}[] & ({
rotationWithTolerance?: {
rotationEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
w?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
vectorAlignmentWithTolerance?: {
axisOnGripperEwrtGripper?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
axisToAlignWithEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} | undefined;
squeezeGrasp?: {
squeezeGraspDisallowed?: boolean | undefined;
} | undefined;
} & {
rotationWithTolerance?: ({
rotationEwrtFrame?: {
x?: number | undefined;
y?: number | undefined;
z?: number | undefined;
w?: number | undefined;
} | undefined;
thresholdRadians?: number | undefined;
} & {
rotationEwrtFrame?: ({
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_1 in Exclude<keyof I["graspParams"]["allowableOrientation"][number]["rotationWithTolerance"]["rotationEwrtFrame"], keyof Quaternion>]: never; }) | undefined;
thresholdRadians?: number | undefined;
} & { [K_2 in Exclude<keyof I["graspParams"]["allowableOrientation"][number]["rotationWithTolerance"], keyof RotationWithTolerance>]: never; }) | undefined;
vectorAlignmentWithTolerance?: ({
axisOnGripperEwrtGr