UNPKG

@atlaskit/editor-common

Version:

A package that contains common classes and components for editor and renderer

29 lines (28 loc) 2.08 kB
import type { MarkType, NodeType, Node as PMNode, ResolvedPos, Schema } from '@atlaskit/editor-prosemirror/model'; import type { EditorState, Transaction } from '@atlaskit/editor-prosemirror/state'; import type { HeadingLevelsAndNormalText } from '../types/block-type'; import type { Command } from '../types/command'; type AlignmentState = 'start' | 'end' | 'center'; export declare function addParagraphAtEnd(tr: Transaction): void; export declare function createParagraphAtEnd(): Command; export declare const changeImageAlignment: (align?: AlignmentState) => Command; export declare const createToggleBlockMarkOnRange: <T extends {} = object>(markType: MarkType, getAttrs: (prevAttrs?: T, node?: PMNode) => T | undefined | false, allowedBlocks?: NodeType[] | ((schema: Schema, node: PMNode, parent: PMNode | null) => boolean) | undefined) => (from: number, to: number, tr: Transaction, state: EditorState) => boolean; export declare const createToggleInlineMarkOnRange: <T extends {} = object>(markType: MarkType, getAttrs: (prevAttrs?: T, node?: PMNode) => T | undefined | false) => (from: number, to: number, tr: Transaction, state: EditorState) => boolean; /** * Toggles block mark based on the return type of `getAttrs`. * This is similar to ProseMirror's `getAttrs` from `AttributeSpec` * return `false` to remove the mark. * return `undefined for no-op. * return an `object` to update the mark. */ export declare const toggleBlockMark: <T extends {} = object>(markType: MarkType, getAttrs: (prevAttrs?: T, node?: PMNode) => T | undefined | false, allowedBlocks?: NodeType[] | ((schema: Schema, node: PMNode, parent: PMNode | null) => boolean) | undefined) => Command; export declare const clearEditorContent: Command; export declare function findCutBefore($pos: ResolvedPos): ResolvedPos | null; /** * @deprecated * * This method is no longer needed and can be accessed via the * `editor-plugin-block-type` command of `setTextLevel` */ export declare function setHeading(level: HeadingLevelsAndNormalText): Command; export { insertBlock } from './insert-block';