/** @packageDocumentation
 * @module State
 */
import type { ActionsUnion } from "./redux-ts.js";
/** Action Ids used by Redux and to send sync UI components. Typically used to refresh visibility or enable state of control.
 *  Since these are also used as sync ids they should be in lowercase.
 * @note This is used by sync UI event APIs.
 * @public
 * @deprecated in 4.15.0. Use your preferred state management library instead.
 */
export declare enum ConfigurableUiActionId {
    SetSnapMode = "configurableui:set_snapmode",
    SetTheme = "configurableui:set_theme",
    SetToolPrompt = "configurableui:set_toolprompt",
    SetWidgetOpacity = "configurableui:set_widget_opacity",
    SetDragInteraction = "configurableui:set-drag-interaction",
    SetShowWidgetIcon = "configurableui:set-show-widget-icon",
    AutoCollapseUnpinnedPanels = "configurableui:set-auto-collapse-unpinned-panels",
    SetViewOverlayDisplay = "configurableui:set-view-overlay-display",
    AnimateToolSettings = "configurableui:set-animate-tool-settings",
    UseToolAsToolSettingsLabel = "configurableui:set-use-tool-as-tool-settings-label",
    SetToolbarOpacity = "configurableui:set-toolbar-opacity"
}
/** The portion of state managed by the ConfigurableUiReducer.
 * @public
 * @deprecated in 4.15.0. Use your preferred state management library instead.
 */
export interface ConfigurableUiState {
    /** @deprecated in 4.15.0. Use `snapMode` prop of {@link SnapModeField} instead. */
    snapMode: number;
    /** @deprecated in 4.15.0. Not used by AppUI components. */
    toolPrompt: string;
    /** @deprecated in 4.15.0. Use `theme` prop of {@link ThemeManager} instead. */
    theme: string;
    /** @deprecated in 4.15.0. Use `widgetOpacity` prop of {@link ConfigurableUiContent} instead. */
    widgetOpacity: number;
    /** @deprecated in 4.15.0. Use `useDragInteraction` prop of {@link Toolbar} or {@link ToolbarDragInteractionContext}. */
    useDragInteraction: boolean;
    /** @deprecated in 4.15.0. Use `widgetIcon` prop of {@link ConfigurableUiContent} instead. */
    showWidgetIcon: boolean;
    /** @deprecated in 4.15.0. Use `collapsePanels` prop of {@link ConfigurableUiContent} instead. */
    autoCollapseUnpinnedPanels: boolean;
    /** @deprecated in 4.15.0. Use `viewOverlay` prop of {@link ConfigurableUiContent} instead. */
    viewOverlayDisplay: boolean;
    /** @deprecated in 4.15.0. Use `animateToolSettings` prop of {@link ConfigurableUiContent} instead. */
    animateToolSettings: boolean;
    /** @deprecated in 4.15.0. Use `animateToolSettings` prop of {@link ConfigurableUiContent} instead. */
    useToolAsToolSettingsLabel: boolean;
    /** @deprecated in 4.15.0. Use `toolbarOpacity` prop of {@link ConfigurableUiContent}. */
    toolbarOpacity: number;
}
/** An object with a function that creates each ConfigurableUiReducer that can be handled by our reducer.
 * @public
 * @deprecated in 4.15.0. Use your preferred state management library instead.
 */
export declare const ConfigurableUiActions: {
    setSnapMode: (snapMode: number) => import("./redux-ts.js").ActionWithPayload<ConfigurableUiActionId.SetSnapMode, number>;
    setTheme: (theme: string) => import("./redux-ts.js").ActionWithPayload<ConfigurableUiActionId.SetTheme, string>;
    setToolPrompt: (toolPrompt: string) => import("./redux-ts.js").ActionWithPayload<ConfigurableUiActionId.SetToolPrompt, string>;
    setWidgetOpacity: (opacity: number) => import("./redux-ts.js").ActionWithPayload<ConfigurableUiActionId.SetWidgetOpacity, number>;
    setDragInteraction: (dragInteraction: boolean) => import("./redux-ts.js").ActionWithPayload<ConfigurableUiActionId.SetDragInteraction, boolean>;
    setShowWidgetIcon: (showWidgetIcon: boolean) => import("./redux-ts.js").ActionWithPayload<ConfigurableUiActionId.SetShowWidgetIcon, boolean>;
    setAutoCollapseUnpinnedPanels: (autoCollapse: boolean) => import("./redux-ts.js").ActionWithPayload<ConfigurableUiActionId.AutoCollapseUnpinnedPanels, boolean>;
    setViewOverlayDisplay: (displayViewOverlay: boolean) => import("./redux-ts.js").ActionWithPayload<ConfigurableUiActionId.SetViewOverlayDisplay, boolean>;
    setAnimateToolSettings: (animateToolSettings: boolean) => import("./redux-ts.js").ActionWithPayload<ConfigurableUiActionId.AnimateToolSettings, boolean>;
    setUseToolAsToolSettingsLabel: (useToolAsToolSettingsLabel: boolean) => import("./redux-ts.js").ActionWithPayload<ConfigurableUiActionId.UseToolAsToolSettingsLabel, boolean>;
    setToolbarOpacity: (opacity: number) => import("./redux-ts.js").ActionWithPayload<ConfigurableUiActionId.SetToolbarOpacity, number>;
};
/** Union of ConfigurableUi Redux actions
 * @public
 * @deprecated in 4.15.0. Use your preferred state management library instead.
 */
export type ConfigurableUiActionsUnion = ActionsUnion<typeof ConfigurableUiActions>;
/** Handles actions to update ConfigurableUiState.
 * @public
 * @deprecated in 4.15.0. Use your preferred state management library instead.
 */
export declare function ConfigurableUiReducer(state: ConfigurableUiState | undefined, action: ConfigurableUiActionsUnion): ConfigurableUiState;
//# sourceMappingURL=ConfigurableUiState.d.ts.map