@chevre/domain
Version:
Chevre Domain Library for Node.js
34 lines (33 loc) • 1.37 kB
TypeScript
import * as factory from '../factory';
import { MongoRepository as ActionRepo } from '../repo/action';
import { RedisRepository as ScreeningEventAvailabilityRepo } from '../repo/itemAvailability/screeningEvent';
import { MongoRepository as ReservationRepo } from '../repo/reservation';
import { MongoRepository as TaskRepo } from '../repo/task';
import { MongoRepository as TransactionRepo } from '../repo/transaction';
/**
* 予約を確定する
*/
export declare function confirmReservation(actionAttributesList: factory.action.reserve.IAttributes[]): (repos: {
action: ActionRepo;
reservation: ReservationRepo;
task: TaskRepo;
}) => Promise<void>;
/**
* 進行中の予約をキャンセルする
*/
export declare function cancelPendingReservation(actionAttributesList: factory.action.cancel.reservation.IAttributes[]): (repos: {
action: ActionRepo;
reservation: ReservationRepo;
transaction: TransactionRepo;
eventAvailability: ScreeningEventAvailabilityRepo;
}) => Promise<void>;
/**
* 予約をキャンセルする
*/
export declare function cancelReservation(actionAttributesList: factory.action.cancel.reservation.IAttributes[]): (repos: {
action: ActionRepo;
reservation: ReservationRepo;
task: TaskRepo;
transaction: TransactionRepo;
eventAvailability: ScreeningEventAvailabilityRepo;
}) => Promise<void>;