import { AppState } from '../../app';
import { Order, OrderRating, RequestError, RequestStatus } from '@open-tender/types';
export interface CustomerOrderState {
    entity: Order | null;
    error: RequestError;
    loading: RequestStatus;
}
export declare enum CustomerOrderActionType {
    FetchCustomerOrder = "customer/fetchCustomerOrder",
    UpdateCustomerOrderRating = "customer/updateCustomerOrderRating"
}
export declare const fetchCustomerOrder: import("@reduxjs/toolkit").AsyncThunk<Order, number, {
    state: AppState;
    rejectValue: RequestError;
    dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
    extra?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const updateCustomerOrderRating: import("@reduxjs/toolkit").AsyncThunk<void, {
    orderId: number;
    data: OrderRating;
}, {
    state: AppState;
    rejectValue: RequestError;
    dispatch?: import("redux").Dispatch<import("redux").AnyAction> | undefined;
    extra?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const resetCustomerOrder: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"order/resetCustomerOrder">, resetCustomerOrderError: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"order/resetCustomerOrderError">, setCustomerOrder: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "order/setCustomerOrder">;
export declare const selectCustomerOrder: ((state: import("redux").EmptyObject & {
    alerts: import("@open-tender/types").Alerts;
    allergens: import("..").AllergensState;
    announcements: import("..").AnnouncementsState;
    checkout: import("..").CheckoutState;
    completedOrders: import("..").CompletedOrdersState;
    config: import("..").ConfigState;
    confirmation: import("..").ConfirmationState;
    customer: import("redux").CombinedState<{
        account: import("./account").AccountState;
        communicationPreferences: import("./communicationPreferences").CustomerCommunicationPrefsState;
        creditCards: import("./creditCards").CustomerCreditCardsState;
        allergens: import("./allergens").CustomerAllergensState;
        addresses: import("./addresses").CustomerAddressesState;
        favorites: import("./favorites").CustomerFavoritesState;
        fcmToken: import("./fcmToken").CustomerFcmTokenState;
        giftCards: import("./giftCards").CustomerGiftCardsState;
        groupOrders: import("./groupOrders").CustomerGroupOrdersState;
        history: import("./history").CustomerHistoryState;
        houseAccounts: import("./houseAccounts").CustomerHouseAccountsState;
        loyalty: import("./loyalty").CustomerLoyaltyState;
        order: CustomerOrderState;
        orders: import("./orders").CustomerOrdersState;
        pointsShop: import("./pointsShop").PointsShopState;
        tplsPointsShop: import("./tplsPointsShop").TplsPointsShopState;
        qrcode: import("./qrCode").CustomerQRCodeState;
        rewards: import("./rewards").CustomerRewardsState;
        thanx: import("./thanx").CustomerThanxState;
        tpls: import("./tpls").CustomerTplsState;
    }>;
    deals: import("..").DealsState;
    donations: import("..").DonationState;
    geolocation: import("..").GeoLocationState;
    giftCards: import("..").GiftCardsState;
    groupOrder: import("..").GroupOrderState;
    guest: import("..").GuestState;
    loader: import("..").LoaderState;
    menu: import("..").MenuState;
    menuDisplay: import("..").MenuDisplayState;
    menuItems: import("..").MenuItemsState;
    modal: import("@open-tender/types").Modal;
    misc: import("..").MiscState;
    nav: import("..").NavState;
    navSite: import("..").NavSiteState;
    notifications: import("@open-tender/types").Notifications;
    oneTimePasscode: import("..").OneTimePasscodeState;
    order: import("..").OrderState;
    orderFulfillment: import("..").OrderFulfillmentState;
    orderRating: import("..").OrderRatingState;
    posts: import("..").PostsSlice;
    pushNotifications: import("..").PushNotificationsState;
    qr: import("..").QrState;
    quote: import("..").QuoteState;
    resetPassword: import("..").ResetPasswordState;
    revenueCenters: import("..").RevenueCentersState;
    rewardCode: import("..").RewardCodeState;
    sidebar: import("..").SidebarState;
    sidebarModal: import("..").SidebarModalState;
    signUp: import("..").SignUpState;
    tags: import("..").TagsState;
    terms: import("..").TermsSlice;
    Unsubscribe: import("..").UnsubscribeState;
    validTimes: import("..").ValidTimesState;
    verifyAccount: import("..").VerifyAccountState;
}) => {
    order: Order | null;
    loading: RequestStatus;
    error: RequestError;
}) & import("reselect").OutputSelectorFields<(args_0: {
    order: Order | null;
    loading: RequestStatus;
    error: RequestError;
}) => {
    order: Order | null;
    loading: RequestStatus;
    error: RequestError;
}, {
    clearCache: () => void;
}> & {
    clearCache: () => void;
};
export declare const customerOrderReducer: import("redux").Reducer<CustomerOrderState, import("redux").AnyAction>;
