UNPKG

spot-sdk-ts

Version:

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

450 lines 20.7 kB
import { RequestHeader, ResponseHeader } from "./header"; import { Ray, Vec3, FrameTreeSnapshot } from "./geometry"; import _m0 from "protobufjs/minimal"; export declare const protobufPackage = "bosdyn.api"; export interface RaycastRequest { /** Common request header. */ header: RequestHeader | undefined; /** The ray's coordinate frame. When unset, this will default to vision frame. */ rayFrameName: string; /** The ray, containing and origin and an direction. */ ray: Ray | undefined; /** * Ignore intersections closer than this location on the ray. * Defaults to 0 if not provided. */ minIntersectionDistance: number; /** * Type of the raycast you want to perform. If multiple are set, the result will wait until * all raycasts are complete and return a single result proto. * * If this field is left empty, all available sources are used. */ intersectionTypes: RayIntersection_Type[]; } export interface RayIntersection { /** Type of the raycast intersection that was performed. */ type: RayIntersection_Type; /** Position of ray cast hit in the RaycastResponse hit_frame. */ hitPositionInHitFrame: Vec3 | undefined; /** Distance of hit from ray origin. */ distanceMeters: number; } export declare enum RayIntersection_Type { /** TYPE_UNKNOWN - TYPE_UNKNOWN should not be used. */ TYPE_UNKNOWN = 0, /** TYPE_GROUND_PLANE - Intersected against estimated ground plane. */ TYPE_GROUND_PLANE = 1, /** TYPE_TERRAIN_MAP - Intersected against the terrain map. */ TYPE_TERRAIN_MAP = 2, /** TYPE_VOXEL_MAP - Intersected against the full 3D voxel map. */ TYPE_VOXEL_MAP = 3, /** TYPE_HAND_DEPTH - Intersected against the hand depth data. */ TYPE_HAND_DEPTH = 4, UNRECOGNIZED = -1 } export declare function rayIntersection_TypeFromJSON(object: any): RayIntersection_Type; export declare function rayIntersection_TypeToJSON(object: RayIntersection_Type): string; export interface RaycastResponse { /** Common response header. */ header: ResponseHeader | undefined; /** Return status for a request. */ status: RaycastResponse_Status; /** Human-readable error description. Not for programmatic analysis. */ message: string; /** * The frame raycast hits are returned in. Generally this should be the same frame the client * initially requested in. */ hitFrameName: string; /** Ray cast hits, sorted with the closest hit first along the ray's extent. */ hits: RayIntersection[]; /** * A tree-based collection of transformations, which will include the * transformations to each of the returned world objects in addition to * transformations to the common frames ("vision", "body", "odom"). All * transforms within the snapshot are taken at the time when the request is received. * * Note that each object's frame names are defined within the properties * submessage e.g. "frame_name". */ transformsSnapshot: FrameTreeSnapshot | undefined; } export declare enum RaycastResponse_Status { /** STATUS_UNKNOWN - An unknown / unexpected error occurred. */ STATUS_UNKNOWN = 0, /** STATUS_OK - Request was accepted. */ STATUS_OK = 1, /** STATUS_INVALID_REQUEST - [Programming Error] Request was invalid / malformed in some way. */ STATUS_INVALID_REQUEST = 2, /** STATUS_INVALID_INTERSECTION_TYPE - [Programming Error] Requested source not valid for current robot configuration. */ STATUS_INVALID_INTERSECTION_TYPE = 3, /** STATUS_UNKNOWN_FRAME - [Frame Error] The frame_name for a command was not a known frame. */ STATUS_UNKNOWN_FRAME = 4, UNRECOGNIZED = -1 } export declare function raycastResponse_StatusFromJSON(object: any): RaycastResponse_Status; export declare function raycastResponse_StatusToJSON(object: RaycastResponse_Status): string; export declare const RaycastRequest: { encode(message: RaycastRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RaycastRequest; fromJSON(object: any): RaycastRequest; toJSON(message: RaycastRequest): unknown; fromPartial<I extends { header?: { requestTimestamp?: Date | undefined; clientName?: string | undefined; disableRpcLogging?: boolean | undefined; } | undefined; rayFrameName?: string | undefined; ray?: { origin?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; direction?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } | undefined; minIntersectionDistance?: number | undefined; intersectionTypes?: RayIntersection_Type[] | undefined; } & { header?: ({ requestTimestamp?: Date | undefined; clientName?: string | undefined; disableRpcLogging?: boolean | undefined; } & { requestTimestamp?: Date | undefined; clientName?: string | undefined; disableRpcLogging?: boolean | undefined; } & { [K in Exclude<keyof I["header"], keyof RequestHeader>]: never; }) | undefined; rayFrameName?: string | undefined; ray?: ({ origin?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; direction?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; } & { origin?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_1 in Exclude<keyof I["ray"]["origin"], keyof Vec3>]: never; }) | undefined; direction?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_2 in Exclude<keyof I["ray"]["direction"], keyof Vec3>]: never; }) | undefined; } & { [K_3 in Exclude<keyof I["ray"], keyof Ray>]: never; }) | undefined; minIntersectionDistance?: number | undefined; intersectionTypes?: (RayIntersection_Type[] & RayIntersection_Type[] & { [K_4 in Exclude<keyof I["intersectionTypes"], keyof RayIntersection_Type[]>]: never; }) | undefined; } & { [K_5 in Exclude<keyof I, keyof RaycastRequest>]: never; }>(object: I): RaycastRequest; }; export declare const RayIntersection: { encode(message: RayIntersection, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RayIntersection; fromJSON(object: any): RayIntersection; toJSON(message: RayIntersection): unknown; fromPartial<I extends { type?: RayIntersection_Type | undefined; hitPositionInHitFrame?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; distanceMeters?: number | undefined; } & { type?: RayIntersection_Type | undefined; hitPositionInHitFrame?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K in Exclude<keyof I["hitPositionInHitFrame"], keyof Vec3>]: never; }) | undefined; distanceMeters?: number | undefined; } & { [K_1 in Exclude<keyof I, keyof RayIntersection>]: never; }>(object: I): RayIntersection; }; export declare const RaycastResponse: { encode(message: RaycastResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RaycastResponse; fromJSON(object: any): RaycastResponse; toJSON(message: RaycastResponse): unknown; fromPartial<I extends { header?: { requestHeader?: { requestTimestamp?: Date | undefined; clientName?: string | undefined; disableRpcLogging?: boolean | undefined; } | undefined; requestReceivedTimestamp?: Date | undefined; responseTimestamp?: Date | undefined; error?: { code?: import("./header").CommonError_Code | undefined; message?: string | undefined; data?: { typeUrl?: string | undefined; value?: Uint8Array | undefined; } | undefined; } | undefined; request?: { typeUrl?: string | undefined; value?: Uint8Array | undefined; } | undefined; } | undefined; status?: RaycastResponse_Status | undefined; message?: string | undefined; hitFrameName?: string | undefined; hits?: { type?: RayIntersection_Type | undefined; hitPositionInHitFrame?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; distanceMeters?: number | undefined; }[] | undefined; transformsSnapshot?: { 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; } & { header?: ({ requestHeader?: { requestTimestamp?: Date | undefined; clientName?: string | undefined; disableRpcLogging?: boolean | undefined; } | undefined; requestReceivedTimestamp?: Date | undefined; responseTimestamp?: Date | undefined; error?: { code?: import("./header").CommonError_Code | undefined; message?: string | undefined; data?: { typeUrl?: string | undefined; value?: Uint8Array | undefined; } | undefined; } | undefined; request?: { typeUrl?: string | undefined; value?: Uint8Array | undefined; } | undefined; } & { requestHeader?: ({ requestTimestamp?: Date | undefined; clientName?: string | undefined; disableRpcLogging?: boolean | undefined; } & { requestTimestamp?: Date | undefined; clientName?: string | undefined; disableRpcLogging?: boolean | undefined; } & { [K in Exclude<keyof I["header"]["requestHeader"], keyof RequestHeader>]: never; }) | undefined; requestReceivedTimestamp?: Date | undefined; responseTimestamp?: Date | undefined; error?: ({ code?: import("./header").CommonError_Code | undefined; message?: string | undefined; data?: { typeUrl?: string | undefined; value?: Uint8Array | undefined; } | undefined; } & { code?: import("./header").CommonError_Code | undefined; message?: string | undefined; data?: ({ typeUrl?: string | undefined; value?: Uint8Array | undefined; } & { typeUrl?: string | undefined; value?: Uint8Array | undefined; } & { [K_1 in Exclude<keyof I["header"]["error"]["data"], keyof import("../../google/protobuf/any").Any>]: never; }) | undefined; } & { [K_2 in Exclude<keyof I["header"]["error"], keyof import("./header").CommonError>]: never; }) | undefined; request?: ({ typeUrl?: string | undefined; value?: Uint8Array | undefined; } & { typeUrl?: string | undefined; value?: Uint8Array | undefined; } & { [K_3 in Exclude<keyof I["header"]["request"], keyof import("../../google/protobuf/any").Any>]: never; }) | undefined; } & { [K_4 in Exclude<keyof I["header"], keyof ResponseHeader>]: never; }) | undefined; status?: RaycastResponse_Status | undefined; message?: string | undefined; hitFrameName?: string | undefined; hits?: ({ type?: RayIntersection_Type | undefined; hitPositionInHitFrame?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; distanceMeters?: number | undefined; }[] & ({ type?: RayIntersection_Type | undefined; hitPositionInHitFrame?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; distanceMeters?: number | undefined; } & { type?: RayIntersection_Type | undefined; hitPositionInHitFrame?: ({ x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { x?: number | undefined; y?: number | undefined; z?: number | undefined; } & { [K_5 in Exclude<keyof I["hits"][number]["hitPositionInHitFrame"], keyof Vec3>]: never; }) | undefined; distanceMeters?: number | undefined; } & { [K_6 in Exclude<keyof I["hits"][number], keyof RayIntersection>]: never; })[] & { [K_7 in Exclude<keyof I["hits"], keyof { type?: RayIntersection_Type | undefined; hitPositionInHitFrame?: { x?: number | undefined; y?: number | undefined; z?: number | undefined; } | undefined; distanceMeters?: number | undefined; }[]>]: never; }) | undefined; transformsSnapshot?: ({ 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_8 in Exclude<keyof I["transformsSnapshot"]["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_9 in Exclude<keyof I["transformsSnapshot"]["childToParentEdgeMap"][string]["parentTformChild"]["rotation"], keyof import("./geometry").Quaternion>]: never; }) | undefined; } & { [K_10 in Exclude<keyof I["transformsSnapshot"]["childToParentEdgeMap"][string]["parentTformChild"], keyof import("./geometry").SE3Pose>]: never; }) | undefined; } & { [K_11 in Exclude<keyof I["transformsSnapshot"]["childToParentEdgeMap"][string], keyof import("./geometry").FrameTreeSnapshot_ParentEdge>]: never; }) | undefined; } & { [K_12 in Exclude<keyof I["transformsSnapshot"]["childToParentEdgeMap"], string | number>]: never; }) | undefined; } & { [K_13 in Exclude<keyof I["transformsSnapshot"], "childToParentEdgeMap">]: never; }) | undefined; } & { [K_14 in Exclude<keyof I, keyof RaycastResponse>]: never; }>(object: I): RaycastResponse; }; declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export declare type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]>; } : Partial<T>; declare type KeysOfUnion<T> = T extends T ? keyof T : never; export declare type Exact<P, I extends P> = P extends Builtin ? P : P & { [K in keyof P]: Exact<P[K], I[K]>; } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never; }; export {}; //# sourceMappingURL=ray_cast.d.ts.map