import { Struct, type JsonValue, type PlainMessage } from '@bufbuild/protobuf'; export { Code, ConnectError } from '@connectrpc/connect'; export { ConnectionClosedError } from './rpc'; export interface Options { requestLogger?: (req: unknown) => void; } export interface Resource { /** The name of the resource. */ readonly name: string; /** * Send/Receive arbitrary commands to the resource. * * @example * * ```ts * // Plain object (recommended) * const result = await resource.doCommand({ * myCommand: { key: 'value' }, * }); * * // Struct (still supported) * import { Struct } from '@viamrobotics/sdk'; * * const result = await resource.doCommand( * Struct.fromJson({ myCommand: { key: 'value' } }) * ); * ``` * * @param command - The command to execute. Accepts either a {@link Struct} or * a plain object, which will be converted automatically. */ doCommand(command: Struct | Record): Promise; /** Get the status of the resource. */ getStatus(): Promise; } import * as commonApi from './gen/common/v1/common_pb'; export type Capsule = PlainMessage; export type GeoGeometry = PlainMessage; export type GeoPoint = PlainMessage; export type GeometriesInFrame = PlainMessage; export type Geometry = PlainMessage; export type Orientation = PlainMessage; export type PointCloud = PlainMessage; export type Pose = PlainMessage; export type PoseInFrame = PlainMessage; export type RectangularPrism = PlainMessage; export type ResourceName = PlainMessage; export type Sphere = PlainMessage; export type Transform = PlainMessage; export type Vector3 = PlainMessage; export type WorldState = PlainMessage; export declare const Capsule: typeof commonApi.Capsule, GeoGeometry: typeof commonApi.GeoGeometry, GeoPoint: typeof commonApi.GeoPoint, GeometriesInFrame: typeof commonApi.GeometriesInFrame, Geometry: typeof commonApi.Geometry, Orientation: typeof commonApi.Orientation, PointCloud: typeof commonApi.PointCloud, Pose: typeof commonApi.Pose, PoseInFrame: typeof commonApi.PoseInFrame, RectangularPrism: typeof commonApi.RectangularPrism, ResourceName: typeof commonApi.ResourceName, Sphere: typeof commonApi.Sphere, Transform: typeof commonApi.Transform, Vector3: typeof commonApi.Vector3, WorldState: typeof commonApi.WorldState; export declare const isValidGeoPoint: (value: GeoPoint) => boolean; export { Duration, Struct, Timestamp, type JsonValue, type PlainMessage, } from '@bufbuild/protobuf';