@wepublish/api
Version:
API core for we.publish.
15 lines (14 loc) • 1.24 kB
TypeScript
import { Context } from '../../context';
import { PrismaClient, Prisma, Invoice } from '@prisma/client';
import { InvoiceWithItems } from "../../../../payment-api/src";
export declare const deleteInvoiceById: (id: string, authenticate: Context['authenticate'], invoice: PrismaClient['invoice']) => Promise<Invoice>;
type CreateInvoiceInput = Omit<Prisma.InvoiceUncheckedCreateInput, 'items' | 'modifiedAt'> & {
items: Prisma.InvoiceItemUncheckedCreateWithoutInvoicesInput[];
};
export declare const createInvoice: ({ items, ...input }: CreateInvoiceInput, authenticate: Context['authenticate'], invoice: PrismaClient['invoice']) => Promise<InvoiceWithItems>;
type UpdateInvoiceInput = Omit<Prisma.InvoiceUncheckedUpdateInput, 'items' | 'modifiedAt' | 'createdAt'> & {
items: Prisma.InvoiceItemUncheckedCreateWithoutInvoicesInput[];
};
export declare const updateInvoice: (id: string, { items, ...input }: UpdateInvoiceInput, authenticate: Context['authenticate'], invoice: PrismaClient['invoice']) => Promise<InvoiceWithItems>;
export declare const markInvoiceAsPaid: (id: string, authenticate: Context['authenticate'], userSession: Context['authenticateUser'], prismaClient: PrismaClient) => Promise<InvoiceWithItems>;
export {};