diff options
Diffstat (limited to 'stdlib/effect.ts')
| -rw-r--r-- | stdlib/effect.ts | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/stdlib/effect.ts b/stdlib/effect.ts new file mode 100644 index 0000000..5be1758 --- /dev/null +++ b/stdlib/effect.ts @@ -0,0 +1,15 @@ +export interface Effect<T = unknown> { + output: T +} + +export interface Kind1<Inp = unknown, Out = unknown> { + input: Inp + return: Out +} + +export interface Bind<_Eff extends Effect, _Fn extends Kind1> extends Effect {} + +export interface Seq<_Effs extends Effect[]> extends Effect {} + +export interface Do<_Effs extends Effect[]> extends Effect {} + |
