@chevre/domain
Version:
Chevre Domain Library for Node.js
35 lines (34 loc) • 1.6 kB
TypeScript
import type { CredentialsRepo } from '../../../repo/credentials';
import type { IMinimizedIndividualEvent } from '../../../repo/event';
import type { PaymentServiceRepo } from '../../../repo/paymentService';
import type { PaymentServiceProviderRepo } from '../../../repo/paymentServiceProvider';
import * as factory from '../../../factory';
import { Settings } from '../../../settings';
interface ICheckResult {
purchaseNumberAuthIn: factory.action.check.paymentMethod.movieTicket.IPurchaseNumberAuthIn;
purchaseNumberAuthResult: factory.action.check.paymentMethod.movieTicket.IPurchaseNumberAuthResult;
}
type IEvent4checkByIdentifier = Pick<IMinimizedIndividualEvent<factory.eventType.ScreeningEvent>, 'id' | 'typeOf' | 'project' | 'coaInfo' | 'startDate'> & {
offers: {
offeredThrough?: factory.event.screeningEvent.IOfferedThrough | factory.event.screeningEvent.IOffer4COA['offeredThrough'];
};
superEvent: {
workPerformed: {
identifier: string;
};
};
};
interface ICheckByIdentifierParams {
movieTickets: factory.action.check.paymentMethod.movieTicket.IMovieTicket[];
seller: {
id: string;
};
screeningEvent: IEvent4checkByIdentifier;
paymentServiceId: string;
}
declare function processPurchaseNumberAuth(params: ICheckByIdentifierParams): (repos: {
credentials: CredentialsRepo;
paymentService: PaymentServiceRepo;
paymentServiceProvider: PaymentServiceProviderRepo;
}, settings: Settings) => Promise<ICheckResult>;
export { ICheckByIdentifierParams, ICheckResult, processPurchaseNumberAuth };