@empathyco/x-components
Version:
Empathy X Components
78 lines (35 loc) • 1.82 kB
Markdown
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index.md) > [@empathyco/x-components](./x-components.md) > [XBus](./x-components.xbus.md)
## XBus interface
Event bus to emit and subscribe to events.
**Signature:**
```typescript
export interface XBus<SomeEvents extends Dictionary, SomeEventMetadata extends Dictionary>
```
## Properties
<table><thead><tr><th>
Property
</th><th>
Modifiers
</th><th>
Type
</th><th>
Description
</th></tr></thead>
<tbody><tr><td>
[emit](./x-components.xbus.emit.md)
</td><td>
</td><td>
(<SomeEvent extends keyof SomeEvents>(event: SomeEvent) => Promise<[EmittedData](./x-components.emitteddata.md)<!-- --><SomeEvents, SomeEvent, SomeEventMetadata>>) \| (<SomeEvent extends keyof SomeEvents>(event: SomeEvent, payload: [EventPayload](./x-components.eventpayload.md)<!-- --><SomeEvents, SomeEvent>, metadata?: SomeEventMetadata) => Promise<[EmittedData](./x-components.emitteddata.md)<!-- --><SomeEvents, SomeEvent, SomeEventMetadata>>)
</td><td>
Emits an event with the `void` type associated as payload.
</td></tr>
<tr><td>
[on](./x-components.xbus.on.md)
</td><td>
</td><td>
<SomeEvent extends keyof SomeEvents>(event: SomeEvent, withMetadata?: boolean) => typeof withMetadata extends true ? Observable<[SubjectPayload](./x-components.subjectpayload.md)<!-- --><[EventPayload](./x-components.eventpayload.md)<!-- --><SomeEvents, SomeEvent>, SomeEventMetadata>> : Observable<[EventPayload](./x-components.eventpayload.md)<!-- --><SomeEvents, SomeEvent>>
</td><td>
Retrieves an observable for an event.
</td></tr>
</tbody></table>