<!-- Public documentation export; not library implementation source. -->
# IAction

[Integration guide](https://docs.lumencharts.com/charting-library/reference/compatibility) · [Reference index](https://docs.lumencharts.com/charting-library/api/)

Public contract reference. This declaration describes types and callback shapes; availability is constrained by the linked integration guide and the runtime capability. Legacy product-specific fields are not a promise of implementation.

## Extends

[IMenuItem](https://docs.lumencharts.com/charting-library/api/IMenuItem)

## type {#type}

```ts
readonly type: MenuItemType.Action;
```

Use the type signature above and the integration guide for the owning capability.

## execute {#execute}

```ts
execute(): void;
```

Use the type signature above and the integration guide for the owning capability.

## getState {#getstate}

```ts
getState(): Readonly<ActionState>;
```

Use the type signature above and the integration guide for the owning capability.

## onUpdate {#onupdate}

```ts
onUpdate(): ISubscription<OnActionUpdateHandler>;
```

Use the type signature above and the integration guide for the owning capability.

## Related types

- [IMenuItem](https://docs.lumencharts.com/charting-library/api/IMenuItem)
- [ActionState](https://docs.lumencharts.com/charting-library/api/ActionState)
- [ISubscription](https://docs.lumencharts.com/charting-library/api/ISubscription)
- [OnActionUpdateHandler](https://docs.lumencharts.com/charting-library/api/OnActionUpdateHandler)

---
Documentation page: https://docs.lumencharts.com/charting-library/api/IAction
