EdgeAIG's picture
download
raw
2.38 kB
/**
* Server-side layers for workflow proxy APIs.
*
* `layerHttpApi` connects the HTTP API group created by `WorkflowProxy` to the
* supplied workflows. `layerRpcHandlers` does the same for the generated RPC
* definitions. Both layers route execute, discard, and resume requests to the
* matching workflow operation, while the `WorkflowEngine` and workflow handler
* services stay on the server side.
*
* @since 4.0.0
*/
import type { NonEmptyReadonlyArray } from "../../Array.ts";
import * as Layer from "../../Layer.ts";
import type * as HttpApi from "../httpapi/HttpApi.ts";
import type * as HttpApiGroup from "../httpapi/HttpApiGroup.ts";
import type * as Rpc from "../rpc/Rpc.ts";
import type * as Workflow from "./Workflow.ts";
import type { WorkflowEngine } from "./WorkflowEngine.ts";
/**
* Creates handlers for a workflow HTTP API group, wiring execute, discard, and
* resume endpoints to the supplied workflows.
*
* @category layers
* @since 4.0.0
*/
export declare const layerHttpApi: <ApiId extends string, Groups extends HttpApiGroup.Any, Name extends HttpApiGroup.Name<Groups>, const Workflows extends NonEmptyReadonlyArray<Workflow.Any>>(api: HttpApi.HttpApi<ApiId, Groups>, name: Name, workflows: Workflows) => Layer.Layer<HttpApiGroup.ApiGroup<ApiId, Name>, never, WorkflowEngine | Workflow.RequirementsHandler<Workflows[number]>>;
/**
* Creates RPC handlers for the supplied workflows, wiring execute, discard,
* and resume RPCs to workflow operations.
*
* @category layers
* @since 4.0.0
*/
export declare const layerRpcHandlers: <const Workflows extends NonEmptyReadonlyArray<Workflow.Any>, const Prefix extends string = "">(workflows: Workflows, options?: {
readonly prefix?: Prefix;
}) => Layer.Layer<RpcHandlers<Workflows[number], Prefix>, never, WorkflowEngine | Workflow.RequirementsHandler<Workflows[number]>>;
/**
* Union of RPC handler services required to serve the generated workflow
* execute, discard, and resume RPCs.
*
* @category services
* @since 4.0.0
*/
export type RpcHandlers<Workflows extends Workflow.Any, Prefix extends string> = Workflows extends Workflow.Workflow<infer _Name, infer _Payload, infer _Success, infer _Error> ? Rpc.Handler<`${Prefix}${_Name}`> | Rpc.Handler<`${Prefix}${_Name}Discard`> | Rpc.Handler<`${Prefix}${_Name}Resume`> : never;
//# sourceMappingURL=WorkflowProxyServer.d.ts.map

Xet Storage Details

Size:
2.38 kB
·
Xet hash:
271366bff3ee43b0442ea363f31926745c682bd289a3763d9256eab25a3277e1

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.