@ckeditor/ckeditor5-engine 48.8.1-alpha.4 → 49.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/controller/datacontroller.d.ts +329 -314
  3. package/dist/controller/editingcontroller.d.ts +95 -94
  4. package/dist/conversion/comparemarkers.d.ts +45 -45
  5. package/dist/conversion/conversion.d.ts +474 -474
  6. package/dist/conversion/conversionhelpers.d.ts +21 -21
  7. package/dist/conversion/downcastdispatcher.d.ts +539 -538
  8. package/dist/conversion/downcasthelpers.d.ts +1129 -1129
  9. package/dist/conversion/mapper.d.ts +692 -697
  10. package/dist/conversion/modelconsumable.d.ts +196 -196
  11. package/dist/conversion/upcastdispatcher.d.ts +483 -475
  12. package/dist/conversion/upcasthelpers.d.ts +491 -491
  13. package/dist/conversion/viewconsumable.d.ts +330 -330
  14. package/dist/dataprocessor/basichtmlwriter.d.ts +15 -15
  15. package/dist/dataprocessor/dataprocessor.d.ts +57 -57
  16. package/dist/dataprocessor/htmldataprocessor.d.ts +72 -72
  17. package/dist/dataprocessor/htmlwriter.d.ts +11 -11
  18. package/dist/dataprocessor/xmldataprocessor.d.ts +86 -86
  19. package/dist/dev-utils/model.d.ts +128 -116
  20. package/dist/dev-utils/operationreplayer.d.ts +49 -49
  21. package/dist/dev-utils/utils.d.ts +33 -33
  22. package/dist/dev-utils/view.d.ts +314 -309
  23. package/dist/engineconfig.d.ts +39 -39
  24. package/dist/index-content.css +3 -0
  25. package/dist/index-content.css.map +1 -0
  26. package/dist/index-editor.css +33 -29
  27. package/dist/index-editor.css.map +1 -0
  28. package/dist/index.css +26 -24
  29. package/dist/index.css.map +1 -1
  30. package/dist/index.d.ts +152 -150
  31. package/dist/index.js +34246 -40050
  32. package/dist/index.js.map +1 -1
  33. package/dist/legacyerrors.d.ts +0 -4
  34. package/dist/model/batch.d.ts +86 -86
  35. package/dist/model/differ.d.ts +504 -504
  36. package/dist/model/document.d.ts +265 -262
  37. package/dist/model/documentfragment.d.ts +214 -214
  38. package/dist/model/documentselection.d.ts +412 -410
  39. package/dist/model/element.d.ts +182 -182
  40. package/dist/model/history.d.ts +109 -109
  41. package/dist/model/item.d.ts +9 -9
  42. package/dist/model/liveposition.d.ts +81 -69
  43. package/dist/model/liverange.d.ts +118 -92
  44. package/dist/model/markercollection.d.ts +317 -324
  45. package/dist/model/model.d.ts +889 -909
  46. package/dist/model/node.d.ts +254 -254
  47. package/dist/model/nodelist.d.ts +110 -110
  48. package/dist/model/operation/attributeoperation.d.ts +98 -98
  49. package/dist/model/operation/detachoperation.d.ts +57 -57
  50. package/dist/model/operation/insertoperation.d.ts +85 -85
  51. package/dist/model/operation/markeroperation.d.ts +87 -87
  52. package/dist/model/operation/mergeoperation.d.ts +95 -95
  53. package/dist/model/operation/moveoperation.d.ts +97 -91
  54. package/dist/model/operation/nooperation.d.ts +33 -33
  55. package/dist/model/operation/operation.d.ts +94 -94
  56. package/dist/model/operation/operationfactory.d.ts +14 -14
  57. package/dist/model/operation/renameoperation.d.ts +78 -78
  58. package/dist/model/operation/rootattributeoperation.d.ts +93 -93
  59. package/dist/model/operation/rootoperation.d.ts +71 -71
  60. package/dist/model/operation/splitoperation.d.ts +104 -104
  61. package/dist/model/operation/transform.d.ts +91 -91
  62. package/dist/model/operation/utils.d.ts +58 -58
  63. package/dist/model/position.d.ts +542 -535
  64. package/dist/model/range.d.ts +467 -453
  65. package/dist/model/rootelement.d.ts +55 -55
  66. package/dist/model/schema.d.ts +1325 -1327
  67. package/dist/model/selection.d.ts +452 -471
  68. package/dist/model/text.d.ts +62 -62
  69. package/dist/model/textproxy.d.ts +140 -140
  70. package/dist/model/treewalker.d.ts +190 -190
  71. package/dist/model/typecheckable.d.ts +281 -281
  72. package/dist/model/utils/autoparagraphing.d.ts +29 -29
  73. package/dist/model/utils/deletecontent.d.ts +68 -68
  74. package/dist/model/utils/getselectedcontent.d.ts +27 -27
  75. package/dist/model/utils/insertcontent.d.ts +42 -42
  76. package/dist/model/utils/insertobject.d.ts +41 -41
  77. package/dist/model/utils/modifyselection.d.ts +44 -44
  78. package/dist/model/utils/selection-post-fixer.d.ts +71 -71
  79. package/dist/model/writer.d.ts +857 -848
  80. package/dist/view/attributeelement.d.ts +123 -123
  81. package/dist/view/containerelement.d.ts +49 -49
  82. package/dist/view/datatransfer.d.ts +70 -70
  83. package/dist/view/document.d.ts +175 -177
  84. package/dist/view/documentfragment.d.ts +158 -157
  85. package/dist/view/documentselection.d.ts +308 -307
  86. package/dist/view/domconverter.d.ts +614 -658
  87. package/dist/view/downcastwriter.d.ts +1012 -1006
  88. package/dist/view/editableelement.d.ts +64 -63
  89. package/dist/view/element.d.ts +754 -754
  90. package/dist/view/elementdefinition.d.ts +79 -79
  91. package/dist/view/emptyelement.d.ts +42 -42
  92. package/dist/view/filler.d.ts +75 -75
  93. package/dist/view/item.d.ts +9 -9
  94. package/dist/view/matcher.d.ts +412 -487
  95. package/dist/view/node.d.ts +164 -163
  96. package/dist/view/observer/arrowkeysobserver.d.ts +37 -37
  97. package/dist/view/observer/bubblingemittermixin.d.ts +163 -153
  98. package/dist/view/observer/bubblingeventinfo.d.ts +45 -42
  99. package/dist/view/observer/clickobserver.d.ts +36 -36
  100. package/dist/view/observer/compositionobserver.d.ts +67 -67
  101. package/dist/view/observer/domeventdata.d.ts +46 -46
  102. package/dist/view/observer/domeventobserver.d.ts +77 -74
  103. package/dist/view/observer/fakeselectionobserver.d.ts +42 -42
  104. package/dist/view/observer/focusobserver.d.ts +84 -84
  105. package/dist/view/observer/inputobserver.d.ts +76 -76
  106. package/dist/view/observer/keyobserver.d.ts +53 -53
  107. package/dist/view/observer/mouseobserver.d.ts +73 -73
  108. package/dist/view/observer/mutationobserver.d.ts +101 -101
  109. package/dist/view/observer/observer.d.ts +84 -83
  110. package/dist/view/observer/pointerobserver.d.ts +63 -63
  111. package/dist/view/observer/selectionobserver.d.ts +141 -137
  112. package/dist/view/observer/tabobserver.d.ts +38 -38
  113. package/dist/view/observer/touchobserver.d.ts +60 -60
  114. package/dist/view/placeholder.d.ts +77 -81
  115. package/dist/view/position.d.ts +187 -187
  116. package/dist/view/range.d.ts +282 -282
  117. package/dist/view/rawelement.d.ts +72 -72
  118. package/dist/view/renderer.d.ts +282 -273
  119. package/dist/view/rooteditableelement.d.ts +43 -43
  120. package/dist/view/selection.d.ts +356 -369
  121. package/dist/view/styles/background.d.ts +15 -15
  122. package/dist/view/styles/border.d.ts +27 -27
  123. package/dist/view/styles/margin.d.ts +12 -12
  124. package/dist/view/styles/padding.d.ts +12 -12
  125. package/dist/view/styles/utils.d.ts +72 -72
  126. package/dist/view/stylesmap.d.ts +715 -715
  127. package/dist/view/text.d.ts +75 -75
  128. package/dist/view/textproxy.d.ts +92 -92
  129. package/dist/view/tokenlist.d.ts +104 -104
  130. package/dist/view/treewalker.d.ts +201 -201
  131. package/dist/view/typecheckable.d.ts +445 -445
  132. package/dist/view/uielement.d.ts +93 -93
  133. package/dist/view/upcastwriter.d.ts +412 -412
  134. package/dist/view/view.d.ts +466 -468
  135. package/package.json +3 -3
@@ -1,77 +1,89 @@
1
1
  /**
2
- * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
- */
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
5
5
  /**
6
- * @module engine/model/liveposition
7
- */
8
- import { ModelPosition, type ModelPositionOffset, type ModelPositionStickiness } from './position.js';
9
- import { type ModelDocumentFragment } from './documentfragment.js';
10
- import { type ModelItem } from './item.js';
11
- import { type ModelRootElement } from './rootelement.js';
12
- declare const ModelLivePosition_base: import("@ckeditor/ckeditor5-utils").Mixed<typeof ModelPosition, import("@ckeditor/ckeditor5-utils").Emitter>;
6
+ * @module engine/model/liveposition
7
+ */
8
+ import { ModelPosition, type ModelPositionOffset, type ModelPositionStickiness } from "./position.js";
9
+ import type { Model } from "./model.js";
10
+ import { type ModelDocumentFragment } from "./documentfragment.js";
11
+ import { type ModelItem } from "./item.js";
12
+ import { type ModelRootElement } from "./rootelement.js";
13
+ import { type EmitterMixinConstructor } from "@ckeditor/ckeditor5-utils";
14
+ declare const ModelLivePositionBase: EmitterMixinConstructor<typeof ModelPosition>;
13
15
  /**
14
- * `ModelLivePosition` is a type of {@link module:engine/model/position~ModelPosition Position}
15
- * that updates itself as {@link module:engine/model/document~ModelDocument document}
16
- * is changed through operations. It may be used as a bookmark.
17
- *
18
- * **Note:** Contrary to {@link module:engine/model/position~ModelPosition}, `ModelLivePosition` works only in roots that are
19
- * {@link module:engine/model/rootelement~ModelRootElement}.
20
- * If {@link module:engine/model/documentfragment~ModelDocumentFragment} is passed, error will be thrown.
21
- *
22
- * **Note:** Be very careful when dealing with `ModelLivePosition`. Each `ModelLivePosition` instance bind events that might
23
- * have to be unbound.
24
- * Use {@link module:engine/model/liveposition~ModelLivePosition#detach} whenever you don't need `ModelLivePosition` anymore.
25
- */
26
- export declare class ModelLivePosition extends /* #__PURE__ */ ModelLivePosition_base {
27
- /**
28
- * Root of the position path.
29
- */
30
- readonly root: ModelRootElement;
31
- /**
32
- * Creates a live position.
33
- *
34
- * @see module:engine/model/position~ModelPosition
35
- */
36
- constructor(root: ModelRootElement, path: Array<number>, stickiness?: ModelPositionStickiness);
37
- /**
38
- * Unbinds all events previously bound by `ModelLivePosition`. Use it whenever you don't need `ModelLivePosition` instance
39
- * anymore (i.e. when leaving scope in which it was declared or before re-assigning variable that was
40
- * referring to it).
41
- */
42
- detach(): void;
43
- /**
44
- * Creates a {@link module:engine/model/position~ModelPosition position instance}, which is equal to this live position.
45
- */
46
- toPosition(): ModelPosition;
47
- /**
48
- * Creates a `ModelLivePosition` instance that is equal to position.
49
- */
50
- static fromPosition(position: ModelPosition, stickiness?: ModelPositionStickiness): ModelLivePosition;
51
- /**
52
- * @internal
53
- * @see module:engine/model/position~ModelPosition._createAfter
54
- */
55
- static readonly _createAfter: (item: ModelItem | ModelDocumentFragment, stickiness?: ModelPositionStickiness) => ModelLivePosition;
56
- /**
57
- * @internal
58
- * @see module:engine/model/position~ModelPosition._createBefore
59
- */
60
- static readonly _createBefore: (item: ModelItem | ModelDocumentFragment, stickiness?: ModelPositionStickiness) => ModelLivePosition;
61
- /**
62
- * @internal
63
- * @see module:engine/model/position~ModelPosition._createAt
64
- */
65
- static readonly _createAt: (itemOrPosition: ModelItem | ModelPosition | ModelDocumentFragment, offset?: ModelPositionOffset, stickiness?: ModelPositionStickiness) => ModelLivePosition;
16
+ * `ModelLivePosition` is a type of {@link module:engine/model/position~ModelPosition Position}
17
+ * that updates itself as {@link module:engine/model/document~ModelDocument document}
18
+ * is changed through operations. It may be used as a bookmark.
19
+ *
20
+ * **Note:** Contrary to {@link module:engine/model/position~ModelPosition}, `ModelLivePosition` works only in roots that are
21
+ * {@link module:engine/model/rootelement~ModelRootElement}.
22
+ * If {@link module:engine/model/documentfragment~ModelDocumentFragment} is passed, error will be thrown.
23
+ *
24
+ * **Note:** Be very careful when dealing with `ModelLivePosition`. Each `ModelLivePosition` instance bind events that might
25
+ * have to be unbound.
26
+ * Use {@link module:engine/model/liveposition~ModelLivePosition#detach} whenever you don't need `ModelLivePosition` anymore.
27
+ */
28
+ export declare class ModelLivePosition extends ModelLivePositionBase {
29
+ /**
30
+ * Root of the position path.
31
+ */
32
+ readonly root: ModelRootElement;
33
+ /**
34
+ * Creates a live position.
35
+ *
36
+ * @see module:engine/model/position~ModelPosition
37
+ */
38
+ constructor(root: ModelRootElement, path: Array<number>, stickiness?: ModelPositionStickiness, model?: Model);
39
+ /**
40
+ * Unbinds all events previously bound by `ModelLivePosition`. Use it whenever you don't need `ModelLivePosition` instance
41
+ * anymore (i.e. when leaving scope in which it was declared or before re-assigning variable that was
42
+ * referring to it).
43
+ */
44
+ detach(): void;
45
+ /**
46
+ * Creates a {@link module:engine/model/position~ModelPosition position instance}, which is equal to this live position.
47
+ */
48
+ toPosition(): ModelPosition;
49
+ /**
50
+ * Creates a `ModelLivePosition` instance that is equal to position.
51
+ */
52
+ static fromPosition(position: ModelPosition, stickiness?: ModelPositionStickiness): ModelLivePosition;
53
+ /**
54
+ * Creates a `ModelLivePosition` for a position rooted in
55
+ * a {@link module:engine/model/documentfragment~ModelDocumentFragment document fragment}.
56
+ *
57
+ * Document fragment does not belong to a document, so the live position is bound to the provided `model` and keeps
58
+ * itself in sync with every operation applied to that fragment (e.g. while editing clipboard content).
59
+ *
60
+ * @internal
61
+ */
62
+ static _fromPositionInDocumentFragment(position: ModelPosition, model: Model, stickiness?: ModelPositionStickiness): ModelLivePosition;
63
+ /**
64
+ * @internal
65
+ * @see module:engine/model/position~ModelPosition._createAfter
66
+ */
67
+ static readonly _createAfter: (item: ModelItem | ModelDocumentFragment, stickiness?: ModelPositionStickiness) => ModelLivePosition;
68
+ /**
69
+ * @internal
70
+ * @see module:engine/model/position~ModelPosition._createBefore
71
+ */
72
+ static readonly _createBefore: (item: ModelItem | ModelDocumentFragment, stickiness?: ModelPositionStickiness) => ModelLivePosition;
73
+ /**
74
+ * @internal
75
+ * @see module:engine/model/position~ModelPosition._createAt
76
+ */
77
+ static readonly _createAt: (itemOrPosition: ModelItem | ModelPosition | ModelDocumentFragment, offset?: ModelPositionOffset, stickiness?: ModelPositionStickiness) => ModelLivePosition;
66
78
  }
67
79
  /**
68
- * Fired when `ModelLivePosition` instance is changed due to changes on {@link module:engine/model/document~ModelDocument}.
69
- *
70
- * @eventName ~ModelLivePosition#change
71
- * @param oldPosition Position equal to this live position before it got changed.
72
- */
80
+ * Fired when `ModelLivePosition` instance is changed due to changes on {@link module:engine/model/document~ModelDocument}.
81
+ *
82
+ * @eventName ~ModelLivePosition#change
83
+ * @param oldPosition Position equal to this live position before it got changed.
84
+ */
73
85
  export type ModelLivePositionChangeEvent = {
74
- name: 'change';
75
- args: [oldPosition: ModelPosition];
86
+ name: "change";
87
+ args: [oldPosition: ModelPosition];
76
88
  };
77
89
  export {};
@@ -1,106 +1,132 @@
1
1
  /**
2
- * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
- */
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
5
5
  /**
6
- * @module engine/model/liverange
7
- */
8
- import { ModelRange } from './range.js';
9
- import { type ModelDocumentFragment } from './documentfragment.js';
10
- import { type ModelElement } from './element.js';
11
- import { type ModelItem } from './item.js';
12
- import { type ModelPosition } from './position.js';
13
- declare const ModelLiveRange_base: import("@ckeditor/ckeditor5-utils").Mixed<typeof ModelRange, import("@ckeditor/ckeditor5-utils").Emitter>;
6
+ * @module engine/model/liverange
7
+ */
8
+ import { ModelRange } from "./range.js";
9
+ import type { Model } from "./model.js";
10
+ import { type ModelDocumentFragment } from "./documentfragment.js";
11
+ import { type ModelElement } from "./element.js";
12
+ import { type ModelItem } from "./item.js";
13
+ import { type ModelPosition } from "./position.js";
14
+ import { type EmitterMixinConstructor } from "@ckeditor/ckeditor5-utils";
15
+ declare const ModelLiveRangeBase: EmitterMixinConstructor<typeof ModelRange>;
14
16
  /**
15
- * `ModelLiveRange` is a type of {@link module:engine/model/range~ModelRange Range}
16
- * that updates itself as {@link module:engine/model/document~ModelDocument document}
17
- * is changed through operations. It may be used as a bookmark.
18
- *
19
- * **Note:** Be very careful when dealing with `ModelLiveRange`. Each `ModelLiveRange` instance bind events that might
20
- * have to be unbound. Use {@link module:engine/model/liverange~ModelLiveRange#detach detach} whenever you don't need
21
- * `ModelLiveRange` anymore.
22
- */
23
- export declare class ModelLiveRange extends /* #__PURE__ */ ModelLiveRange_base {
24
- /**
25
- * Creates a live range.
26
- *
27
- * @see module:engine/model/range~ModelRange
28
- */
29
- constructor(start: ModelPosition, end?: ModelPosition | null);
30
- /**
31
- * Unbinds all events previously bound by `ModelLiveRange`. Use it whenever you don't need `ModelLiveRange` instance
32
- * anymore (i.e. when leaving scope in which it was declared or before re-assigning variable that was
33
- * referring to it).
34
- */
35
- detach(): void;
36
- /**
37
- * Creates a {@link module:engine/model/range~ModelRange range instance} that is equal to this live range.
38
- */
39
- toRange(): ModelRange;
40
- /**
41
- * Creates a `ModelLiveRange` instance that is equal to the given range.
42
- */
43
- static fromRange(range: ModelRange): ModelLiveRange;
44
- /**
45
- * @see module:engine/model/range~ModelRange._createIn
46
- * @internal
47
- */
48
- static readonly _createIn: (element: ModelElement | ModelDocumentFragment) => ModelLiveRange;
49
- /**
50
- * @see module:engine/model/range~ModelRange._createOn
51
- * @internal
52
- */
53
- static readonly _createOn: (element: ModelItem | ModelDocumentFragment) => ModelLiveRange;
54
- /**
55
- * @see module:engine/model/range~ModelRange._createFromPositionAndShift
56
- * @internal
57
- */
58
- static readonly _createFromPositionAndShift: (position: ModelPosition, shift: number) => ModelLiveRange;
17
+ * `ModelLiveRange` is a type of {@link module:engine/model/range~ModelRange Range}
18
+ * that updates itself as {@link module:engine/model/document~ModelDocument document}
19
+ * is changed through operations. It may be used as a bookmark.
20
+ *
21
+ * **Note:** Be very careful when dealing with `ModelLiveRange`. Each `ModelLiveRange` instance bind events that might
22
+ * have to be unbound. Use {@link module:engine/model/liverange~ModelLiveRange#detach detach} whenever you don't need
23
+ * `ModelLiveRange` anymore.
24
+ */
25
+ export declare class ModelLiveRange extends ModelLiveRangeBase {
26
+ /**
27
+ * Creates a live range.
28
+ *
29
+ * @see module:engine/model/range~ModelRange
30
+ */
31
+ constructor(start: ModelPosition, end?: ModelPosition | null, model?: Model);
32
+ /**
33
+ * Unbinds all events previously bound by `ModelLiveRange`. Use it whenever you don't need `ModelLiveRange` instance
34
+ * anymore (i.e. when leaving scope in which it was declared or before re-assigning variable that was
35
+ * referring to it).
36
+ */
37
+ detach(): void;
38
+ /**
39
+ * Creates a {@link module:engine/model/range~ModelRange range instance} that is equal to this live range.
40
+ */
41
+ toRange(): ModelRange;
42
+ /**
43
+ * Creates a `ModelLiveRange` instance that is equal to the given range.
44
+ */
45
+ static fromRange(range: ModelRange): ModelLiveRange;
46
+ /**
47
+ * Creates a `ModelLiveRange` for a range rooted in
48
+ * a {@link module:engine/model/documentfragment~ModelDocumentFragment document fragment}.
49
+ *
50
+ * Document fragment does not belong to a document, so the live range is bound to the provided `model` and keeps
51
+ * itself in sync with every operation applied to that fragment (e.g. while editing clipboard content).
52
+ *
53
+ * @internal
54
+ */
55
+ static _fromRangeInDocumentFragment(range: ModelRange, model: Model): ModelLiveRange;
56
+ /**
57
+ * @see module:engine/model/range~ModelRange._createIn
58
+ * @internal
59
+ */
60
+ static readonly _createIn: (element: ModelElement | ModelDocumentFragment) => ModelLiveRange;
61
+ /**
62
+ * @see module:engine/model/range~ModelRange._createOn
63
+ * @internal
64
+ */
65
+ static readonly _createOn: (element: ModelItem | ModelDocumentFragment) => ModelLiveRange;
66
+ /**
67
+ * @see module:engine/model/range~ModelRange._createFromPositionAndShift
68
+ * @internal
69
+ */
70
+ static readonly _createFromPositionAndShift: (position: ModelPosition, shift: number) => ModelLiveRange;
59
71
  }
60
72
  /**
61
- * Fired when `ModelLiveRange` instance boundaries have changed due to changes in the
62
- * {@link module:engine/model/document~ModelDocument document}.
63
- *
64
- * @eventName ~ModelLiveRange#change:range
65
- * @param oldRange Range with start and end position equal to start and end position of this live
66
- * range before it got changed.
67
- * @param data Object with additional information about the change.
68
- * @param data.deletionPosition Source position for remove and merge changes.
69
- * Available if the range was moved to the graveyard root, `null` otherwise.
70
- */
73
+ * Fired when `ModelLiveRange` instance boundaries have changed due to changes in the
74
+ * {@link module:engine/model/document~ModelDocument document}.
75
+ *
76
+ * @eventName ~ModelLiveRange#change:range
77
+ * @param oldRange Range with start and end position equal to start and end position of this live
78
+ * range before it got changed.
79
+ * @param data Object with additional information about the change.
80
+ * @param data.deletionPosition Source position for remove and merge changes.
81
+ * Available if the range was moved to the graveyard root, `null` otherwise.
82
+ */
71
83
  export type ModelLiveRangeChangeRangeEvent = {
72
- name: 'change' | 'change:range';
73
- args: [range: ModelRange, data: {
74
- deletionPosition: ModelPosition | null;
75
- }];
84
+ name: "change" | "change:range";
85
+ args: [range: ModelRange, data: {
86
+ deletionPosition: ModelPosition | null;
87
+ }];
76
88
  };
77
89
  /**
78
- * Fired when `ModelLiveRange` instance boundaries have not changed after
79
- * a change in {@link module:engine/model/document~ModelDocument document}
80
- * but the change took place inside the range, effectively changing its content.
81
- *
82
- * @eventName ~ModelLiveRange#change:content
83
- * @param range Range with start and end position equal to start and end position of
84
- * change range.
85
- * @param data Object with additional information about the change.
86
- * @param data.deletionPosition Due to the nature of this event, this property is always set to `null`. It is passed
87
- * for compatibility with the {@link module:engine/model/liverange~ModelLiveRange#event:change:range} event.
88
- */
90
+ * Fired when `ModelLiveRange` instance was entirely removed from the document fragment.
91
+ *
92
+ * @eventName ~ModelLiveRange#change:drop
93
+ * @param range Collapsed range with start and end position equal to the source position of the detach operation.
94
+ * @param data Object with additional information about the change.
95
+ * @param data.deletionPosition Source position for detach changes.
96
+ */
97
+ export type ModelLiveRangeChangeDropEvent = {
98
+ name: "change" | "change:drop";
99
+ args: [range: ModelRange, data: {
100
+ deletionPosition: ModelPosition;
101
+ }];
102
+ };
103
+ /**
104
+ * Fired when `ModelLiveRange` instance boundaries have not changed after
105
+ * a change in {@link module:engine/model/document~ModelDocument document}
106
+ * but the change took place inside the range, effectively changing its content.
107
+ *
108
+ * @eventName ~ModelLiveRange#change:content
109
+ * @param range Range with start and end position equal to start and end position of
110
+ * change range.
111
+ * @param data Object with additional information about the change.
112
+ * @param data.deletionPosition Due to the nature of this event, this property is always set to `null`. It is passed
113
+ * for compatibility with the {@link module:engine/model/liverange~ModelLiveRange#event:change:range} event.
114
+ */
89
115
  export type ModelLiveRangeChangeContentEvent = {
90
- name: 'change' | 'change:content';
91
- args: [range: ModelRange, data: {
92
- deletionPosition: null;
93
- }];
116
+ name: "change" | "change:content";
117
+ args: [range: ModelRange, data: {
118
+ deletionPosition: null;
119
+ }];
94
120
  };
95
121
  /**
96
- * Describes `change:range` or `change:content` event.
97
- *
98
- * @eventName ~ModelLiveRange#change
99
- */
122
+ * Describes `change:range` or `change:content` event.
123
+ *
124
+ * @eventName ~ModelLiveRange#change
125
+ */
100
126
  export type ModelLiveRangeChangeEvent = {
101
- name: 'change' | 'change:range' | 'change:content';
102
- args: [range: ModelRange, data: {
103
- deletionPosition: ModelPosition | null;
104
- }];
127
+ name: "change" | "change:range" | "change:content";
128
+ args: [range: ModelRange, data: {
129
+ deletionPosition: ModelPosition | null;
130
+ }];
105
131
  };
106
132
  export {};