import { ActionReducerMapBuilder } from "../../../common/redux/createReducer";
import { InteropStore, LinkerClient, LinkerChannel } from "../types";
export declare type LinkerChannelConfig = {
    name: string;
    color: string;
    border?: string;
    label?: string;
}[];
export declare type InteropLinkChannels = {
    type: "linker/linkChannels";
    payload: {
        channels: string[];
    };
    meta: {
        windowName: string;
    };
};
export declare type InteropUnlinkChannels = {
    type: "linker/unlinkChannels";
    payload: {
        channels?: string[];
    };
    meta: {
        windowName: string;
    };
};
export declare type InteropLinkerSetActiveWindow = {
    type: "linker/setActiveWindow";
    payload: {
        windowName: string;
        showWindowAtMouse?: boolean;
    };
};
declare type LinkerInitializeWindow = {
    channels?: string[];
    windowName: string;
};
declare const _default: {
    getInitialState: () => {
        clients: {
            [windowName: string]: LinkerClient;
        };
        allChannels: LinkerChannel[];
        connectIdToJoinedChannel: Record<string, string>;
        activeWindowName?: string | undefined;
    };
    addReducerCases: (builder: ActionReducerMapBuilder<InteropStore>) => void;
    actions: {
        setActiveWindow: import("@reduxjs/toolkit").ActionCreatorWithPayload<InteropLinkerSetActiveWindow, string>;
        initializeWindow: import("@reduxjs/toolkit").ActionCreatorWithPayload<LinkerInitializeWindow, string>;
        linkChannels: import("@reduxjs/toolkit").ActionCreatorWithPayload<InteropLinkChannels, string>;
        unlinkChannels: import("@reduxjs/toolkit").ActionCreatorWithPayload<InteropUnlinkChannels, string>;
        setSystemChannels: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>;
    };
    initialize: (store: import("redux").Store<InteropStore, import("../../../common/redux/createReducer").AnyAction> & {
        dispatch: <T extends import("redux").Action<any>>(promise: Promise<T>) => Promise<T>;
    }) => void;
};
export default _default;
//# sourceMappingURL=linker.d.ts.map