# Database Types

## `Database.Account`

An account, as a database reports it.

**Source:** [src/evm/Database.ts](https://github.com/wevm/ox/blob/main/src/evm/Database.ts#L21)

## `Database.Async`

State an EVM reads through, asynchronously.

The same reads [`Database.Database`](/evm/execution/Database/types#database) serves, returning promises. An EVM created over one of these performs its reads asynchronously, so executing through it returns a promise.

**Source:** [src/evm/Database.ts](https://github.com/wevm/ox/blob/main/src/evm/Database.ts#L30)

## `Database.Database`

State an EVM reads through.

A database answers reads and nothing else. Writes accumulate inside the EVM, never reaching back through this boundary, so a source can be a plain object over local state or a view onto a remote node.

Reads are synchronous here. Asynchronous sources arrive with a separate type.

**Source:** [src/evm/Database.ts](https://github.com/wevm/ox/blob/main/src/evm/Database.ts#L18)
