vista-co
Version:
272 lines (271 loc) • 8.15 kB
TypeScript
export interface GetOrderDetailsRequest {
userSessionId: string;
}
export interface GetOrderDetailsResponse {
success: boolean;
message: string;
data?: {
order: {
cinemaId: string;
userSessionId: string;
orderTotalValueInCents: number;
taxValueInCents: number;
bookingFeeTotalValueInCents: number;
bookingFeeTaxValueInCents: number;
ticketFeeTotalValueInCents: number;
loyaltyPointsTotalCost: [];
sessions: [];
concessions: [];
bookingFees: [];
loyaltyMembershipPackageActivation: null;
loyaltyIntegratedGiftCardActivation: null;
appliedGiftCards: [];
appliedLoyaltyPointsPayments: [];
appliedPaymentVouchers: [];
loyaltyPointsPayableValueInCents: number;
createdDateUtc: string;
expiryDateUtc: string;
hasCardPaymentPromotionTickets: boolean;
promotionCards: [];
customer: {
firstName: string;
lastName: string;
email: string;
phone: string;
address: {
zipCode: string;
};
dateOfBirth: string | null;
gender: string;
};
bookingTip: null;
};
suggestedDeals: [];
};
}
export interface CompleteEditRequest {
payments?: {
externalPayments: {
amountInCents: number;
paymentProviderReference: string;
paymentTenderCategory: string;
cardNumberMasked: string;
cardType: string;
}[];
};
refundPayments?: {
externalPayments: {
amountInCents: number;
paymentProviderReference: string;
paymentTenderCategory: string;
cardNumberMasked: string;
cardType: string;
}[];
};
}
export interface CompleteEditResponse {
success: boolean;
message: string;
data?: {
order: {
orderStatus: string;
paymentStatus: string;
totalAmountInCents: number;
createdDateUtc: string;
expiryDateUtc: string;
};
};
error?: {
errorCode: string;
description: string;
};
}
export interface RemoveDealVoucherRequest {
barcode?: string;
promotionId?: string;
redemptions?: number;
}
export interface RemoveDealVoucherResponse {
success: boolean;
message: string;
data?: {
status: string;
};
error?: {
errorCode: string;
description: string;
};
}
export interface ApplyDealVoucherRequest {
barcode?: string;
promotionId?: string;
redemptions?: number;
useAllAvailableRedemptions?: boolean;
}
export interface ApplyDealVoucherResponse {
success: boolean;
message: string;
data?: {
status: string;
appliedRedemptions: number;
remainingRedemptions?: number;
};
error?: {
errorCode: string;
description: string;
};
}
export interface LoyaltyPointsPaymentBalanceResponse {
balancePayableInCents: number;
balancePayable: string;
points: number;
pointsRemaining: number;
pointsRemainingInCents: number;
}
export interface GetLoyaltyPointsPaymentBalanceResult {
success: boolean;
message: string;
data?: LoyaltyPointsPaymentBalanceResponse;
}
export interface SetTicketsRequest {
tickets: Array<{
ticketDetails: {
ticketTypeCode: string;
priceInCents?: number;
voucherBarcode?: string;
voucherBarcodePin?: string;
voucherAreaCategoryCode?: string;
bookingFeeOverrideInCents?: number;
thirdPartyMemberScheme?: {
memberCard: string;
memberDateOfBirth: string;
};
loyaltyRecognitionId?: number;
loyaltyRecognitionSequence?: number;
};
seats?: Array<{
areaNumber: number;
rowIndex: number;
columnIndex: number;
}>;
}>;
bookingFeeOverrideInCents?: number;
bookingMode?: number;
useSeatAutoAllocation?: boolean;
}
export interface SetTicketsResponse {
order: {
cinemaId: string;
userSessionId: string;
orderTotalValueInCents: number;
taxValueInCents: number;
bookingFeeTotalValueInCents: number;
bookingFeeTaxValueInCents: number;
ticketFeeTotalValueInCents: number;
loyaltyPointsTotalCost: Array<{
balanceTypeId: number;
points: number;
balanceTypeName: string;
}>;
sessions: Array<{
id: number;
filmTitle: string;
filmClassification: string;
startTime: string;
allocatedSeating: boolean;
tickets: Array<{
ticketDetails: {
ticketId: number;
ticketTypeCode: string;
ticketCode: string;
description: string;
finalPriceInCents: number;
originalPriceInCents: number;
taxInCents: number;
voucherBarcode?: string;
loyaltyRecognitionId?: string;
loyaltyRecognitionSequence?: number;
};
seats: Array<{
areaCategoryCode: string;
areaNumber: number;
rowIndex: number;
columnIndex: number;
rowDisplay: string;
columnDisplay: string;
}>;
}>;
}>;
concessions: Array<{
id: string;
itemId: string;
description: string;
finalPriceInCents: number;
originalPriceInCents: number;
taxInCents: number;
}>;
customer: {
firstName: string;
lastName: string;
email: string;
phone: string;
address: {
zipCode: string;
};
};
createdDateUtc: string;
expiryDateUtc: string;
};
suggestedDeals?: Array<{
id: string;
description: string;
isSeasonPass: boolean;
isTicketUpgrade: boolean;
limitPerOrder: number;
requiresLoyalty: boolean;
requiresVoucher: boolean;
}>;
}
declare const _default: {
Orders: (cinemaId: string) => Promise<{
success: boolean;
message: string;
data?: GetOrderDetailsResponse["data"];
}>;
SessionCreate: (cinemaId: string) => Promise<{
success: boolean;
message: string;
data?: GetOrderDetailsResponse["data"];
}>;
GetOrderDetails: (req: GetOrderDetailsRequest) => Promise<{
success: boolean;
message: string;
data?: GetOrderDetailsResponse["data"];
}>;
completeEditOrder: (userSessionId: string, request: CompleteEditRequest) => Promise<{
success: boolean;
message: string;
data?: CompleteEditResponse["data"];
}>;
removeDealVoucher: (userSessionId: string, request: RemoveDealVoucherRequest) => Promise<{
success: boolean;
message: string;
data?: RemoveDealVoucherResponse["data"];
}>;
applyDealVoucher: (userSessionId: string, request: ApplyDealVoucherRequest) => Promise<{
success: boolean;
message: string;
data?: ApplyDealVoucherResponse["data"];
}>;
getLoyaltyPointsPaymentBalance: (userSessionId: string) => Promise<{
success: boolean;
message: string;
data?: GetLoyaltyPointsPaymentBalanceResult["data"];
}>;
setTickets: (userSessionId: string, sessionId: number, requestBody: SetTicketsRequest) => Promise<{
success: boolean;
message: string;
data?: SetTicketsResponse;
}>;
};
export default _default;