# QueryVariable

Canonical page: https://www.adaptabletools.com/docs/reference/queryvariable

A named value that can be referenced in Expressions via `VAR('name')`.

```ts title="TypeScript"
export interface QueryVariable 
```

## Properties

| Property | Type | Description |
| --- | --- | --- |
| [description](https://www.adaptabletools.com/docs/reference/queryvariable.md#description) | `string` | Optional description shown in the Expression Editor lookups |
| [name](https://www.adaptabletools.com/docs/reference/queryvariable.md#name) | `string` | Unique name used to reference the variable in expressions: `VAR('name')` |
| [value](https://www.adaptabletools.com/docs/reference/queryvariable.md#value) | [`QueryVariableValue`](https://www.adaptabletools.com/docs/reference/queryvariablevalue.md)` \| ((context: `[`QueryVariableContext`](https://www.adaptabletools.com/docs/reference/queryvariablecontext.md)`) => `[`QueryVariableValue`](https://www.adaptabletools.com/docs/reference/queryvariablevalue.md)`)` | Static value, or resolver evaluated with each expression evaluation |

## Property Details

### description

Optional description shown in the Expression Editor lookups

```ts title="TypeScript"
description?: string;
```

###### Property Value

`string`

### name

Unique name used to reference the variable in expressions: `VAR('name')`

```ts title="TypeScript"
name: string;
```

###### Property Value

`string`

### value

Static value, or resolver evaluated with each expression evaluation

```ts title="TypeScript"
value: QueryVariableValue | ((context: QueryVariableContext) => QueryVariableValue);
```

###### Property Value

[`QueryVariableValue`](https://www.adaptabletools.com/docs/reference/queryvariablevalue.md)` | ((context: `[`QueryVariableContext`](https://www.adaptabletools.com/docs/reference/queryvariablecontext.md)`) => `[`QueryVariableValue`](https://www.adaptabletools.com/docs/reference/queryvariablevalue.md)`)`
