import { NetworkComputeResponse, ListAvailableModelsResponse, NetworkComputeRequest, ListAvailableModelsRequest } from "./network_compute_bridge";
export declare const protobufPackage = "bosdyn.api";
/** RPCs for sending images or other data to networked server for computation. */
export interface NetworkComputeBridge {
    NetworkCompute(request: NetworkComputeRequest): Promise<NetworkComputeResponse>;
    ListAvailableModels(request: ListAvailableModelsRequest): Promise<ListAvailableModelsResponse>;
}
export declare class NetworkComputeBridgeClientImpl implements NetworkComputeBridge {
    private readonly rpc;
    constructor(rpc: Rpc);
    NetworkCompute(request: NetworkComputeRequest): Promise<NetworkComputeResponse>;
    ListAvailableModels(request: ListAvailableModelsRequest): Promise<ListAvailableModelsResponse>;
}
/**
 * Set of RPCs for workers of the network compute bridge.  This is seperate from the RPCs for the
 * on-robot network compute bridge so that if they need to diverge in the future it is possible
 * to do so.
 */
export interface NetworkComputeBridgeWorker {
    NetworkCompute(request: NetworkComputeRequest): Promise<NetworkComputeResponse>;
    ListAvailableModels(request: ListAvailableModelsRequest): Promise<ListAvailableModelsResponse>;
}
export declare class NetworkComputeBridgeWorkerClientImpl implements NetworkComputeBridgeWorker {
    private readonly rpc;
    constructor(rpc: Rpc);
    NetworkCompute(request: NetworkComputeRequest): Promise<NetworkComputeResponse>;
    ListAvailableModels(request: ListAvailableModelsRequest): Promise<ListAvailableModelsResponse>;
}
interface Rpc {
    request(service: string, method: string, data: Uint8Array): Promise<Uint8Array>;
}
export {};
//# sourceMappingURL=network_compute_bridge_service.d.ts.map