@briswell/bw-domain
Version:
Domain Library for Node.js
21 lines (20 loc) • 702 B
TypeScript
import * as factory from '@briswell/bw-factory';
import * as Sequelize from 'sequelize';
import { IBillingInstance, IBillingModel } from '../model/billing';
export default class BillingRepository {
readonly billingModel: IBillingModel;
private readonly customerModel;
constructor(db: Sequelize.Sequelize);
/**
* 検索
* @param params 検索条件
*/
search(params: factory.billing.searchCondition): Promise<IBillingInstance[]>;
/**
* IDがある場合更新する、ない場合新しい作成する
* @param params データ
*/
upsert(params: factory.billing.attributes & {
userId: number;
}): Promise<IBillingInstance | null>;
}