export type EditorSchema < Nodes extends string = string , Marks extends string = string > = import ( '../model' ) . Schema < Nodes , Marks > ; export type EditorView < Schema extends EditorSchema = EditorSchema > = import ( '../view' ) . EditorView < Schema > ; export type Selection < Schema extends EditorSchema = EditorSchema > = import ( '../state' ) . Selection < Schema > ; export type DecorationSet < Schema extends EditorSchema = EditorSchema > = import ( '../view' ) . DecorationSet < Schema > ; export type Transaction < Schema extends EditorSchema = EditorSchema > = import ( '../state' ) . Transaction < Schema > ; export type PluginKey < PluginState = EditorSchema > = import ( '../state' ) . PluginKey < PluginState , EditorSchema > ; export type Mark < Schema extends EditorSchema = EditorSchema > = import ( '../model' ) . Mark < Schema > ; export type ResolvedPos < Schema extends EditorSchema = EditorSchema > = import ( '../model' ) . ResolvedPos < Schema > ; export type InputRule < Schema extends EditorSchema = EditorSchema > = import ( '../inputrules' ) . InputRule < Schema > ; export type Fragment < Schema extends EditorSchema = EditorSchema > = import ( '../model' ) . Fragment < Schema > ; export type NodeView < Schema extends EditorSchema = EditorSchema > = import ( '../view' ) . NodeView < Schema > ; export type ProsemirrorNode < Schema extends EditorSchema = EditorSchema > = import ( '../model' ) . Node < Schema > ; export type ProsemirrorPlugin < PluginState = any > = import ( '../state' ) . Plugin < PluginState , EditorSchema > ; export type MarkType < Schema extends EditorSchema = EditorSchema > = import ( '../model' ) . MarkType < Schema > ; export type NodeType < Schema extends EditorSchema = EditorSchema > = import ( '../model' ) . NodeType < Schema > ; export type EditorState < Schema extends EditorSchema = EditorSchema > = Readonly < import ( '../state' ) . EditorState < Schema > > ; export type Slice < Schema extends EditorSchema = EditorSchema > = import ( '../model' ) . Slice < Schema > ; export type Decoration = import ( '../view' ) . Decoration ; export type Mapping = import ( '../transform' ) . Mapping ; declare const _brand ; interface Branding < Type > { readonly [ _brand ] : Type ; } type Brand < Type , B > = Type & Branding < B > ; /**
 * Brands a command as non chainable so that it can be excluded from the
 * inferred chainable commands.
 */ export type NonChainableCommandFunction < Schema extends EditorSchema = EditorSchema , Extra extends object = object > = Brand < CommandFunction < Schema , Extra > , 'non-chainable' > ; /**
 * Used to apply the Prosemirror transaction to the current  EditorState .
 *
 *  template Schema export type DispatchFunction < Schema extends EditorSchema = EditorSchema > = ( tr : Transaction < Schema > ) => void ; remarks template Schema export type ProsemirrorCommandFunction < Schema extends EditorSchema = EditorSchema > = ( state : EditorState < Schema > , dispatch : DispatchFunction < Schema > | undefined , view : EditorView < Schema > | undefined ) => boolean ; template Schema template ExtraProps remarks see ProsemirrorCommandFunction export type CommandFunction < Schema extends EditorSchema = EditorSchema , ExtraProps extends object = object > = ( params : CommandFunctionProps < Schema > & ExtraProps ) => boolean ; template Schema export interface CommandFunctionProps < Schema extends EditorSchema = EditorSchema > { /**
     * The shared ProseMirror Transaction.
     */ tr : Transaction < Schema > ; /**
     * A snapshot of the ProseMirror editor state.
     */ state : EditorState < Schema > ; remarks dispatch ? : DispatchFunction < Schema > ; /**
     * An instance of the ProseMirror editor `view`.
     */ view ? : EditorView < Schema > ; }