# `Wasmex.Components.Component`

A WebAssembly Component that can be instantiated.

Components are compiled WebAssembly modules that follow the Component Model specification.
They define imports and exports using WIT (WebAssembly Interface Types).

# `t`

```elixir
@type t() :: %Wasmex.Components.Component{reference: reference(), resource: binary()}
```

# `new`

Compiles a new WebAssembly component from bytes.

## Parameters
  * `store` - The store to compile the component for
  * `bytes` - Raw WebAssembly component bytes

## Returns
  * `{:ok, component}` on success
  * `{:error, reason}` on failure

---

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