---
url: /statelake/scripting-reference/data-types.md
---

# Data Types

All data is of a certain type - such as an array of characters, a date, or a number.

Or the data can be an **Enumeration**, which is a custom type with a set range of values.

But you can convert from one data type to another under certain conditions.

There is also a wildcard type called **Variant**. A field or variable of this type can contain anything such as a **Number** or a **String**. Once set however, you do need to take care when converting a **Variant** into another type.

If you set a **Variant** to a string of characters for example, you would receive an error if you then tried to convert it into a number. Unless of course the **String** represents a **Number** such as **456.99** which could be converted into a **Float** data type. Obviously the string of **ABC** could not be converted to a **Number**.

Dates can be converted to and from **Strings**.

There are many data types that are supported by **Statelake**.
