@wepublish/api
Version:
API core for we.publish.
33 lines (32 loc) • 1.27 kB
TypeScript
import { DateFilter } from './common';
import { MetadataProperty, PaymentPeriodicity, Subscription, SubscriptionDeactivation, SubscriptionDeactivationReason, SubscriptionPeriod } from '@prisma/client';
export declare enum SubscriptionSort {
CreatedAt = "createdAt",
ModifiedAt = "modifiedAt"
}
export interface SubscriptionFilter {
readonly startsAtFrom?: DateFilter;
readonly startsAtTo?: DateFilter;
readonly paidUntilFrom?: DateFilter;
readonly paidUntilTo?: DateFilter;
readonly deactivationDateFrom?: DateFilter;
readonly deactivationDateTo?: DateFilter;
readonly cancellationDateFrom?: DateFilter;
readonly cancellationDateTo?: DateFilter;
readonly deactivationReason?: SubscriptionDeactivationReason;
readonly autoRenew?: boolean;
readonly paymentMethodID?: string;
readonly memberPlanID?: string;
readonly paymentPeriodicity?: PaymentPeriodicity;
readonly userHasAddress?: boolean;
readonly userID?: string;
}
export type SubscriptionWithRelations = Subscription & {
periods: SubscriptionPeriod[];
properties: MetadataProperty[];
deactivation: SubscriptionDeactivation | null;
};
export type SubscribersPerMonth = {
readonly month: string;
readonly subscriberCount: number;
};