Skip to content

Welshman Docs / @welshman/domain / KindFactory

Class: KindFactory<Reader, Writer, Query> ​

Defined in: core/Kind.ts:30

Bundles a kind's number, reader, writer, and query classes.

Usage: export const Profile = new KindFactory({kind: PROFILE, reader: ProfileReader, writer: ProfileWriter, query: ProfileQuery}), then Profile.kind reads the number and Profile.configure(context) binds the app's dependencies once.

Type Parameters ​

Reader ​

Reader extends BaseEventReader

Writer ​

Writer extends EventWriter<Reader>

Query ​

Query extends EventQuery

Constructors ​

Constructor ​

new KindFactory<Reader, Writer, Query>(config): KindFactory<Reader, Writer, Query>

Defined in: core/Kind.ts:35

Parameters ​

config ​

KindConfig<Reader, Writer, Query>

Returns ​

KindFactory<Reader, Writer, Query>

Properties ​

config ​

readonly config: KindConfig<Reader, Writer, Query>

Defined in: core/Kind.ts:35

Accessors ​

kind ​

Get Signature ​

get kind(): number

Defined in: core/Kind.ts:37

Returns ​

number

Methods ​

configure() ​

configure(context): ConfiguredKind<Reader, Writer, Query>

Defined in: core/Kind.ts:41

Parameters ​

context ​

KindContext

Returns ​

ConfiguredKind<Reader, Writer, Query>