UNPKG

@aneoconsultingfr/armonik.api

Version:

gRPC API to interact with ArmoniK built for the web

70 lines (67 loc) 3.73 kB
import { Observable } from 'rxjs'; import { CreateTaskRequest, CreateTaskReply, CreateResultsMetaDataRequest, CreateResultsMetaDataResponse, CreateResultsRequest, CreateResultsResponse, NotifyResultDataRequest, NotifyResultDataResponse, SubmitTasksRequest, SubmitTasksResponse, DataRequest, DataResponse } from './agent_common.mjs'; import './objects.mjs'; import 'protobufjs/minimal.js'; import './google/protobuf/duration.mjs'; import './task_status.mjs'; import './result_status.mjs'; declare const protobufPackage = "armonik.api.grpc.v1.agent"; interface Agent { CreateTask(request: Observable<CreateTaskRequest>): Promise<CreateTaskReply>; /** * Create the metadata of multiple results at once * Data have to be uploaded separately */ CreateResultsMetaData(request: CreateResultsMetaDataRequest): Promise<CreateResultsMetaDataResponse>; /** Create one result with data included in the request */ CreateResults(request: CreateResultsRequest): Promise<CreateResultsResponse>; /** * Notify Agent that a data file representing the Result to upload is available in the shared folder * The name of the file should be the result id * Blocks until data are stored in Object Storage */ NotifyResultData(request: NotifyResultDataRequest): Promise<NotifyResultDataResponse>; /** Create tasks metadata and submit task for processing. */ SubmitTasks(request: SubmitTasksRequest): Promise<SubmitTasksResponse>; /** * Retrieve Resource Data from the Agent * Data is stored in the shared folder between Agent and Worker as a file with the result id as name * Blocks until data are available in the shared folder */ GetResourceData(request: DataRequest): Promise<DataResponse>; /** * Retrieve Resource Data from the Agent * Data is stored in the shared folder between Agent and Worker as a file with the result id as name * Blocks until data are available in the shared folder */ GetCommonData(request: DataRequest): Promise<DataResponse>; /** * Retrieve Resource Data from the Agent * Data is stored in the shared folder between Agent and Worker as a file with the result id as name * Blocks until data are available in the shared folder */ GetDirectData(request: DataRequest): Promise<DataResponse>; } declare const AgentServiceName = "armonik.api.grpc.v1.agent.Agent"; declare class AgentClientImpl implements Agent { private readonly rpc; private readonly service; constructor(rpc: Rpc, opts?: { service?: string; }); CreateTask(request: Observable<CreateTaskRequest>): Promise<CreateTaskReply>; CreateResultsMetaData(request: CreateResultsMetaDataRequest): Promise<CreateResultsMetaDataResponse>; CreateResults(request: CreateResultsRequest): Promise<CreateResultsResponse>; NotifyResultData(request: NotifyResultDataRequest): Promise<NotifyResultDataResponse>; SubmitTasks(request: SubmitTasksRequest): Promise<SubmitTasksResponse>; GetResourceData(request: DataRequest): Promise<DataResponse>; GetCommonData(request: DataRequest): Promise<DataResponse>; GetDirectData(request: DataRequest): Promise<DataResponse>; } interface Rpc { request(service: string, method: string, data: Uint8Array): Promise<Uint8Array>; clientStreamingRequest(service: string, method: string, data: Observable<Uint8Array>): Promise<Uint8Array>; serverStreamingRequest(service: string, method: string, data: Uint8Array): Observable<Uint8Array>; bidirectionalStreamingRequest(service: string, method: string, data: Observable<Uint8Array>): Observable<Uint8Array>; } export { Agent, AgentClientImpl, AgentServiceName, protobufPackage };