UNPKG

next-server-actions-parallel

Version:

Run Next.js server actions in parallel. Like tRPC, but without the boilerplate.

28 lines (26 loc) 1.07 kB
/** * Utility function to create a non-blocking server action that can be invoked with {@link runParallelAction}. * Learn more at https://github.com/icflorescu/next-server-actions-parallel. * * @example * const listUsers = createParallelAction(async () => { // 👈 don't forget the `async` keyword * return await prisma.user.findMany(); * }); * * const listProducts = createParallelAction(async () => { * return await prisma.product.findMany(); }) */ declare function createParallelAction<T, U extends unknown[]>(action: (...args: U) => Promise<T>): (...args: U) => Promise<readonly [Promise<T>]>; /** * Utility function to invoke a non-blocking server action created with {@link createParallelAction}. * Learn more at https://github.com/icflorescu/next-server-actions-parallel. * * @example * await Promise.all([ * runParallelAction(listUsers()), * runParallelAction(listProducts()) * ]); */ declare function runParallelAction<T>(result: Promise<readonly [Promise<T>]>): Promise<T>; export { createParallelAction, runParallelAction };