import { BlockNoteEditor, BlockSchema, InlineContentSchema, StyleSchema } from "@blocknote/core";
import React, { HTMLAttributes, ReactNode, Ref } from "react";
import { BlockNoteDefaultUIProps } from "./BlockNoteDefaultUI";
import { Theme } from "./BlockNoteTheme";
import "./styles.css";
declare function BlockNoteViewComponent<BSchema extends BlockSchema, ISchema extends InlineContentSchema, SSchema extends StyleSchema>(props: {
    editor: BlockNoteEditor<BSchema, ISchema, SSchema>;
    theme?: "light" | "dark" | Theme | {
        light: Theme;
        dark: Theme;
    };
    /**
     * Locks the editor from being editable by the user if set to `false`.
     */
    editable?: boolean;
    /**
     * A callback function that runs whenever the text cursor position or selection changes.
     */
    onSelectionChange?: () => void;
    /**
     * A callback function that runs whenever the editor's contents change.
     */
    onChange?: () => void;
    children?: ReactNode;
    ref?: Ref<HTMLDivElement> | undefined;
} & Omit<HTMLAttributes<HTMLDivElement>, "onChange" | "onSelectionChange" | "children"> & BlockNoteDefaultUIProps, ref: React.Ref<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
export declare const BlockNoteView: typeof BlockNoteViewComponent;
export {};
