import { CardFormView } from '@stripe/stripe-react-native'; import { StyleProp, TextStyle, ViewStyle } from 'react-native'; import { IButtonStyles } from '../../components/button/types'; import { ICartTimerStyles, ICartTimerTexts } from '../../components/cartTimer/types'; import { IFormFieldProps } from '../../components/formField/types'; import { IError } from '../../types'; import { IOnCheckoutSuccess } from '../billingInfo/types'; export interface ICheckoutStyles { rootStyle?: ViewStyle; title?: StyleProp; subTitle?: StyleProp; missingStripeConfig?: { container?: StyleProp; message?: StyleProp; exitButton?: IButtonStyles; }; freeRegistrationButton?: IButtonStyles; orderReview?: IOrderReviewStyles; payment?: { container?: StyleProp; title?: StyleProp; cardStyle?: CardFormView.Styles; cardContainer?: StyleProp; button?: IButtonStyles; buttonDisabled?: IButtonStyles; }; cartTimer?: ICartTimerStyles; } export interface IOrderDetailsTicketHolder { hash: string; ticketType: string; holderName?: string; holderEmail?: string; holderPhone?: string; qrData?: string; pdfLink?: string; description?: string; descriptionPlain?: string; } export interface IOrderDetails { eventId: number; ticketName?: string; ticketCost?: string; numberOfTickets: number; eventUserTickets: IOrderDetailsTicketHolder[]; } export interface ICheckoutProps { checkoutData: IOnCheckoutSuccess; onFetchOrderReviewError?: (error: IError) => void; onFetchOrderReviewSuccess?: (data: any) => void; onFetchEventConditionsError?: (error: IError) => void; onFetchEventConditionsSuccess?: (data: any) => void; onCheckoutCompletedSuccess?: (data: IOnCheckoutSuccess) => void; onCheckoutCompletedError?: (error: IError) => void; onPaymentSuccess: () => void; onPaymentError?: (error: IError) => void; onFetchOrderDetailsSuccess?: (orderData: IOrderDetails) => void; onFetchOrderDetailsError?: (error: IError) => void; onStripeInitializeError?: (error: string) => void; onPressExit: () => void; texts?: { title?: string; subTitle?: string; missingStripeConfigMessage?: string; exitButton?: string; payButton?: string; freeRegistrationButton?: string; providePaymentInfo?: string; orderReviewItems?: { event?: string; ticketType?: string; numberOfTickets?: string; price?: string; total?: string; }; cartTimer?: ICartTimerTexts; }; styles?: ICheckoutStyles; onLoadingChange?: (isLoading: boolean) => void; areAlertsEnabled?: boolean; areLoadingIndicatorsEnabled?: boolean; onCartExpired?: () => void; shouldCartTimerNotMinimizeOnTap?: boolean; } export interface IOrderItem { id: string; title: string; value: string; styles?: IOrderItemStyles; } export interface IOrderItemStyles { title?: StyleProp; value?: StyleProp; container?: StyleProp; } interface IOrderReviewStyles { item?: IOrderItemStyles; rootContainer?: StyleProp; } export interface IOrderReviewProps { orderItems: IOrderItem[]; styles?: IOrderReviewStyles; } export interface ICheckoutViewProps { texts?: { title?: string; subTitle?: string; missingStripeConfigMessage?: string; exitButton?: string; cartTimer?: ICartTimerTexts; }; styles?: ICheckoutStyles; orderReviewDataItems: IOrderItem[]; onPressPay: () => void; onPressFreeRegistration: () => void; conditions: IFormFieldProps[]; onFormComplete: (cardDetails: CardFormView.Details) => void; isDataValid?: boolean; isLoading?: boolean; isStripeConfigMissing?: boolean; onPressExit?: () => void; isPaymentRequired?: boolean; isLoadingFreeRegistration?: boolean; } export {}; //# sourceMappingURL=types.d.ts.map