import MarkdownIt, { type PresetName } from 'markdown-it'; import type { Schema } from 'prosemirror-model'; import type { Plugin } from 'prosemirror-state'; import { Logger2 } from "../logger.js"; import { ActionsManager } from "./ActionsManager.js"; import type { SchemaDynamicModifier } from "./SchemaDynamicModifier.js"; import type { MarkdownParserDynamicModifier } from "./markdown/MarkdownParser.js"; import type { MarkdownSerializerDynamicModifier } from "./markdown/MarkdownSerializerDynamicModifier.js"; import type { TransformFn } from "./markdown/ProseMirrorTransformer/index.js"; import type { ActionSpec } from "./types/actions.js"; import type { Extension, ExtensionDeps } from "./types/extension.js"; import type { MarkViewConstructor, NodeViewConstructor } from "./types/node-views.js"; type ExtensionsManagerParams = { logger?: Logger2.ILogger; extensions: Extension; options?: ExtensionsManagerOptions; }; type ExtensionsManagerOptions = { mdOpts?: MarkdownIt.Options & { preset?: PresetName; }; linkifyTlds?: string | string[]; pmTransformers?: TransformFn[]; dynamicModifiers?: { parser?: MarkdownParserDynamicModifier; serializer?: MarkdownSerializerDynamicModifier; schema?: SchemaDynamicModifier; }; }; export declare class ExtensionsManager { #private; static process(extensions: Extension, options: ExtensionsManagerOptions, logger?: Logger2.ILogger): { actions: ActionsManager; rawActions: Record; plugins: Plugin[]; nodeViews: Record; markViews: Record; schema: Schema; textParser: import("./index.js").Parser; markupParser: import("./index.js").Parser; serializer: import("./index.js").Serializer; }; constructor({ extensions, options, logger }: ExtensionsManagerParams); build(): { actions: ActionsManager; rawActions: Record; plugins: Plugin[]; nodeViews: Record; markViews: Record; schema: Schema; textParser: import("./index.js").Parser; markupParser: import("./index.js").Parser; serializer: import("./index.js").Serializer; }; buildDeps(): ExtensionDeps; private processExtensions; private processNode; private processMark; private createParser; private createDeps; private createDerived; } export {};