@chevre/domain
Version:
Chevre Domain Library for Node.js
39 lines (38 loc) • 1.34 kB
TypeScript
import type * as COA from '@motionpicture/coa-service';
import type { ActionRepo } from '../../../repo/action';
import type { EventRepo } from '../../../repo/event';
import type { OrderNumberRepo } from '../../../repo/orderNumber';
import type { ProjectRepo } from '../../../repo/project';
import type { TransactionRepo } from '../../../repo/transaction';
import * as factory from '../../../factory';
interface IAcceptRepos {
action: ActionRepo;
event: EventRepo;
orderNumber: OrderNumberRepo;
project: ProjectRepo;
transaction: TransactionRepo;
reserveService: COA.service.Reserve;
masterService: COA.service.Master;
}
type IAccepteOfferParams = Pick<factory.task.acceptCOAOffer.IData, 'object' | 'potentialActions' | 'purpose' | 'agent'> & {
sameAs: {
id: string;
};
isMember: boolean;
};
/**
* COA興行オファー採用
*/
declare function acceptOffer(params: IAccepteOfferParams): (repos: IAcceptRepos) => Promise<void>;
/**
* COA興行オファー採用変更
*/
declare function reAcceptOffer(params: IAccepteOfferParams & {
potentialActions: factory.task.acceptCOAOffer.IData['potentialActions'] & {
/**
* 元の承認アクションID
*/
id: string;
};
}): (repos: IAcceptRepos) => Promise<void>;
export { acceptOffer, reAcceptOffer };