import { PluginKey } from 'prosemirror-state'; import { Extension } from '../../core/Extension.js'; export const BlockNodePluginKey: PluginKey; /** * @typedef {import('prosemirror-model').Node} ProseMirrorNode * @typedef {import('prosemirror-state').Transaction} Transaction */ /** * Block node information object * @typedef {Object} BlockNodeInfo * @property {ProseMirrorNode} node - The block node * @property {number} pos - Position in the document */ /** * Configuration options for BlockNode * @typedef {Object} BlockNodeOptions * @category Options */ /** * Attributes for block nodes * @typedef {Object} BlockNodeAttributes * @category Attributes * @property {string} [sdBlockId] @internal Unique identifier for the block */ /** * @module BlockNode * @sidebarTitle Block Node * @snippetPath /snippets/extensions/block-node.mdx */ export const BlockNode: Extension, Record>; export function nodeAllowsSdBlockIdAttr(node: ProseMirrorNode): boolean; export function nodeAllowsSdBlockRevAttr(node: any): boolean; export function nodeNeedsSdBlockId(node: ProseMirrorNode): boolean; export function checkForNewBlockNodesInTrs(transactions: Transaction[]): boolean; export type ProseMirrorNode = import('prosemirror-model').Node; export type Transaction = import('prosemirror-state').Transaction; /** * Block node information object */ export type BlockNodeInfo = { /** * - The block node */ node: ProseMirrorNode; /** * - Position in the document */ pos: number; }; /** * Configuration options for BlockNode */ export type BlockNodeOptions = Object; /** * Attributes for block nodes */ export type BlockNodeAttributes = Object; //# sourceMappingURL=block-node.d.ts.map