import { ValueOf } from "helpers/ts-type-helpers";
import { AlignmentData, BackgroundData, BorderData, ColorValueOrAlias, ComponentDefinition, ComponentDisplayOptions, ContainerType, CornerData, DeviceType, EnumOption, EnumOptionId, FontValueOrAlias, GridPosition, IconValue, IconValueOrPropDefinitionInstance, ImageDisplayType, ImageValue, ImageValueOrPropDefinitionInstance, InstanceProps, InteractionType, LayoutData, NodeId, NodeType, NumberPropDefinitionInstance, NumberValue, OverflowType, Override, OverrideDataKey, OverridesNodeMap, PaddingData, PaddingType, PageLayout, PopoverPlacementDirection, PopoverType, PropDefinition, SelectorData, SelectorId, SelectorsMap, ShadowData, SizeData, TextAlignmentType, TextStyleType, TextValue, TextValueOrPropDefinitionInstance, TextWhitespaceType, Value } from "../../../data/types";
import { UndoableAction } from "./types";
export type ComponentDefinitions = {
    [definitionId: string]: ComponentDefinition;
};
export interface ComponentState {
    componentDefinitions: ComponentDefinitions;
    componentIds: string[];
}
export declare const componentsSlice: import("@reduxjs/toolkit").Slice<ComponentState, {
    /**
     * Components
     */
    addComponentDefinitionRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        definition: ComponentDefinition;
        insertAtEnd?: boolean;
    }>) => void;
    deleteComponentDefinitionRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
    }>) => void;
    moveComponentDefinition: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        index: number;
    }>) => void;
    updateComponentNameRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        name: string;
    }>) => void;
    updateComponentDisplayOptions: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        displayOptions: ComponentDisplayOptions;
    }>) => void;
    updateComponentNonDeletable: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nonDeletable: boolean;
    }>) => void;
    updateComponentExtraSelectorsRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        extraSelectors: SelectorsMap;
    }>) => void;
    /**
     * Core modifiers
     */
    moveElementRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        elementId: NodeId;
        newParentId: NodeId | null;
        index: number;
        forceMoveRootNode?: boolean;
        forceMoveToRootNode?: boolean;
    }>) => void;
    addElementRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        node: NodeType;
        parentId?: NodeId;
        index: number;
    }>) => void;
    deleteElementRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        elementId: NodeId;
    }>) => void;
    /**
     * Special case modifiers; adding without modifying parent id
     */
    addElementsBulk(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodes: NodeType[];
    }>): void;
    deleteElementsBulk(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeIds: NodeId[];
    }>): void;
    /**
     * Node actions
     */
    updateNodeName: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        name: string;
    }>) => void;
    updateNodeDirection: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        direction: LayoutData["direction"];
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeSpacing: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        spacing: LayoutData["spacing"];
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeWrap: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        wrap: LayoutData["wrap"];
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeAlignment: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        alignment: AlignmentData;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeTextAlignment: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        textAlignment: TextAlignmentType;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeBackground: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        background: BackgroundData | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeBorder: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        border: BorderData | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeCorner: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        corner: CornerData | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeShadow: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        shadow: ShadowData | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodePadding: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        padding: PaddingData;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeVisibility: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        isVisible: boolean;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeOverflow: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        overflow: OverflowType;
    }>) => void;
    updateNodeSize: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        size: Partial<SizeData> | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeTextRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        text: TextValueOrPropDefinitionInstance | NumberPropDefinitionInstance;
    }>) => void;
    updateNodeFontStyle: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        value: FontValueOrAlias;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeFontColor: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        value: ColorValueOrAlias;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeIcon: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        icon: IconValueOrPropDefinitionInstance;
    }>) => void;
    updateNodeIconColor: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        value: ColorValueOrAlias;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodePlaceholder: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        placeholder: TextValueOrPropDefinitionInstance;
    }>) => void;
    updateNodeImageSrc: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        src: ImageValueOrPropDefinitionInstance;
    }>) => void;
    updateNodeImageDisplayType: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        displayType: ImageDisplayType;
    }>) => void;
    updateNodeClassName: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        className: string | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeContainerType: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        containerType: ContainerType | null;
    }>) => void;
    updateNodeTextWhitespaceType: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        whitespace: TextWhitespaceType;
    }>) => void;
    updateNodeTextStyleType: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        textStyle: TextStyleType;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodePaddingType: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        paddingType: PaddingType | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateCustomInstanceProp: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        propDefinitionId: string;
        value: ValueOf<InstanceProps> | null;
    }>) => void;
    updateNodeColumns: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        columns: number[];
    }>) => void;
    /**
     * 12 column grid
     */
    updateNodePosition: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        childNodeId: NodeId;
        position: GridPosition;
    }>) => void;
    deleteNodePosition: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        childNodeId: NodeId;
    }>) => void;
    /**
     * Slots
     */
    addSlotToNodeRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        propDefinitionId: string;
    }>) => void;
    deleteSlotFromNodeRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
    }>) => void;
    /**
     * Prop Definitions
     */
    addPropDefinition: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinition: PropDefinition;
    }>) => void;
    deletePropDefinitionRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
    }>) => void;
    movePropDefinition: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        index: number;
    }>) => void;
    updatePropDefinitionName: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        name: string;
    }>) => void;
    updateTextPropDefinitionDefaultValue: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        value: TextValue;
    }>) => void;
    updateNumberPropDefinitionDefaultValue: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        value: NumberValue;
    }>) => void;
    updateIconPropDefinitionDefaultValue: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        value: IconValue;
    }>) => void;
    updateImagePropDefinitionDefaultValue: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        value: ImageValue;
    }>) => void;
    updatePropDefinitionNonEditable(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        nonEditable: boolean;
    }>): void;
    updateEnumOptionNonEditable(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        enumOptionId: string;
        nonEditable: boolean;
    }>): void;
    addEnumOption: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        enumOption: EnumOption;
    }>) => void;
    updateEnumOptionValue: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        id: string;
        value: string;
    }>) => void;
    deleteEnumOptionRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        enumOptionId: EnumOptionId;
    }>) => void;
    /**
     * Selectors
     */
    addInteractionType(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        selectorId: SelectorId;
        interactionType: InteractionType;
        overrideData?: OverridesNodeMap;
    }>): void;
    deleteInteractionType(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        selectorId: SelectorId;
        interactionType: InteractionType;
    }>): void;
    /**
     * Overrides
     */
    clearOverrideDataByKey(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        selectorId: SelectorId;
        key: OverrideDataKey;
        interaction: InteractionType;
        deviceType: DeviceType;
        useExtraSelector?: boolean;
    }>): void;
    addOverrideDataByKey(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        selectorId: SelectorId;
        key: OverrideDataKey;
        interaction: InteractionType;
        deviceType: DeviceType;
        overrideData: Value;
    }>): void;
    deleteNodeFromOverride(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        selectorId: SelectorId;
        interactionType: InteractionType;
        deviceType: DeviceType;
    }>): void;
    addNodeToOverride(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        selectorId: SelectorId;
        interactionType: InteractionType;
        deviceType: DeviceType;
        data: Override;
    }>): void;
    /**
     * Popovers
     */
    addPopoverRaw(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        popover: PopoverType;
    }>): void;
    deletePopoverRaw(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
    }>): void;
    updatePopoverPlacementDirection(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        placementDirection: PopoverPlacementDirection;
    }>): void;
    updatePopoverPlacementOffset(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        offset: number;
    }>): void;
    /**
     * Compound Components
     */
    addCompoundComponentId(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        compoundComponentId: string;
    }>): void;
    deleteCompoundComponentId(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        parentComponentId: string;
        compoundComponentId: string;
    }>): void;
    /**
     * Page Options
     */
    updatePageOptionLayout(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        layout: PageLayout | null;
    }>): void;
    /**
     * Hacks: very specific actions that violate invariants and should be used with care
     */
    hackilyUpdateComponentRootNode: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        node: NodeType;
    }>) => void;
    hackilyUpdateNodeInstanceComponentId(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        newComponentId: string;
        newComponentName: string;
    }>): void;
    hackilyReplaceComponentRootNodeId: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        elementId: NodeId;
    }>) => void;
    hackilyUndoReplaceComponentRootNodeId: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        elementId: NodeId;
        oldParentId?: NodeId;
        oldParentChildrenIds?: NodeId[];
        oldRootNodeId?: NodeId;
    }>) => void;
}, "components">;
export declare const COMPONENTS_REDUX_ACTIONS: import("@reduxjs/toolkit").CaseReducerActions<{
    /**
     * Components
     */
    addComponentDefinitionRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        definition: ComponentDefinition;
        insertAtEnd?: boolean;
    }>) => void;
    deleteComponentDefinitionRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
    }>) => void;
    moveComponentDefinition: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        index: number;
    }>) => void;
    updateComponentNameRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        name: string;
    }>) => void;
    updateComponentDisplayOptions: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        displayOptions: ComponentDisplayOptions;
    }>) => void;
    updateComponentNonDeletable: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nonDeletable: boolean;
    }>) => void;
    updateComponentExtraSelectorsRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        extraSelectors: SelectorsMap;
    }>) => void;
    /**
     * Core modifiers
     */
    moveElementRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        elementId: NodeId;
        newParentId: NodeId | null;
        index: number;
        forceMoveRootNode?: boolean;
        forceMoveToRootNode?: boolean;
    }>) => void;
    addElementRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        node: NodeType;
        parentId?: NodeId;
        index: number;
    }>) => void;
    deleteElementRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        elementId: NodeId;
    }>) => void;
    /**
     * Special case modifiers; adding without modifying parent id
     */
    addElementsBulk(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodes: NodeType[];
    }>): void;
    deleteElementsBulk(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeIds: NodeId[];
    }>): void;
    /**
     * Node actions
     */
    updateNodeName: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        name: string;
    }>) => void;
    updateNodeDirection: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        direction: LayoutData["direction"];
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeSpacing: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        spacing: LayoutData["spacing"];
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeWrap: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        wrap: LayoutData["wrap"];
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeAlignment: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        alignment: AlignmentData;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeTextAlignment: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        textAlignment: TextAlignmentType;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeBackground: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        background: BackgroundData | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeBorder: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        border: BorderData | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeCorner: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        corner: CornerData | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeShadow: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        shadow: ShadowData | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodePadding: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        padding: PaddingData;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeVisibility: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        isVisible: boolean;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeOverflow: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        overflow: OverflowType;
    }>) => void;
    updateNodeSize: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        size: Partial<SizeData> | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeTextRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        text: TextValueOrPropDefinitionInstance | NumberPropDefinitionInstance;
    }>) => void;
    updateNodeFontStyle: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        value: FontValueOrAlias;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeFontColor: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        value: ColorValueOrAlias;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeIcon: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        icon: IconValueOrPropDefinitionInstance;
    }>) => void;
    updateNodeIconColor: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        value: ColorValueOrAlias;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodePlaceholder: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        placeholder: TextValueOrPropDefinitionInstance;
    }>) => void;
    updateNodeImageSrc: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        src: ImageValueOrPropDefinitionInstance;
    }>) => void;
    updateNodeImageDisplayType: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        displayType: ImageDisplayType;
    }>) => void;
    updateNodeClassName: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        className: string | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodeContainerType: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        containerType: ContainerType | null;
    }>) => void;
    updateNodeTextWhitespaceType: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        whitespace: TextWhitespaceType;
    }>) => void;
    updateNodeTextStyleType: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        textStyle: TextStyleType;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateNodePaddingType: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        paddingType: PaddingType | null;
        selectorData: SelectorData;
        useExtraSelector?: boolean;
    }>) => void;
    updateCustomInstanceProp: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        propDefinitionId: string;
        value: ValueOf<InstanceProps> | null;
    }>) => void;
    updateNodeColumns: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        columns: number[];
    }>) => void;
    /**
     * 12 column grid
     */
    updateNodePosition: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        childNodeId: NodeId;
        position: GridPosition;
    }>) => void;
    deleteNodePosition: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        childNodeId: NodeId;
    }>) => void;
    /**
     * Slots
     */
    addSlotToNodeRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        propDefinitionId: string;
    }>) => void;
    deleteSlotFromNodeRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
    }>) => void;
    /**
     * Prop Definitions
     */
    addPropDefinition: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinition: PropDefinition;
    }>) => void;
    deletePropDefinitionRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
    }>) => void;
    movePropDefinition: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        index: number;
    }>) => void;
    updatePropDefinitionName: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        name: string;
    }>) => void;
    updateTextPropDefinitionDefaultValue: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        value: TextValue;
    }>) => void;
    updateNumberPropDefinitionDefaultValue: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        value: NumberValue;
    }>) => void;
    updateIconPropDefinitionDefaultValue: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        value: IconValue;
    }>) => void;
    updateImagePropDefinitionDefaultValue: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        value: ImageValue;
    }>) => void;
    updatePropDefinitionNonEditable(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        nonEditable: boolean;
    }>): void;
    updateEnumOptionNonEditable(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        enumOptionId: string;
        nonEditable: boolean;
    }>): void;
    addEnumOption: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        enumOption: EnumOption;
    }>) => void;
    updateEnumOptionValue: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        id: string;
        value: string;
    }>) => void;
    deleteEnumOptionRaw: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        propDefinitionId: string;
        enumOptionId: EnumOptionId;
    }>) => void;
    /**
     * Selectors
     */
    addInteractionType(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        selectorId: SelectorId;
        interactionType: InteractionType;
        overrideData?: OverridesNodeMap;
    }>): void;
    deleteInteractionType(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        selectorId: SelectorId;
        interactionType: InteractionType;
    }>): void;
    /**
     * Overrides
     */
    clearOverrideDataByKey(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        selectorId: SelectorId;
        key: OverrideDataKey;
        interaction: InteractionType;
        deviceType: DeviceType;
        useExtraSelector?: boolean;
    }>): void;
    addOverrideDataByKey(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        selectorId: SelectorId;
        key: OverrideDataKey;
        interaction: InteractionType;
        deviceType: DeviceType;
        overrideData: Value;
    }>): void;
    deleteNodeFromOverride(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        selectorId: SelectorId;
        interactionType: InteractionType;
        deviceType: DeviceType;
    }>): void;
    addNodeToOverride(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        selectorId: SelectorId;
        interactionType: InteractionType;
        deviceType: DeviceType;
        data: Override;
    }>): void;
    /**
     * Popovers
     */
    addPopoverRaw(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        popover: PopoverType;
    }>): void;
    deletePopoverRaw(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
    }>): void;
    updatePopoverPlacementDirection(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        placementDirection: PopoverPlacementDirection;
    }>): void;
    updatePopoverPlacementOffset(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        offset: number;
    }>): void;
    /**
     * Compound Components
     */
    addCompoundComponentId(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        compoundComponentId: string;
    }>): void;
    deleteCompoundComponentId(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        parentComponentId: string;
        compoundComponentId: string;
    }>): void;
    /**
     * Page Options
     */
    updatePageOptionLayout(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        layout: PageLayout | null;
    }>): void;
    /**
     * Hacks: very specific actions that violate invariants and should be used with care
     */
    hackilyUpdateComponentRootNode: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        node: NodeType;
    }>) => void;
    hackilyUpdateNodeInstanceComponentId(state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        nodeId: NodeId;
        newComponentId: string;
        newComponentName: string;
    }>): void;
    hackilyReplaceComponentRootNodeId: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        elementId: NodeId;
    }>) => void;
    hackilyUndoReplaceComponentRootNodeId: (state: import("immer/dist/internal").WritableDraft<ComponentState>, action: UndoableAction<{
        componentId: string;
        elementId: NodeId;
        oldParentId?: NodeId;
        oldParentChildrenIds?: NodeId[];
        oldRootNodeId?: NodeId;
    }>) => void;
}, "components">;
export declare const addComponentDefinitionRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    definition: ComponentDefinition;
    insertAtEnd?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/addComponentDefinitionRaw">, deleteComponentDefinitionRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/deleteComponentDefinitionRaw">, moveComponentDefinition: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    index: number;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/moveComponentDefinition">, updateComponentNameRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    name: string;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateComponentNameRaw">, updateComponentDisplayOptions: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    displayOptions: ComponentDisplayOptions;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateComponentDisplayOptions">, updateComponentNonDeletable: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nonDeletable: boolean;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateComponentNonDeletable">, updateComponentExtraSelectorsRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    extraSelectors: SelectorsMap;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateComponentExtraSelectorsRaw">, moveElementRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    elementId: NodeId;
    newParentId: NodeId | null;
    index: number;
    forceMoveRootNode?: boolean | undefined;
    forceMoveToRootNode?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/moveElementRaw">, addElementRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    node: NodeType;
    parentId?: string | undefined;
    index: number;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/addElementRaw">, deleteElementRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    elementId: NodeId;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/deleteElementRaw">, addElementsBulk: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodes: NodeType[];
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/addElementsBulk">, deleteElementsBulk: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeIds: NodeId[];
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/deleteElementsBulk">, updateNodeName: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    name: string;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeName">, updateNodeDirection: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    direction: LayoutData["direction"];
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeDirection">, updateNodeSpacing: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    spacing: LayoutData["spacing"];
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeSpacing">, updateNodeWrap: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    wrap: LayoutData["wrap"];
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeWrap">, updateNodeAlignment: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    alignment: AlignmentData;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeAlignment">, updateNodeTextAlignment: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    textAlignment: TextAlignmentType;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeTextAlignment">, updateNodeBackground: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    background: BackgroundData | null;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeBackground">, updateNodeBorder: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    border: BorderData | null;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeBorder">, updateNodeCorner: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    corner: CornerData | null;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeCorner">, updateNodeShadow: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    shadow: ShadowData | null;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeShadow">, updateNodePadding: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    padding: PaddingData;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodePadding">, updateNodeVisibility: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    isVisible: boolean;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeVisibility">, updateNodeOverflow: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    overflow: OverflowType;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeOverflow">, updateNodeSize: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    size: Partial<SizeData> | null;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeSize">, updateNodeTextRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    text: TextValueOrPropDefinitionInstance | NumberPropDefinitionInstance;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeTextRaw">, updateNodeFontStyle: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    value: FontValueOrAlias;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeFontStyle">, updateNodeFontColor: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    value: ColorValueOrAlias;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeFontColor">, updateNodeIcon: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    icon: IconValueOrPropDefinitionInstance;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeIcon">, updateNodeIconColor: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    value: ColorValueOrAlias;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeIconColor">, updateNodePlaceholder: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    placeholder: TextValueOrPropDefinitionInstance;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodePlaceholder">, updateNodeImageSrc: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    src: ImageValueOrPropDefinitionInstance;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeImageSrc">, updateNodeImageDisplayType: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    displayType: ImageDisplayType;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeImageDisplayType">, updateNodeClassName: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    className: string | null;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeClassName">, updateNodeContainerType: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    containerType: ContainerType | null;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeContainerType">, updateNodeTextWhitespaceType: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    whitespace: TextWhitespaceType;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeTextWhitespaceType">, updateNodeTextStyleType: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    textStyle: TextStyleType;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeTextStyleType">, updateNodePaddingType: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    paddingType: PaddingType | null;
    selectorData: SelectorData;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodePaddingType">, updateCustomInstanceProp: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    propDefinitionId: string;
    value: ValueOf<InstanceProps> | null;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateCustomInstanceProp">, updateNodeColumns: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    columns: number[];
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodeColumns">, updateNodePosition: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    childNodeId: NodeId;
    position: GridPosition;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNodePosition">, deleteNodePosition: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    childNodeId: NodeId;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/deleteNodePosition">, addSlotToNodeRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    propDefinitionId: string;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/addSlotToNodeRaw">, deleteSlotFromNodeRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/deleteSlotFromNodeRaw">, addPropDefinition: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinition: PropDefinition;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/addPropDefinition">, deletePropDefinitionRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/deletePropDefinitionRaw">, movePropDefinition: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
    index: number;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/movePropDefinition">, updatePropDefinitionName: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
    name: string;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updatePropDefinitionName">, updateTextPropDefinitionDefaultValue: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
    value: TextValue;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateTextPropDefinitionDefaultValue">, updateNumberPropDefinitionDefaultValue: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
    value: NumberValue;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateNumberPropDefinitionDefaultValue">, updateIconPropDefinitionDefaultValue: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
    value: IconValue;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateIconPropDefinitionDefaultValue">, updateImagePropDefinitionDefaultValue: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
    value: ImageValue;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateImagePropDefinitionDefaultValue">, updatePropDefinitionNonEditable: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
    nonEditable: boolean;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updatePropDefinitionNonEditable">, updateEnumOptionNonEditable: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
    enumOptionId: string;
    nonEditable: boolean;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateEnumOptionNonEditable">, addEnumOption: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
    enumOption: EnumOption;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/addEnumOption">, updateEnumOptionValue: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
    id: string;
    value: string;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updateEnumOptionValue">, deleteEnumOptionRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    propDefinitionId: string;
    enumOptionId: EnumOptionId;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/deleteEnumOptionRaw">, addInteractionType: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    selectorId: SelectorId;
    interactionType: InteractionType;
    overrideData?: OverridesNodeMap | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/addInteractionType">, deleteInteractionType: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    selectorId: SelectorId;
    interactionType: InteractionType;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/deleteInteractionType">, clearOverrideDataByKey: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    selectorId: SelectorId;
    key: OverrideDataKey;
    interaction: InteractionType;
    deviceType: DeviceType;
    useExtraSelector?: boolean | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/clearOverrideDataByKey">, addOverrideDataByKey: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    selectorId: SelectorId;
    key: OverrideDataKey;
    interaction: InteractionType;
    deviceType: DeviceType;
    overrideData: Value;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/addOverrideDataByKey">, deleteNodeFromOverride: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    selectorId: SelectorId;
    interactionType: InteractionType;
    deviceType: DeviceType;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/deleteNodeFromOverride">, addNodeToOverride: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    selectorId: SelectorId;
    interactionType: InteractionType;
    deviceType: DeviceType;
    data: Override;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/addNodeToOverride">, addPopoverRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    popover: PopoverType;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/addPopoverRaw">, deletePopoverRaw: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/deletePopoverRaw">, updatePopoverPlacementDirection: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    placementDirection: PopoverPlacementDirection;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updatePopoverPlacementDirection">, updatePopoverPlacementOffset: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    offset: number;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updatePopoverPlacementOffset">, addCompoundComponentId: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    compoundComponentId: string;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/addCompoundComponentId">, deleteCompoundComponentId: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    parentComponentId: string;
    compoundComponentId: string;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/deleteCompoundComponentId">, updatePageOptionLayout: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    layout: PageLayout | null;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/updatePageOptionLayout">, hackilyUpdateComponentRootNode: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    node: NodeType;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/hackilyUpdateComponentRootNode">, hackilyUpdateNodeInstanceComponentId: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    nodeId: NodeId;
    newComponentId: string;
    newComponentName: string;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/hackilyUpdateNodeInstanceComponentId">, hackilyReplaceComponentRootNodeId: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    elementId: NodeId;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/hackilyReplaceComponentRootNodeId">, hackilyUndoReplaceComponentRootNodeId: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
    componentId: string;
    elementId: NodeId;
    oldParentId?: string | undefined;
    oldParentChildrenIds?: string[] | undefined;
    oldRootNodeId?: string | undefined;
} & {
    generatedByUndoRedo?: boolean | undefined;
}, "components/hackilyUndoReplaceComponentRootNodeId">;
export declare const componentsReducer: import("redux").Reducer<ComponentState>;
//# sourceMappingURL=components.d.ts.map