# RenameOperation

class

Operation to change element's name.

Using this class you can change element's name.

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

<a id="properties">

## Properties

<a id="member-affectedSelectable">

### `affectedSelectable: ModelSelectable` _(readonly)_

A selectable that will be affected by the operation after it is executed.

The exact returned parameter differs between operation types.

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

<a id="member-baseVersion">

### `baseVersion: number | null` _(inherited)_

[`version`](module_engine_model_document-ModelDocument.md#member-version) on which operation can be applied. If you try to [apply](module_engine_model_model-Model.md#function-applyOperation) operation with different base version than the [document version](module_engine_model_document-ModelDocument.md#member-version) the [model-document-applyOperation-wrong-version](module_utils_ckeditorerror-CKEditorError.md) error is thrown.

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

<a id="member-batch">

### `batch: Batch | null` _(inherited)_

[Batch](module_engine_model_batch-Batch.md) to which the operation is added or `null` if the operation is not added to any batch yet.

Note, that a [non-document operation](#member-isDocumentOperation) has this property always set to `null`, and is never added to any batch.

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

<a id="member-isDocumentOperation">

### `isDocumentOperation: boolean` _(readonly)_

Defines whether operation is executed on attached or detached [items](module_engine_model_item-ModelItem.md).

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

<a id="member-newName">

### `newName: string`

New name for the element.

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

<a id="member-oldName">

### `oldName: string`

Current name of the element.

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

<a id="member-position">

### `position: ModelPosition`

Position before an element to change.

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

<a id="member-type">

### `type: 'rename'` _(readonly)_

Operation type.

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

#### Static properties

<a id="static-member-className">

### `className: string` _(readonly)_

Name of the operation class used for serialization.

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

<a id="methods">

## Methods

<a id="function-constructor">

### `constructor( position, oldName, newName, baseVersion )`

Creates an operation that changes element's name.

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

#### Parameters

* `position: ModelPosition`

  Position before an element to change.

* `oldName: string`

  Current name of the element.

* `newName: string`

  New name for the element.

* `baseVersion: number | null`

  Document [`version`](module_engine_model_document-ModelDocument.md#member-version) on which operation can be applied or `null` if the operation operates on detached (non-document) tree.

<a id="function-clone">

### `clone() → RenameOperation`

Creates and returns an operation that has the same parameters as this operation.

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

#### Returns

* `RenameOperation`

  Clone of this operation.

<a id="function-getReversed">

### `getReversed() → Operation`

See [`Operation#getReversed()`](module_engine_model_operation_operation-Operation.md#function-getReversed).

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

#### Returns

* `Operation`

<a id="function-toJSON">

### `toJSON() → unknown`

Custom toJSON method to solve child-parent circular dependencies.

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

#### Returns

* `unknown`

  Clone of this object with the operation property replaced with string.

<a id="function-_execute">

### `_execute() → void` _(internal)_

Executes the operation - modifications described by the operation properties will be applied to the model tree.

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

#### Returns

* `void`

<a id="function-_validate">

### `_validate() → void` _(internal)_

Checks whether the operation's parameters are correct and the operation can be correctly executed. Throws an error if operation is not valid.

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

#### Returns

* `void`

#### Static methods

<a id="static-function-fromJSON">

### `fromJSON( json, document ) → RenameOperation` _(static)_

Creates `RenameOperation` object from deserialized object, i.e. from parsed JSON string.

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

#### Parameters

* `json: any`

  Deserialized JSON object.

* `document: ModelDocument`

  Document on which this operation will be applied.

#### Returns

* `RenameOperation`

---

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