import { Cashier, DeviceColorScheme, DeviceFontSize, Employee, Order, RequestError } from '@open-tender/types';
import { AppState } from '../app';
export interface PosState {
    terminalId: number | null;
    cashier: Cashier | null;
    manager: Employee | null;
    isOffline: boolean;
    lastOrderId: string | null;
    page: number | null;
    name: string | null;
    notes: string | null;
    fontSize: DeviceFontSize;
    colorScheme: DeviceColorScheme;
    order: Order | null;
    refund: Order | null;
    loading: string | null;
    error: RequestError;
}
export declare enum PosActionType {
    FetchOfflineStatus = "pos/fetchOfflineStatus",
    UpdateOfflineStatus = "pos/updateOfflineStatus",
    PrintPosOrder = "pos/printPosOrder"
}
export declare const fetchOfflineStatus: import("@reduxjs/toolkit").AsyncThunk<boolean, void, {
    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 updateOfflineStatus: import("@reduxjs/toolkit").AsyncThunk<boolean, boolean, {
    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 printPosOrder: import("@reduxjs/toolkit").AsyncThunk<void, string, {
    state: AppState;
    dispatch?: import("redux").Dispatch<import("redux").UnknownAction> | undefined;
    extra?: unknown;
    rejectValue?: unknown;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export declare const resetPos: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"pos/resetPos">, setPosTerminalId: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "pos/setPosTerminalId">, setLastOrderId: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "pos/setLastOrderId">, setMenuPage: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "pos/setMenuPage">, setPosName: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "pos/setPosName">, setPosNotes: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "pos/setPosNotes">, setCashier: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "pos/setCashier">, setManager: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "pos/setManager">, setPosFontSize: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "pos/setPosFontSize">, setPosColorScheme: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "pos/setPosColorScheme">, setPosOrder: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "pos/setPosOrder">, setPosRefund: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "pos/setPosRefund">;
export declare const selectPos: (state: AppState) => PosState;
export declare const selectPosTerminal: (state: AppState) => import("@open-tender/types").PosTerminal | null | undefined;
export declare const selectLastOrderId: (state: AppState) => string | null;
export declare const selectMenuPage: (state: AppState) => number | null;
export declare const selectPosName: (state: AppState) => string | null;
export declare const selectPosNotes: (state: AppState) => string | null;
export declare const selectCashier: (state: AppState) => {
    cashier: null;
    isExpired: boolean;
} | {
    cashier: Cashier;
    isExpired: boolean;
};
export declare const selectManager: (state: AppState) => Employee | null;
export declare const selectIsOffline: (state: AppState) => boolean;
export declare const selectPosOrder: (state: AppState) => Order | null;
export declare const selectPosRefund: (state: AppState) => Order | null;
export declare const selectPosFontSize: (state: AppState) => DeviceFontSize;
export declare const selectPosColorScheme: (state: AppState) => DeviceColorScheme;
export declare const posReducer: import("redux").Reducer<PosState>;
