UNPKG

@upstash/workflow

Version:

Durable, Reliable and Performant Serverless Functions

44 lines (41 loc) 1.78 kB
import { R as RouteFunction, n as PublicServeOptions, y as InvokableWorkflow } from './types-Q3dM0UlR.mjs'; import { s as serveManyBase } from './serve-many-BNusWYgt.mjs'; import '@upstash/qstash'; import 'zod'; import 'ai'; import '@ai-sdk/openai'; type WorkflowBindings = { QSTASH_TOKEN: string; QSTASH_URL?: string; QSTASH_CURRENT_SIGNING_KEY?: string; QSTASH_NEXT_SIGNING_KEY?: string; UPSTASH_WORKFLOW_URL?: string; }; /** * Cloudflare Pages Function arguments */ type PagesHandlerArgs = [{ request: Request; env: Record<string, string | undefined>; }]; /** * Cloudflare Worker arguments */ type WorkersHandlerArgs = [Request, Record<string, string | undefined>]; /** * Serve method to serve a Upstash Workflow in a Cloudflare project * * See for options https://upstash.com/docs/qstash/workflows/basics/serve * * @param routeFunction workflow function * @param options workflow options * @returns */ declare const serve: <TInitialPayload = unknown, TResult = unknown>(routeFunction: RouteFunction<TInitialPayload, TResult>, options?: PublicServeOptions<TInitialPayload>) => { fetch: (...args: PagesHandlerArgs | WorkersHandlerArgs) => Promise<Response>; }; declare const createWorkflow: <TInitialPayload, TResult>(routeFunction: RouteFunction<TInitialPayload, TResult>, options?: PublicServeOptions<TInitialPayload> | undefined) => InvokableWorkflow<TInitialPayload, TResult>; declare const serveMany: (workflows: Parameters<typeof serveManyBase>[0]["workflows"], options?: Parameters<typeof serveManyBase>[0]["options"]) => { fetch: (...params: PagesHandlerArgs | WorkersHandlerArgs) => Promise<any>; }; export { type PagesHandlerArgs, type WorkersHandlerArgs, type WorkflowBindings, createWorkflow, serve, serveMany };