aboutsummaryrefslogtreecommitdiff
path: root/src/stdlib/io.ts
blob: c78204f6851fe6bf1ebd6340c27485c2652bb7a0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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 { }

export interface DefineEffect<_Name extends string, _Func extends string> extends Effect { }