@atlaskit/editor-common
Version:
A package that contains common classes and components for editor and renderer
29 lines (28 loc) • 2.08 kB
TypeScript
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';