@upstash/workflow
Version:
Durable, Reliable and Performant Serverless Functions
34 lines (31 loc) • 2.02 kB
TypeScript
import { NextApiHandler, NextApiRequest, NextApiResponse } from 'next';
import { R as RouteFunction, n as PublicServeOptions, y as InvokableWorkflow } from './types-Q3dM0UlR.js';
import { s as serveManyBase } from './serve-many-CXqQP3RI.js';
import '@upstash/qstash';
import 'zod';
import 'ai';
import '@ai-sdk/openai';
/**
* Serve method to serve a Upstash Workflow in a Nextjs 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>) => {
POST: (request: Request) => 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"]) => {
POST: (request: Request) => Promise<any>;
};
declare const servePagesRouter: <TInitialPayload = unknown, TResult = unknown>(routeFunction: RouteFunction<TInitialPayload, TResult>, options?: PublicServeOptions<TInitialPayload>) => {
handler: NextApiHandler;
};
declare const createWorkflowPagesRouter: <TInitialPayload, TResult>(routeFunction: RouteFunction<TInitialPayload, TResult>, options?: PublicServeOptions<TInitialPayload> | undefined) => InvokableWorkflow<TInitialPayload, TResult>;
declare const serveManyPagesRouter: (workflows: Parameters<typeof serveManyBase>[0]["workflows"], options?: Parameters<typeof serveManyBase>[0]["options"]) => {
handler: (req: NextApiRequest, res: NextApiResponse<any>) => Promise<any>;
};
export { createWorkflow, createWorkflowPagesRouter, serve, serveMany, serveManyPagesRouter, servePagesRouter };