import { InlineContentSchema, StyleSchema } from "@blocknote/core";
import { ReactNode } from "react";
import { TableHandleProps } from "../TableHandleProps";
/**
 * By default, the TableHandle component will render with the default icon.
 * However, you can override the icon to render by passing children.
 */
export declare const TableHandle: <I extends InlineContentSchema = import("@blocknote/core").InlineContentSchemaFromSpecs<{
    text: {
        config: "text";
        implementation: any;
    };
    link: {
        config: "link";
        implementation: any;
    };
}>, S extends StyleSchema = import("@blocknote/core").StyleSchemaFromSpecs<{
    bold: {
        config: {
            type: string;
            propSchema: "boolean";
        };
        implementation: import("@blocknote/core").StyleImplementation;
    };
    italic: {
        config: {
            type: string;
            propSchema: "boolean";
        };
        implementation: import("@blocknote/core").StyleImplementation;
    };
    underline: {
        config: {
            type: string;
            propSchema: "boolean";
        };
        implementation: import("@blocknote/core").StyleImplementation;
    };
    strike: {
        config: {
            type: string;
            propSchema: "boolean";
        };
        implementation: import("@blocknote/core").StyleImplementation;
    };
    code: {
        config: {
            type: string;
            propSchema: "boolean";
        };
        implementation: import("@blocknote/core").StyleImplementation;
    };
    textColor: {
        config: {
            type: string;
            propSchema: "string";
        };
        implementation: import("@blocknote/core").StyleImplementation;
    };
    backgroundColor: {
        config: {
            type: string;
            propSchema: "string";
        };
        implementation: import("@blocknote/core").StyleImplementation;
    };
}>>(props: {
    editor: import("@blocknote/core").BlockNoteEditor<{
        table: {
            type: "table";
            content: "table";
            propSchema: {
                backgroundColor: {
                    default: "default";
                };
                textColor: {
                    default: "default";
                };
                textAlignment: {
                    default: "left";
                    values: readonly ["left", "center", "right", "justify"];
                };
            };
        };
    }, I, S>;
    orientation: "column" | "row";
    index: number;
    dragStart: (e: import("react").DragEvent<HTMLDivElement>) => void;
    showOtherSide: () => void;
    hideOtherSide: () => void;
    tableHandleMenu?: import("react").FC<import("../../..").DragHandleMenuProps<{
        table: {
            type: "table";
            content: "table";
            propSchema: {
                backgroundColor: {
                    default: "default";
                };
                textColor: {
                    default: "default";
                };
                textAlignment: {
                    default: "left";
                    values: readonly ["left", "center", "right", "justify"];
                };
            };
        };
    }, I, S>> | undefined;
} & Pick<import("@blocknote/core").TableHandlesState<I, S>, "block"> & Pick<import("@blocknote/core").TableHandlesProsemirrorPlugin<I, S>, "dragEnd" | "freezeHandles" | "unfreezeHandles"> & {
    children?: ReactNode;
}) => import("react/jsx-runtime").JSX.Element;
