[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Type](https://evolu.dev/docs/api-reference/common/Type) › Data

```ts
Data: createTypeNode<DataType>(
  "Data",
  null,
  validateData,
  (value) => validateData(value).ok,
  validateData,
  ok,
  identity,
  getDataRuntimeTypeIssues,
);
```

Defined in: [packages/common/src/Type.ts:13113](https://github.com/evoluhq/evolu/blob/037c390af081e9944d616ff298a729515c5c5ab7/packages/common/src/Type.ts#L13113)

Root Type for [Data](https://evolu.dev/docs/api-reference/common/Type/variables/Data) values.

Validation is iterative and preserves the input identity. Cyclic and shared
data graphs are valid.

### Example

```ts

const value = new Map([["count", 1]]);
const result = Data.fromUnknown(value);

assertOk(result, value);
assertTrue(Data.is(result.value));
```