"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.BehaviorPreset = void 0;
const tslib_1 = require("tslib");
const ClicksOnEdges_1 = require("./ClicksOnEdges/index.js");
const Clipboard_1 = require("./Clipboard/index.js");
const CommandMenu_1 = require("./CommandMenu/index.js");
const Cursor_1 = require("./Cursor/index.js");
const FilePaste_1 = require("./FilePaste/index.js");
const History_1 = require("./History/index.js");
const Placeholder_1 = require("./Placeholder/index.js");
const ReactRenderer_1 = require("./ReactRenderer/index.js");
const Selection_1 = require("./Selection/index.js");
const SelectionContext_1 = require("./SelectionContext/index.js");
const SharedState_1 = require("./SharedState/index.js");
const WidgetDecoration_1 = require("./WidgetDecoration/index.js");
tslib_1.__exportStar(require("./Autocomplete/index.js"), exports);
tslib_1.__exportStar(require("./ClicksOnEdges/index.js"), exports);
tslib_1.__exportStar(require("./Clipboard/index.js"), exports);
tslib_1.__exportStar(require("./CommandMenu/index.js"), exports);
tslib_1.__exportStar(require("./Cursor/index.js"), exports);
tslib_1.__exportStar(require("./FilePaste/index.js"), exports);
tslib_1.__exportStar(require("./History/index.js"), exports);
tslib_1.__exportStar(require("./Placeholder/index.js"), exports);
tslib_1.__exportStar(require("./ReactRenderer/index.js"), exports);
tslib_1.__exportStar(require("./Selection/index.js"), exports);
tslib_1.__exportStar(require("./SelectionContext/index.js"), exports);
tslib_1.__exportStar(require("./SharedState/index.js"), exports);
tslib_1.__exportStar(require("./WidgetDecoration/index.js"), exports);
const BehaviorPreset = (builder, opts) => {
    builder
        .use(Selection_1.Selection)
        .use(SharedState_1.SharedState)
        .use(Placeholder_1.Placeholder, opts.placeholder ?? {})
        .use(Cursor_1.Cursor, opts.cursor ?? {})
        .use(History_1.History, opts.history ?? {})
        .use(Clipboard_1.Clipboard, opts.clipboard ?? {})
        .use(ReactRenderer_1.ReactRendererExtension, opts.reactRenderer)
        .use(WidgetDecoration_1.WidgetDecoration);
    if (!opts.mobile) {
        builder.use(SelectionContext_1.SelectionContext, opts.selectionContext ?? {});
        if (opts.commandMenu)
            builder.use(CommandMenu_1.CommandMenu, opts.commandMenu);
    }
    builder.use(FilePaste_1.FilePaste);
    builder.use(ClicksOnEdges_1.ClicksOnEdges);
};
exports.BehaviorPreset = BehaviorPreset;
//# sourceMappingURL=index.js.map
