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; } 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; } 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; } 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; } 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?: string | null; 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 } 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; isCartOnProductsList?: any; 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; scrollViewRef?: any; productListLayout?: any; categoriesLayout?: any; selectedCategoryId?: any; lazyLoadProductsRecommended?: 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, categoriesLayout?: any, setCategoriesLayout?: any } 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; } 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?: { orderId: number, businessId: number, logo: string }, stars?: any, handleChangeInput?: any, handleChangeRating?: any, handleSendReview?: any, formState?: any, navigation?: any, setIsReviewed?: (isReviewed: boolean) => {} } 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; 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 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 HighestRatedBusinessesParams { businessesList: { businesses: Array, loading: boolean, error: null | string }; onBusinessClick?: void; }