import { RouterHeader } from "../../platform/services/router/types";
import { Action } from "@reduxjs/toolkit";
/**
 * Union of known server addresses for remote redux.
 */
export type RemoteReduxServerAddress = "@@finsemble/remoteRedux/InteropStore" | "@@finsemble/remoteRedux/WindowServiceStore";
export type ActionId = {
    actionUniqueID: string;
    type: string;
};
export type ActionResult = {
    type: string;
    result?: any;
    error?: any;
};
/**
 * Base type for a remote redux action. The @@remote is added automatically by
 * remote redux and can be used to identify the originating application.
 */
export type RemoteReduxAction = {
    "@@remote": {
        windowName: string;
        header: RouterHeader;
    };
};
export type PromiseDispatch = <T extends Action>(promise: Promise<T>) => Promise<T>;
//# sourceMappingURL=types.d.ts.map