import { TextInputProps, ViewStyle } from 'react-native'; export interface LoginParams { navigation?: any; formState?: any; useLoginByEmail?: boolean; useLoginByCellphone?: boolean; loginTab?: string; handleChangeTab?: any; loginButtonText?: string; onNavigationRedirect?: any; registerButtonText?: string; forgotButtonText?: string; verifyPhoneState?: any; checkPhoneCodeState?: any; setCheckPhoneCodeState?: any; handleButtonLoginClick?: any; handleSendVerifyCode?: any; handleCheckPhoneCode?: any; notificationState?: any; handleReCaptcha?: (token: string) => void; enableReCaptcha?: any; } export interface ProfileParams { navigation?: any; isEdit?: boolean; formState?: any; toggleIsEdit?: any; cleanFormState?: any; setFormState?: any; handleChangeInput?: any; handleButtonUpdateClick?: any; handlechangeImage?: any; validationFields?: any; showField?: any; isRequiredField?: any; handleRemoveAccount?: any, removeAccountState?: any } export interface AddressListParams { navigation?: any; addressList?: any; isFromProfile?: boolean; nopadding?: boolean; userId?: any; handleDelete?: any; handleSetDefault?: any; setAddressList?: any; isGoBack?: boolean; route?: any; actionStatus?: any; isFromBusinesses?: boolean; isFromProductsList?: boolean; afterSignup?: boolean; isFromCheckout?: boolean } export interface AddressFormParams { navigation?: any, updateChanges?: any, address?: any, formState?: any, isEditing?: boolean, handleChangeInput?: any, addressState?: any, addressesList?: any, saveAddress?: any, userCustomerSetup?: boolean, isRequiredField?: (field: string) => {}, isGuestUser?: boolean, useValidationFileds?: boolean, isSelectedAfterAdd?: boolean, onSaveAddress?: any, isFromProductsList?: boolean, hasAddressDefault?: any, isFromCheckout?: boolean afterSignup?: boolean isGuestFromStore?: boolean businessId?: number productId?: number categoryId?: number store?: string } export interface SignupParams { navigation?: any; loginButtonText?: string; signupButtonText?: string; onNavigationRedirect?: any; formState?: any; validationFields?: any; showField?: any; isRequiredField?: any; useChekoutFileds?: boolean; useSignupByEmail?: boolean; useSignupByCellphone?: boolean; handleSuccessSignup?: any; handleButtonSignupClick?: any; verifyPhoneState?: any; checkPhoneCodeState?: any; setCheckPhoneCodeState?: any; handleSendVerifyCode?: any; handleCheckPhoneCode?: any; notificationState?: any; enableReCaptcha?: boolean; handleReCaptcha?: (token: string) => void; } export interface PhoneInputParams { data?: any; handleData?: any; defaultValue?: any; defaultCode?: number | null; forwardRef?: any; textInputProps?: TextInputProps } export interface LanguageSelectorParams { languagesState?: any; currentLanguage?: string; handleChangeLanguage?: any; isFromProfile?: boolean, pickerStyle?: any } export interface BusinessesListingParams { navigation?: any; businessesList: { businesses: Array, loading: boolean, error: null | string }; searchValue: string; getBusinesses: (newFetch?: boolean) => void; handleChangeBusinessType?: any; handleBusinessClick?: void; paginationProps?: any; handleChangeSearch?: any; images?: any; businessTypes?: any; defaultBusinessType?: any; } export interface BusinessTypeFilterParams { businessTypes?: Array; handleChangeBusinessType: any; currentTypeSelected?: any; defaultBusinessType?: string | null; images?: any typesState?: any } export interface BusinessControllerParams { key?: number; business?: any; handleCustomClick?: any; orderType?: any; handleClick?: any; isBusinessOpen?: boolean; businessWillCloseSoonMinutes?: number; isBusinessClose?: number; getBusinessOffer: any; } export interface BusinessProductsListingParams { navigation?: any; errors: any; businessState: { business: any, loading: boolean, error: null }; categoryState: any; searchValue?: string; featuredProducts: boolean; handleChangeSearch?: any; categorySelected: any; handleSearchRedirect: any; errorQuantityProducts?: boolean; header?: any; logo?: any; productModal?: any; businessId?: number; categoryId?: number; productId?: number; getNextProducts?: () => {}; handleChangeCategory: (value: any) => {}; setProductLogin?: () => {}; updateProductModal?: (value: any) => {} } export interface BusinessBasicInformationParams { businessState?: any; openBusinessInformation?: any; isBusinessInfoShow?: boolean; header?: any; logo?: any; } export interface BusinessProductsCategoriesParams { categories: Array; // handlerClickCategory: any; onClickCategory: any; openBusinessInformation: any; categorySelected: any; featured: boolean; loading?: any; } export interface BusinessProductsListParams { errors?: any; businessId?: number; category?: any; categories?: Array; categoryState?: any; onProductClick?: any; handleSearchRedirect?: () => {}; featured?: any; searchValue?: any; handleClearSearch?: (value: any) => {}; isBusinessLoading?: any, errorQuantityProducts?: boolean, handleCancelSearch?: () => void } export interface SingleProductCardParams { businessId: any, product: any; isSoldOut: boolean; onProductClick?: any; } export interface BusinessInformationParams { navigation?: any, businessState?: any; businessSchedule?: Array; businessLocation?: any business?: any } export interface BusinessReviewsParams { businessState: { business: any, loading: boolean, error: null }; reviewsList: { reviews: any, loading: boolean, error: null }; } export interface SearchBarParams { searchValue?: any; lazyLoad?: boolean; placeholder: string; isCancelButtonShow?: boolean; noBorderShow?: boolean; onSearch: (value: any) => {}; onCancel?: any; } export interface NotFoundSourceParams { image?: any, content?: string, btnTitle?: string, conditioned?: boolean, onClickButton?: any, children?: any } export interface OrdersOptionParams { orderList?: any, activeOrders?: boolean, pagination?: any, titleContent?: string, customArray?: Array, loadMoreOrders?: () => {}, onNavigationRedirect?: any, orderStatus?: any, navigation?: any, loadOrders?: any, setOrderList?: any, setOrdersLength?: ({ activeOrdersLength, previousOrdersLength }: { activeOrdersLength: number, previousOrdersLength: number }) => void, ordersLength: { activeOrdersLength: number, previousOrdersLength: number } } export interface ActiveOrdersParams { orders?: any, pagination?: any, getOrderStatus?: any, reorderLoading?: boolean, customArray?: Array setScreen?: any, screen?: any, isPreorders?: boolean, preordersLength: number, loadMoreOrders?: () => {}, onNavigationRedirect?: (route: string, params?: any) => {} } export interface PreviousOrdersParams { orders?: any, pagination?: any, getOrderStatus?: any, orderID?: number reorderLoading?: boolean, loadMoreOrders?: () => {}, handleReorder: (order: any) => {}, onNavigationRedirect?: (route: string, params?: any) => {} } export interface OrderDetailsParams { navigation?: any; messagesReadList?: any; urlToShare?: string; messages?: any; handleAssignDriver?: (id: any) => {}; handleChangeOrderStatus?: (status: any) => {}; order?: any; handleOrderRedirect?: () => {}; setMessages?: () => {}; readMessages?: () => {}; isFromCheckout?: boolean; driverLocation?: any; isFromRoot?: any; goToBusinessList?: any; onNavigationRedirect?: any; getOrder?: () => {} } export interface ProductItemAccordionParams { key?: any; isCartPending?: boolean, isCartProduct?: boolean, product?: any, getProductMax?: any, changeQuantity?: (product: any, quantity: number) => {}, onDeleteProduct?: (product: any) => void, onEditProduct?: (product: any) => void, offsetDisabled?: any, isFromCheckout?: any } export interface ReviewOrderParams { order?: { id: number, businessId: number, logo: string, driver: any, products: Array, review: any, user_review: any }, stars?: any, handleChangeInput?: any, handleChangeRating?: any, handleSendReview?: any, formState?: any, navigation?: any, setIsReviewed?: (isReviewed: boolean) => {}, handleReviewState?: any, setStars?: any, onNavigationRedirect?: any } export interface ReviewProductParams { navigation?: any, onNavigationRedirect?: any, order?: { orderId: number, businessId: number, logo: string, driver: any, products: Array, review: any, user_review: any }, formState?: any, handleChangeFormState?: any, handleSendProductReview?: any } export interface ReviewDriverParams { navigation?: any, onNavigationRedirect?: any, order?: { orderId: number, businessId: number, logo: string, driver: any, products: Array, review: any, user_review: any }, formState?: any, setIsDriverReviewed?: (isReviewed: boolean) => {}, dirverReviews?: any, setDriverReviews?: any, handleSendDriverReview?: any } export interface SingleProductReviewParams { product: any, formState?: any, handleChangeFormState?: any, } export interface MessagesParams { type?: string, order?: any, orderId?: number, messages?: any, message?: string, image?: string, messagesToShow?: any, sendMessage?: any, handleSend?: () => {}, setImage?: (image: string | null) => {}, setMessage?: (comment: string) => {}, setMessages?: () => {}, readMessages?: () => {}, } export interface ViewInterface { navigation?: any; onLogin?: any; title?: string; subTitle?: string; backgroundColor?: string; wrapperStyle?: ViewStyle; borderRadius?: any; border?: string; placeHolderColor?: string; buttonBackground?: string; inputMargin?: string; loginButtonText?: string; loginButtonBackground?: string; loginButtonBorder?: string; buttonBorder?: string; registerButtonText?: string; registerButtonBackground?: string; registerButtonBorderColor?: string; loginButtonBorderColor?: string; onRegister?: any; onForgot?: any; forgotButtonText?: string; } export interface FloatingButtonParams { btnLeftValue?: string; btnRightValue?: string; btnText: string handleButtonClick?: any; disabled?: boolean; isSecondaryBtn?: boolean; btnLeftValueShow?: boolean; btnRightValueShow?: boolean; handleClick?: any; } export interface MomentOptionParams { navigation: any; nopadding?: boolean; datesList: Array; hoursList: Array; dateSelected?: any; timeSelected?: any; isAsap?: boolean; handleAsap: () => {}; handleChangeDate: (value: any) => {}; handleChangeTime: (value: any) => {}; } export interface OrderTypeSelectParams { handleChangeOrderType: (value: any) => {}; typeSelected?: number; defaultValue?: number; configTypes?: Array; orderTypes: Array; } export interface UpsellingProductsParams { isCustomMode?: boolean; upsellingProducts?: any; business?: any; setOpenUpselling?: any; onRedirect?: any; businessId?: number; cartProducts?: Array; handleUpsellingPage: () => void; openUpselling: boolean; canOpenUpselling?: boolean; setCanOpenUpselling?: (value: any) => void; } export interface GoogleMapsParams { location: { lat: number, lng: number } handleChangeAddressMap?: (address: any, details: any) => void setErrors?: (error: string) => void maxLimitLocation?: number readOnly?: boolean markerTitle?: string, saveLocation?: boolean, isSetInputs?: boolean, locations?: Array, setSaveLocation?: (val: boolean) => void, handleToggleMap?: () => void } export interface AppleLoginParams { handleErrors?: (error: string) => {}, handleLoading?: (val: boolean) => void, handleSuccessApple?: (result: any) => void, notificationState?: any, } export interface ShareComponentParams { orderId?: number; hashkey?: string; } export interface AccountParams { navigation: any; formState?: any; isEdit?: boolean; cleanFormState?: any; toggleIsEdit?: any; validationFields?: any; handleButtonUpdateClick?: any; } export interface HelpParams { navigation: any; } export interface LastOrdersParams { orderList?: any, onRedirect?: any, } export interface HelpOrderParams { navigation: any; } export interface HelpGuideParams { navigation: any; } export interface HelpAccountAndPaymentParams { navigation: any; } export interface StripeMethodFormParams { cart: any; handleSource: ({ id, card }: { id: string, card: any }) => void; onCancel: () => void; setErrors: (error: string) => void; paymethod: string; devMode?: boolean; setMethodPaySupported?: any placeByMethodPay?: any methodPaySupported?: any, setPlaceByMethodPay?: any, cartTotal?: number, androidAppId?: string, businessNames?: Array }