import type { KeyboardEvent } from 'react';
import { Editor } from 'slate';
import { type RenderElementProps } from 'slate-react';
import { setBlockKeyForDevice } from './setBlockKeyForDevice';
import { clearBlockKeyForDevice } from './clearBlockKeyForDevice';
import { wrapInline } from './wrapInline';
import { unwrapInline } from './unwrapInline';
import { unwrapList } from './unwrapList';
import { wrapList } from './wrapList';
import { indent } from './indent';
import { dedent } from './dedent';
import { toggleList } from './toggleList';
import { type RenderElement } from '../../controls/rich-text-v2/plugin';
export declare const BlockActions: {
    setBlockKeyForDevice: typeof setBlockKeyForDevice;
    clearBlockKeyForDevice: typeof clearBlockKeyForDevice;
    wrapInline: typeof wrapInline;
    unwrapInline: typeof unwrapInline;
};
export declare const ListActions: {
    unwrapList: typeof unwrapList;
    wrapList: typeof wrapList;
    indent: typeof indent;
    dedent: typeof dedent;
    toggleList: typeof toggleList;
};
export declare function onKeyDown(e: KeyboardEvent, editor: Editor): void;
export declare function withBlock(editor: Editor): import("../../slate/types").MakeswiftEditor;
export declare function BlockPlugin(): {
    control: import("@makeswift/controls").RichTextPluginControl<import("@makeswift/controls").SelectDefinition<import("@makeswift/controls").SelectConfig<"blockquote" | "paragraph" | "heading-one" | "heading-two" | "heading-three" | "heading-four" | "heading-five" | "heading-six" | "ordered-list" | "unordered-list"> & {
        readonly defaultValue: "blockquote" | "paragraph" | "heading-one" | "heading-two" | "heading-three" | "heading-four" | "heading-five" | "heading-six" | "ordered-list" | "unordered-list";
    }>, "blockquote" | "paragraph" | "heading-one" | "heading-two" | "heading-three" | "heading-four" | "heading-five" | "heading-six" | "ordered-list" | "unordered-list"> | undefined;
    withPlugin: ((editor: Editor) => Editor) | undefined;
    onKeyDown: ((event: KeyboardEvent, editor: Editor) => void) | undefined;
    renderElement: ((renderElement: RenderElement, value: any) => (props: RenderElementProps) => import("react").ReactNode) | undefined;
    renderLeaf: ((renderLeaf: import("../../controls/rich-text-v2/plugin").RenderLeaf, value: any) => (props: import("slate-react").RenderLeafProps) => import("react").ReactNode) | undefined;
};
//# sourceMappingURL=index.d.ts.map