---
title: "ModelUpdateCommand | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/ModelUpdateCommand/"
---

# ModelUpdateCommand

> - [`BaseCommand`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/BaseCommand.md#abstract-basecommand)\<`TArgs`, `TResult`\>

## Enumerations

### HistoryUpdateMode

#### Enumeration Members

| Enumeration Member | Value |
| ------ | ------ |
|  `ForceUpdate` | `2` |
|  `NotUpdate` | `0` |
|  `Update` | `1` |

## Classes

### `abstract` ModelUpdateCommand

#### Extends

#### Extended by

- [`BaseItemsCommand`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/BaseItemsCommand.md#abstract-baseitemscommand)
- [`BaseProductCommand`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/BaseProductCommand.md#abstract-baseproductcommand)
- [`BaseSurfaceCommand`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/BaseSurfaceCommand.md#abstract-basesurfacecommand)

#### Type Parameters

| Type Parameter |
| ------ |
| `TArgs` |
| `TResult` |

#### Constructors

##### Constructor

```ts
new ModelUpdateCommand<TArgs, TResult>(args, historyArgs): ModelUpdateCommand<TArgs, TResult>;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `args` | `TArgs` |
| `historyArgs` | [`IHistoryArgs`](#ihistoryargs) |

###### Returns

[`ModelUpdateCommand`](#abstract-modelupdatecommand)\<`TArgs`, `TResult`\>

###### Overrides

[`BaseCommand`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/BaseCommand.md#abstract-basecommand).[`constructor`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/BaseCommand.md#constructor)

#### Methods

##### execute()

```ts
execute(): Promise<TResult>;
```

###### Returns

[`Promise`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/finally.md#promise)\<`TResult`\>

###### Overrides

[`BaseCommand`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/BaseCommand.md#abstract-basecommand).[`execute`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/BaseCommand.md#execute)

##### redo()

```ts
redo(): Promise<void>;
```

###### Returns

[`Promise`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/finally.md#promise)\<`void`\>

##### undo()

```ts
undo(): Promise<void>;
```

###### Returns

[`Promise`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/finally.md#promise)\<`void`\>

## Interfaces

### IHistoryArgs

#### Properties

##### history?

```ts
optional history?: History;
```

##### historyUpdateMode?

```ts
optional historyUpdateMode?: HistoryUpdateMode;
```
