import { Discount, RequestError, RequestStatus } from '@open-tender/types';
import { AppState } from '../app';
export interface RewardCodeState {
    error: RequestError;
    loading: RequestStatus;
}
export declare enum ClaimRewardCodeActionType {
    ClaimRewardCode = "rewardCode/claimRewardCode"
}
export declare const claimRewardCode: import("@reduxjs/toolkit").AsyncThunk<Discount, {
    rewardCode: string;
    callback?: (() => void) | undefined;
}, {
    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 claimReward: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"rewardCode/claimReward">, resetRewardCode: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"rewardCode/resetRewardCode">;
export declare const selectRewardCode: (state: AppState) => RewardCodeState;
export declare const rewardCodeReducer: import("redux").Reducer<RewardCodeState, import("redux").AnyAction>;
