# ModelApplyOperationEvent

typedef

Fired every time any [operation](module_engine_model_operation_operation-Operation.md) is applied on the model using [`applyOperation`](module_engine_model_model-Model.md#function-applyOperation).

Note that this event is suitable only for very specific use-cases. Use it if you need to listen to every single operation applied on the document. However, in most cases [event-change](module_engine_model_document-ModelDocument.md#event-change) should be used.

A few callbacks are already added to this event by engine internal classes:

* with `highest` priority operation is validated,
* with `normal` priority operation is executed,
* with `low` priority the [`ModelDocument`](module_engine_model_document-ModelDocument.md) updates its version,
* with `low` priority [`ModelLivePosition`](module_engine_model_liveposition-ModelLivePosition.md) and [`ModelLiveRange`](module_engine_model_liverange-ModelLiveRange.md) update themselves.

[See source](https://github.com/ckeditor/ckeditor5/blob/master/packages/ckeditor5-engine/src/model/model.ts#L1242)

#### Value

`DecoratedMethodEvent<Model, 'applyOperation'>`

## Fired by

* [Model#applyOperation](module_engine_model_model-Model.md#event-applyOperation)

---

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