/**
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
*/
/**
* @module engine/engineconfig
*/
/**
* CKEditor engine configuration options.
*
* This is a base class for {@link module:core/editor/editorconfig~EditorConfig `EditorConfig`}.
*/
export interface EngineConfig {
	/**
	* Enables specific experimental features in the editor for testing and feedback.
	*/
	experimentalFlags?: ExperimentalFlagsConfig;
}
/**
* The `experimentalFlags` configuration option enables integrators to turn on specific experimental
* or pre-release features in CKEditor 5. These flags are primarily intended for testing and feedback purposes
* during the development of new functionality.
*
* Each key in the `experimentalFlags` object represents a unique experimental feature identifier.
* Setting the flag’s value to true activates the feature, while false (or absence of the key) keeps it disabled.
*
* **Notes:**
* * Use with caution: Experimental features are not guaranteed to be stable and may change or be removed in future releases.
* * No compatibility guarantees: Their APIs, behavior, and configuration may change without notice.
* * Intended audience: This option is mainly for developers testing upcoming features, contributors, or early adopters
* evaluating new editor capabilities.
*/
export interface ExperimentalFlagsConfig {
	/**
	* Controls deep schema verification during
	* {@link module:engine/model/model~Model#insertContent `model.insertContent()`} operations.
	* This ensures that all elements and attributes in the inserted content fully conform to the schema — not just
	* at the top level — which helps identify structural inconsistencies early.
	*
	* This feature is **enabled by default**. Set to `false` only if you need to temporarily opt out.
	* This flag is deprecated and will be removed in a future release.
	*
	* @deprecated This flag is deprecated. Deep schema verification is now enabled by default.
	* Set to `false` only as a temporary workaround. The flag will be removed in a future release.
	*/
	modelInsertContentDeepSchemaVerification?: boolean;
}
