import { PayloadAction } from "@reduxjs/toolkit";
import { SubInstanceSelection } from "../../../core/helpers/dom-data-id-helpers";
import { NodeId, SelectorData } from "../../../data/types";
export type SelectionState = {
    selectorData: SelectorData;
    elementIds: NodeId[];
    subInstances: SubInstanceSelection[];
};
export interface SelectionReduxState {
    selection: SelectionState | null;
}
export declare const selectionSlice: import("@reduxjs/toolkit").Slice<SelectionReduxState, {
    updateSelectionRaw: (state: import("immer/dist/internal").WritableDraft<SelectionReduxState>, action: PayloadAction<{
        elementIds: NodeId[];
        selectorData: SelectorData;
        subInstances: SubInstanceSelection[];
    } | null>) => void;
    updateSelectionIdsRaw: (state: import("immer/dist/internal").WritableDraft<SelectionReduxState>, action: PayloadAction<{
        elementIds: NodeId[];
        selectorData: SelectorData;
        subInstances: SubInstanceSelection[];
    } | null>) => void;
    toggleSelectionRaw: (state: import("immer/dist/internal").WritableDraft<SelectionReduxState>, action: PayloadAction<{
        elementId: NodeId;
        selectorData: SelectorData;
        subInstances: SubInstanceSelection[];
    }>) => void;
}, "selection">;
export declare const updateSelectionRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    elementIds: NodeId[];
    selectorData: SelectorData;
    subInstances: SubInstanceSelection[];
} | null, "selection/updateSelectionRaw">, updateSelectionIdsRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    elementIds: NodeId[];
    selectorData: SelectorData;
    subInstances: SubInstanceSelection[];
} | null, "selection/updateSelectionIdsRaw">, toggleSelectionRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    elementId: NodeId;
    selectorData: SelectorData;
    subInstances: SubInstanceSelection[];
}, "selection/toggleSelectionRaw">;
export declare const selectionReducer: import("redux").Reducer<SelectionReduxState>;
//# sourceMappingURL=selection.d.ts.map