UNPKG

@wepublish/api

Version:
92 lines (91 loc) 4.1 kB
import { Context } from '../../context'; import { MetadataProperty, Prisma, PrismaClient, Subscription, SubscriptionDeactivationReason } from '@prisma/client'; import { MemberContext } from '../../memberContext'; import { PaymentProvider } from "../../../../payment-api/src"; export declare const deleteSubscriptionById: (id: string, authenticate: Context['authenticate'], subscription: PrismaClient['subscription']) => Prisma.Prisma__SubscriptionClient<{ deactivation: import("@prisma/client/runtime/library").GetResult<{ id: string; createdAt: Date; modifiedAt: Date; date: Date; reason: SubscriptionDeactivationReason; subscriptionID: string; }, unknown> & {}; periods: (import("@prisma/client/runtime/library").GetResult<{ id: string; createdAt: Date; modifiedAt: Date; startsAt: Date; endsAt: Date; paymentPeriodicity: import(".prisma/client").PaymentPeriodicity; amount: number; invoiceID: string; subscriptionId: string; }, unknown> & {})[]; properties: (import("@prisma/client/runtime/library").GetResult<{ id: string; createdAt: Date; modifiedAt: Date; key: string; value: string; public: boolean; articleRevisionId: string; pageRevisionId: string; subscriptionId: string; userId: string; }, unknown> & {})[]; } & import("@prisma/client/runtime/library").GetResult<{ id: string; createdAt: Date; modifiedAt: Date; paymentPeriodicity: import(".prisma/client").PaymentPeriodicity; monthlyAmount: number; autoRenew: boolean; startsAt: Date; paidUntil: Date; paymentMethodID: string; memberPlanID: string; userID: string; }, unknown> & {}, never, import("@prisma/client/runtime/library").DefaultArgs>; export declare const cancelSubscriptionById: (id: string, reason: SubscriptionDeactivationReason, authenticate: Context['authenticate'], subscriptionDB: PrismaClient['subscription'], memberContext: MemberContext) => Promise<import("@prisma/client/runtime/library").GetResult<{ id: string; createdAt: Date; modifiedAt: Date; paymentPeriodicity: import(".prisma/client").PaymentPeriodicity; monthlyAmount: number; autoRenew: boolean; startsAt: Date; paidUntil: Date; paymentMethodID: string; memberPlanID: string; userID: string; }, unknown> & {}>; type CreateSubscriptionInput = Prisma.SubscriptionCreateInput & { properties: Prisma.MetadataPropertyCreateManySubscriptionInput[]; }; export declare const createSubscription: ({ properties, ...input }: CreateSubscriptionInput, authenticate: Context['authenticate'], memberContext: Context['memberContext'], subscriptionClient: PrismaClient['subscription']) => Promise<import("../../..").SubscriptionWithRelations>; type UpdateSubscriptionInput = Prisma.SubscriptionUncheckedUpdateInput & { properties: Prisma.MetadataPropertyCreateManySubscriptionInput[]; deactivation: Prisma.SubscriptionDeactivationCreateWithoutSubscriptionInput | null; }; export declare const handleRemoteManagedSubscription: ({ paymentProvider, input, originalSubscription }: { paymentProvider: PaymentProvider; input: Subscription; originalSubscription: Subscription & { properties: MetadataProperty[]; }; }) => Promise<void>; export declare const updateAdminSubscription: (id: string, { properties, ...input }: UpdateSubscriptionInput, authenticate: Context['authenticate'], memberContext: Context['memberContext'], subscriptionClient: PrismaClient['subscription'], userClient: PrismaClient['user'], paymentProviders: PaymentProvider[]) => Promise<import("@prisma/client/runtime/library").GetResult<{ id: string; createdAt: Date; modifiedAt: Date; paymentPeriodicity: import(".prisma/client").PaymentPeriodicity; monthlyAmount: number; autoRenew: boolean; startsAt: Date; paidUntil: Date; paymentMethodID: string; memberPlanID: string; userID: string; }, unknown> & {}>; export {};