
# Interface: ICanvasCommandDefinition

Provides the `after` property to support a queue of commands.

The following example illustrates how you can run the `setViewerSettings` command after `setPrintArea` completes.
```
{
  "widgets": [{
    "type": "canvas",
    "name": "editor",
    "params": {
      "inital": { ... },
      "setViewerSettings": "{{vars.zoomSettings[$['flyer-size']._.title]}}",
      "setPrintArea": {
        "data": {
          "designFile": "{{$['flyer-gallery']._.name}}"
        },
        "after": [
          "setViewerSettings"
        ]
      }
    }
  }]
}
```

## Hierarchy

* **ICanvasCommandDefinition**

  ↳ [ICanvasDefinitionModifyItems](icanvasdefinitionmodifyitems.md)

  ↳ [ICanvasDefinitionSetTheme](icanvasdefinitionsettheme.md)

  ↳ [ICanvasDefinitionSetViewerSettings](icanvasdefinitionsetviewersettings.md)

  ↳ [ICanvasDefinitionInitial](icanvasdefinitioninitial.md)

  ↳ [ICanvasDefinitionChangeLayout](icanvasdefinitionchangelayout.md)

  ↳ [ICanvasDefinitionSetBackground](icanvasdefinitionsetbackground.md)

  ↳ [ICanvasDefinitionSetPrintArea](icanvasdefinitionsetprintarea.md)

  ↳ [ICanvasDefinitionChangeMockup](icanvasdefinitionchangemockup.md)

  ↳ [ISetRemoteMockup](isetremotemockup.md)

## Index

### Properties

* [after](icanvascommanddefinition.md#optional-after)

## Properties

### `Optional` after

• **after**? : *string | string[]*

The next commands to be executed after this command completes.
