import { Order, Orders, RefundArgs, RequestError, RequestStatus } from '@open-tender/types';
import { AppState } from '../app';
export interface RefundState {
    previous: Orders | null;
    refund: Order | null;
    loading: RequestStatus;
    error: RequestError;
    compeleted: boolean;
}
export declare enum RefundActionType {
    FetchPreviousRefunds = "refund/getPreviousRefunds",
    ValidateRefund = "refund/validateRefund",
    SubmitRefund = "refund/submitRefund"
}
export declare const fetchPreviousRefunds: import("@reduxjs/toolkit").AsyncThunk<Orders, string, {
    state: AppState;
    rejectValue: RequestError;
    dispatch?: import("redux").Dispatch<import("redux").UnknownAction> | undefined;
    extra?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const validateRefund: import("@reduxjs/toolkit").AsyncThunk<Order, RefundArgs, {
    state: AppState;
    rejectValue: RequestError;
    dispatch?: import("redux").Dispatch<import("redux").UnknownAction> | undefined;
    extra?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const submitRefund: import("@reduxjs/toolkit").AsyncThunk<Order, RefundArgs, {
    state: AppState;
    rejectValue: RequestError;
    dispatch?: import("redux").Dispatch<import("redux").UnknownAction> | undefined;
    extra?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const resetRefund: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"refund/resetRefund">;
export declare const selectRefund: (state: AppState) => RefundState;
export declare const refundReducer: import("redux").Reducer<RefundState>;
