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;
