# DocumentChange

interface

Represents a single change document change.

<a id="properties"></a>

## Properties

<a id="member-afterRange"></a>

### `afterRange: ModelRange`

What the covered content becomes, represented as a range inside the processed data. The range covers existing elements which were modified or new elements.

In other words, the document change says that `beforeRange` content becomes `afterRange` content.

Note, that the range is placed inside the processed data represented as a model document fragment, not in the actual model document. One processed data model fragment is shared between all document changes in a given set.

Collapsed for a change that only removes content.

<a id="member-aiSource"></a>

### `aiSource?: AIOperationSource`

Which AI feature produced the change or not set if the change did not come from AI.

See [`aiSource`](module_ai_toolkit_documentcompare-DocumentCompareComputeChangesOptions.md#member-aiSource).

<a id="member-beforeRange"></a>

### `beforeRange: ModelRange`

What the change covers, represented as a range inside the captured snapshot. The range covers the existing elements which were either removed or modified.

Note, that the range is placed inside the snapshot represented as a model document fragment, not in the actual model document. One snapshot model fragment is shared between all document changes in a given set.

Collapsed for a change that only adds content.

<a id="member-channelId"></a>

### `channelId: string`

The ID of the document the change was captured from.

<a id="member-rootName"></a>

### `rootName: string`

The name of the editor root the change applies to.

<a id="member-sessionId"></a>

### `sessionId: string`

The editing session ID during which the change was captured.

<a id="member-version"></a>

### `version: number`

The document [version](module_engine_model_document-ModelDocument.md#member-version) for which the change is proposed.

---

Full index of the CKEditor 5 API reference: [llms.txt](llms.txt)
