@sourceloop/ctrl-plane-subscription-service
Version:
Subscription management microservice for SaaS control plane.
20 lines (19 loc) • 1.33 kB
TypeScript
import { Getter } from '@loopback/core';
import { BelongsToAccessor, Entity } from '@loopback/repository';
import { Subscription, SubscriptionRelations, Plan, Invoice } from '../../models';
import { PlanRepository } from './plan.repository';
import { IAuthUserWithPermissions } from '@sourceloop/core';
import { InvoiceRepository } from './invoice.repository';
import { SequelizeDataSource } from '@loopback/sequelize';
import { SequelizeUserModifyCrudRepository } from '@sourceloop/core/sequelize';
export declare class SubscriptionRepository<T extends Subscription = Subscription> extends SequelizeUserModifyCrudRepository<T, typeof Subscription.prototype.id, SubscriptionRelations> {
readonly getCurrentUser: Getter<IAuthUserWithPermissions>;
protected planRepositoryGetter: Getter<PlanRepository>;
protected invoiceRepositoryGetter: Getter<InvoiceRepository>;
private readonly subscription;
readonly plan: BelongsToAccessor<Plan, typeof Subscription.prototype.id>;
readonly invoice: BelongsToAccessor<Invoice, typeof Subscription.prototype.id>;
constructor(dataSource: SequelizeDataSource, getCurrentUser: Getter<IAuthUserWithPermissions>, planRepositoryGetter: Getter<PlanRepository>, invoiceRepositoryGetter: Getter<InvoiceRepository>, subscription: typeof Entity & {
prototype: T;
});
}