> ## Documentation Index
> Fetch the complete documentation index at: https://docs.qu.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# ProviderEvent

```ts theme={null}
type ProviderEvent: 
  | string
  | (string | string[])[]
  | EventFilter
  | OrphanFilter
  | AccessesFilter;
```

A **ProviderEvent** provides the types of events that can be subscribed to on a [**Provider**](/sdk/content/interfaces/Provider).

Each provider may include additional possible events it supports, but the most commonly supported are:

**`"block"`** - calls the listener with the current block number on each new block.

**`"error"`** - calls the listener on each async error that occurs during the event loop, with the error.

**`"debug"`** - calls the listener on debug events, which can be used to troubleshoot network errors, provider
problems, etc.

**`transaction hash`** - calls the listener on each block after the transaction has been mined; generally `.once` is
more appropriate for this event.

**`Array`** - calls the listener on each log that matches the filter.

[**EventFilter**](/sdk/content/interfaces/EventFilter) - calls the listener with each matching log

## Source

[providers/provider.ts:2709](https://github.com/dominant-strategies/quais.js/blob/c1c12d43f9d34c6baad2b0542bd6d0acd6fefcbf/src/providers/provider.ts#L2709)
