[Home](./index.md) > [kibana-plugin-plugins-expressions-public](./kibana-plugin-plugins-expressions-public.md) > [Execution](./kibana-plugin-plugins-expressions-public.execution.md)
## Execution class
Signature:
```typescript
export declare class Execution = Record, Input = unknown, Output = unknown, InspectorAdapters extends Adapters = ExtraContext['inspectorAdapters'] extends object ? ExtraContext['inspectorAdapters'] : DefaultInspectorAdapters>
```
## Constructors
| Constructor | Modifiers | Description |
| --- | --- | --- |
| [(constructor)(params)](./kibana-plugin-plugins-expressions-public.execution._constructor_.md) | | Constructs a new instance of the Execution
class |
## Properties
| Property | Modifiers | Type | Description |
| --- | --- | --- | --- |
| [context](./kibana-plugin-plugins-expressions-public.execution.context.md) | | ExecutionContext<Input, InspectorAdapters> & ExtraContext
| Execution context - object that allows to do side-effects. Context is passed to every function. |
| [contract](./kibana-plugin-plugins-expressions-public.execution.contract.md) | | ExecutionContract<ExtraContext, Input, Output, InspectorAdapters>
| Contract is a public representation of Execution
instances. Contract we can return to other plugins for their consumption. |
| [expression](./kibana-plugin-plugins-expressions-public.execution.expression.md) | | string
| |
| [input](./kibana-plugin-plugins-expressions-public.execution.input.md) | | Input
| Initial input of the execution.N.B. It is initialized to null
rather than undefined
for legacy reasons, because in legacy interpreter it was set to null
by default. |
| [inspectorAdapters](./kibana-plugin-plugins-expressions-public.execution.inspectoradapters.md) | | InspectorAdapters
| |
| [params](./kibana-plugin-plugins-expressions-public.execution.params.md) | | ExecutionParams<ExtraContext>
| |
| [result](./kibana-plugin-plugins-expressions-public.execution.result.md) | | Promise<Output | ExpressionValueError>
| |
| [state](./kibana-plugin-plugins-expressions-public.execution.state.md) | | ExecutionContainer<Output | ExpressionValueError>
| Dynamic state of the execution. |
## Methods
| Method | Modifiers | Description |
| --- | --- | --- |
| [cancel()](./kibana-plugin-plugins-expressions-public.execution.cancel.md) | | Stop execution of expression. |
| [cast(value, toTypeNames)](./kibana-plugin-plugins-expressions-public.execution.cast.md) | | |
| [interpret(ast, input, options)](./kibana-plugin-plugins-expressions-public.execution.interpret.md) | | |
| [invokeChain(chainArr, input)](./kibana-plugin-plugins-expressions-public.execution.invokechain.md) | | |
| [invokeFunction(fn, input, args)](./kibana-plugin-plugins-expressions-public.execution.invokefunction.md) | | |
| [resolveArgs(fnDef, input, argAsts)](./kibana-plugin-plugins-expressions-public.execution.resolveargs.md) | | |
| [start(input)](./kibana-plugin-plugins-expressions-public.execution.start.md) | | Call this method to start execution.N.B. input
is initialized to null
rather than undefined
for legacy reasons, because in legacy interpreter it was set to null
by default. |