///
import { Middleware, Store } from 'redux';
import { ActionsTypes } from './actions';
import PluginService from './service/plugin';
import { ContentPluginConfig, LayoutPluginConfig, Plugins } from './service/plugin/classes';
import { EditableType } from './types/editable';
import { RootState } from './types/state';
export declare const EditorContext: import("react").Context>;
export declare type Languages = Array<{
lang: string;
label: string;
}>;
export interface CoreEditorProps {
plugins?: Plugins;
middleware?: [];
editables?: EditableType[];
defaultPlugin?: ContentPluginConfig | LayoutPluginConfig;
store?: Store;
languages?: Languages;
lang?: string;
}
/**
* Editor is the core interface for dealing with the editor.
*/
declare class Editor {
store: Store;
plugins: PluginService;
middleware: Middleware[];
defaultPlugin: ContentPluginConfig | LayoutPluginConfig;
trigger: ActionsTypes;
query: {};
languages?: Languages;
constructor({ plugins, middleware, editables, defaultPlugin, store, languages, lang, }?: CoreEditorProps);
setLang(lang: string): void;
refreshEditables: () => void;
getNode: (editableId: string, nodeId: string) => import("./types/editable").Row | import("./types/editable").AbstractCell;
/**
* @deprecated in order to reduce the api surface, we will remove this method in the future
*/
setLayoutPlugins: (plugins?: Pick, "Component" | "name" | "text" | "description" | "lang" | "version" | "IconComponent" | "hideInMenu" | "serialize" | "unserialize" | "handleRemoveHotKey" | "handleFocusNextHotKey" | "handleFocusPreviousHotKey" | "handleFocus" | "handleBlur" | "reducer" | "migrations" | "createInitialState" | "createInitialChildren">[]) => void;
/**
* @deprecated in order to reduce the api surface, we will remove this method in the future
*/
addLayoutPlugin: (config: Pick, "Component" | "name" | "text" | "description" | "lang" | "version" | "IconComponent" | "hideInMenu" | "serialize" | "unserialize" | "handleRemoveHotKey" | "handleFocusNextHotKey" | "handleFocusPreviousHotKey" | "handleFocus" | "handleBlur" | "reducer" | "migrations" | "createInitialState" | "createInitialChildren">) => void;
/**
* @deprecated in order to reduce the api surface, we will remove this method in the future
*/
removeLayoutPlugin: (name: string) => void;
/**
* @deprecated in order to reduce the api surface, we will remove this method in the future
*/
setContentPlugins: (plugins?: Pick, "allowInlineNeighbours" | "isInlineable" | "Component" | "name" | "text" | "description" | "lang" | "version" | "IconComponent" | "hideInMenu" | "serialize" | "unserialize" | "handleRemoveHotKey" | "handleFocusNextHotKey" | "handleFocusPreviousHotKey" | "handleFocus" | "handleBlur" | "reducer" | "migrations" | "createInitialState">[]) => void;
/**
* @deprecated in order to reduce the api surface, we will remove this method in the future
*/
addContentPlugin: (config: Pick, "allowInlineNeighbours" | "isInlineable" | "Component" | "name" | "text" | "description" | "lang" | "version" | "IconComponent" | "hideInMenu" | "serialize" | "unserialize" | "handleRemoveHotKey" | "handleFocusNextHotKey" | "handleFocusPreviousHotKey" | "handleFocus" | "handleBlur" | "reducer" | "migrations" | "createInitialState">) => void;
/**
* @deprecated in order to reduce the api surface, we will remove this method in the future
*/
removeContentPlugin: (name: string) => void;
}
export declare const createEmptyState: () => EditableType;
export default Editor;
//# sourceMappingURL=Editor.d.ts.map