import { PanesActionTypes } from './types'; import { IPaneContent, PaneSplitAxis } from '../types'; export interface IInitPanesNamespaceAction { type: PanesActionTypes.INIT_PANES_NAMESPACE; payload: { namespace: string; }; } export declare const initPanesNamespaceAction: (namespace: string) => { type: PanesActionTypes.INIT_PANES_NAMESPACE; payload: { namespace: string; }; }; export interface ISetCurrentPaneAction { type: PanesActionTypes.SET_CURRENT_PANE; payload: { namespace: string; paneId: string; }; } export declare const setCurrentPaneAction: (namespace: string, paneId: string) => { type: PanesActionTypes.SET_CURRENT_PANE; payload: { namespace: string; paneId: string; }; }; export interface IAddContentToCurrentPaneAction { type: PanesActionTypes.ADD_CONTENT_TO_CURRENT_PANE; payload: { namespace: string; content: IPaneContent; }; } export declare const addContentToCurrentPaneAction: (namespace: string, content: IPaneContent) => { type: PanesActionTypes.ADD_CONTENT_TO_CURRENT_PANE; payload: { namespace: string; content: IPaneContent; }; }; export interface ISetPaneCurrentContentAction { type: PanesActionTypes.SET_PANE_CURRENT_CONTENT; payload: { namespace: string; paneId: string; contentId: string; }; } export declare const setPaneCurrentContentAction: (namespace: string, paneId: string, contentId: string) => { type: PanesActionTypes.SET_PANE_CURRENT_CONTENT; payload: { namespace: string; paneId: string; contentId: string; }; }; export interface IRemovePaneContentAction { type: PanesActionTypes.REMOVE_PANE_CONTENT; payload: { namespace: string; paneId: string; contentId: string; }; } export declare const removePaneContentAction: (namespace: string, paneId: string, contentId: string) => { type: PanesActionTypes.REMOVE_PANE_CONTENT; payload: { namespace: string; paneId: string; contentId: string; }; }; export interface IRemoveContentFromAllPanesAction { type: PanesActionTypes.REMOVE_CONTENT_FROM_ALL_PANES; payload: { namespace: string; contentId: string; }; } export declare const removeContentFromAllPanesAction: (namespace: string, contentId: string) => { type: PanesActionTypes.REMOVE_CONTENT_FROM_ALL_PANES; payload: { namespace: string; contentId: string; }; }; export interface ISplitPaneAction { type: PanesActionTypes.SPLIT_PANE; payload: { namespace: string; paneId: string; axis: PaneSplitAxis; }; } export declare const splitPaneAction: (namespace: string, paneId: string, axis: PaneSplitAxis) => { type: PanesActionTypes.SPLIT_PANE; payload: { namespace: string; paneId: string; axis: PaneSplitAxis; }; }; export declare type PanesAction = IInitPanesNamespaceAction | ISetCurrentPaneAction | IAddContentToCurrentPaneAction | ISetPaneCurrentContentAction | IRemovePaneContentAction | IRemoveContentFromAllPanesAction | ISplitPaneAction; export interface IPanesActions { initPanesNamespace: () => IInitPanesNamespaceAction; setCurrentPane: (paneId: string) => ISetCurrentPaneAction; addContentToCurrentPane: (content: IPaneContent) => IAddContentToCurrentPaneAction; setPaneCurrentContent: (paneId: string, contentId: string) => ISetPaneCurrentContentAction; removePaneContent: (paneId: string, contentId: string) => IRemovePaneContentAction; removeContentFromAllPanes: (contentId: string) => IRemoveContentFromAllPanesAction; splitPane: (paneId: string, axis: PaneSplitAxis) => ISplitPaneAction; } export declare const actionsFactory: (namespace: string) => IPanesActions;