Skip to content

Welshman Docs / @welshman/app / Domain

Class: Domain

Defined in: app/src/plugins/domain.ts:17

Binds the app's dependencies to @welshman/domain kinds.

Constructors

Constructor

new Domain(app): Domain

Defined in: app/src/plugins/domain.ts:18

Parameters

app

IApp

Returns

Domain

Properties

app

readonly app: IApp

Defined in: app/src/plugins/domain.ts:18

Methods

command()

command(writer): Promise<Command>

Defined in: app/src/plugins/domain.ts:61

Parameters

writer

EventWriter<any>

Returns

Promise<Command>


configure()

configure<R, W>(factory): ConfiguredKind<R, W>

Defined in: app/src/plugins/domain.ts:25

Type Parameters

R

R extends BaseEventReader

W

W extends EventWriter<R>

Parameters

factory

KindFactory<R, W>

Returns

ConfiguredKind<R, W>


reader()

reader<R, W>(factory): (event) => ReturnType<R["parse"]>

Defined in: app/src/plugins/domain.ts:52

Type Parameters

R

R extends BaseEventReader

W

W extends EventWriter<R>

Parameters

factory

KindFactory<R, W>

Returns

(event): ReturnType<R["parse"]>

Parameters
event

TrustedEvent

Returns

ReturnType<R["parse"]>


writer()

writer<R, W>(factory, reader?): W

Defined in: app/src/plugins/domain.ts:56

Type Parameters

R

R extends BaseEventReader

W

W extends EventWriter<R>

Parameters

factory

KindFactory<R, W>

reader?

R

Returns

W