import { AppState } from '../../app';
import { CustomerAllergens, RequestError, RequestStatus } from '@open-tender/types';
export interface CustomerAllergensState {
    entities: CustomerAllergens;
    error: RequestError;
    loading: RequestStatus;
    lookup: {
        [key: number | string]: number;
    };
}
export declare enum CustomerAllergensActionType {
    FetchCustomerAllergens = "customer/fetchCustomerAllergens",
    UpdateCustomerAllergens = "customer/updateCustomerAllergens"
}
export declare const fetchCustomerAllergens: import("@reduxjs/toolkit").AsyncThunk<CustomerAllergens, void, {
    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 updateCustomerAllergens: import("@reduxjs/toolkit").AsyncThunk<CustomerAllergens, CustomerAllergens, {
    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 resetCustomerAllergens: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"allergens/resetCustomerAllergens">, setCustomerAllergens: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "allergens/setCustomerAllergens">;
export declare const selectCustomerAllergens: (state: AppState) => CustomerAllergensState;
export declare const customerAllergensReducer: import("redux").Reducer<CustomerAllergensState, import("redux").AnyAction>;
