defineEffects
defineEffects<
EffectsConfig
>(config
:EffectsConfig
):MatchboxFactory
<EffectsConfig
extends readonlystring
[] ?{ [K in string]: (data: any) => any }
:EffectsConfig
,"effect"
>
Defined in: extras/effects.ts:26
Defines a set of effects using a tagged types configuration.
Use cases:
- Grouping effect handlers for state machines or event systems
- Creating effect matchboxes for pattern matching
Type Parameters
Section titled “Type Parameters”Type Parameter | Description |
---|---|
EffectsConfig extends TaggedTypes | The tagged types configuration for effects |
Parameters
Section titled “Parameters”Parameter | Type | Description |
---|---|---|
config | EffectsConfig | Configuration object mapping effect tags to types |
Returns
Section titled “Returns”MatchboxFactory
<EffectsConfig
extends readonly string
[] ? { [K in string]: (data: any) => any }
: EffectsConfig
, "effect"
>
A matchbox factory for the defined effects
Source
Section titled “Source”export function defineEffects<EffectsConfig extends TaggedTypes>( config: EffectsConfig) { return matchboxFactory(config, "effect");}