import type { Editor } from './Editor';
import type { Feature } from './Feature';
import { Schema } from 'prosemirror-model';
import type { Plugin } from 'prosemirror-state';
import type { Commands, EditorOptions, SchemaOptions } from './types';
import type { EditorView } from 'prosemirror-view';
export declare class FeaturesManager {
    private editor;
    features: Feature[];
    schema: Schema;
    commands: Commands;
    view: EditorView;
    constructor(editor: Editor);
    setupView(view: EditorView): void;
    setupFeatures(): void;
    static getCoreFeatures(): Feature[];
    static resolve(options: Partial<EditorOptions>, extraFeatures?: Feature[]): Feature[];
    static buildSchema(features: Feature[], options: SchemaOptions): Schema<string, string>;
    /** Sort features by priority */
    static sort(features: Feature[]): Feature[];
    /** Get all ProseMirror plugins */
    get plugins(): Plugin[];
}
//# sourceMappingURL=FeaturesManager.d.ts.map