# `Bourse.Extract.EmulatedMethods`
[🔗](https://github.com/ZenHive/bourse/blob/main/lib/bourse/extract/emulated_methods.ex#L1)

Reads explicit emulated-method declarations from the owned runtime specs.

# `exchanges`

```elixir
@spec exchanges() :: [String.t()]
```

Returns every supported runtime exchange ID.

# `load`

```elixir
@spec load() :: map()
```

Returns the runtime emulation declarations keyed by supported venue.

# `method_for`

```elixir
@spec method_for(String.t(), String.t()) :: map() | nil
```

Returns an emulated method entry by name for an exchange.

# `method_names_for`

```elixir
@spec method_names_for(String.t()) :: [String.t()]
```

Returns emulated method names for an exchange.

# `methods_for`

```elixir
@spec methods_for(String.t()) :: [map()]
```

Returns all emulated method entries for an exchange.

# `methods_for_scope`

```elixir
@spec methods_for_scope(String.t(), String.t()) :: [map()]
```

Returns emulated method entries filtered by scope ("rest" or "ws").

# `reload!`

```elixir
@spec reload!() :: map()
```

Rebuilds the runtime emulation declarations from the owned specs.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
