<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [rc-js-util](./rc-js-util.md) &gt; [IBroadcastChannel](./rc-js-util.ibroadcastchannel.md)

## IBroadcastChannel interface

Simple one to many communication channel. Proxies the arguments of emit to each listener.

**Signature:**

```typescript
export interface IBroadcastChannel<TKey extends string, TArgs extends readonly unknown[]> 
```

## Methods

<table><thead><tr><th>

Method


</th><th>

Description


</th></tr></thead>
<tbody><tr><td>

[addListener(listener)](./rc-js-util.ibroadcastchannel.addlistener.md)


</td><td>


</td></tr>
<tr><td>

[addListener(store, listener)](./rc-js-util.ibroadcastchannel.addlistener_1.md)


</td><td>

Registers a cleanup callback on the supplied [ICleanupRegistry](./rc-js-util.icleanupregistry.md)<!-- -->.


</td></tr>
<tr><td>

[addOneTimeListener(listener)](./rc-js-util.ibroadcastchannel.addonetimelistener.md)


</td><td>

Like `addListener` but unregisters after first event.


</td></tr>
<tr><td>

[addOneTimeListener(store, listener)](./rc-js-util.ibroadcastchannel.addonetimelistener_1.md)


</td><td>

Like `addListener` but unregisters after first or on cleanup, whichever comes first.


</td></tr>
<tr><td>

[emit(args)](./rc-js-util.ibroadcastchannel.emit.md)


</td><td>


</td></tr>
<tr><td>

[getTargets()](./rc-js-util.ibroadcastchannel.gettargets.md)


</td><td>


</td></tr>
<tr><td>

[removeListener(listener)](./rc-js-util.ibroadcastchannel.removelistener.md)


</td><td>


</td></tr>
</tbody></table>
