21 lines
665 B
TypeScript
21 lines
665 B
TypeScript
import { Result } from '../../shared/result/Result';
|
|
import { CheckoutConfirmation } from '../../domain/value-objects/CheckoutConfirmation';
|
|
import { CheckoutPrice } from '../../domain/value-objects/CheckoutPrice';
|
|
import { CheckoutState } from '../../domain/value-objects/CheckoutState';
|
|
|
|
export interface CheckoutConfirmationRequest {
|
|
price: CheckoutPrice;
|
|
state: CheckoutState;
|
|
sessionMetadata: {
|
|
sessionName: string;
|
|
trackId: string;
|
|
carIds: string[];
|
|
};
|
|
timeoutMs: number;
|
|
}
|
|
|
|
export interface ICheckoutConfirmationPort {
|
|
requestCheckoutConfirmation(
|
|
request: CheckoutConfirmationRequest
|
|
): Promise<Result<CheckoutConfirmation>>;
|
|
} |