blob: 7a1dac7bf7082000152ef4f091469662590bd51c [file] [log] [blame]
Leo Repp58b9f112021-11-22 11:57:47 +01001type OptionError<T> := {
2 option: T | null,
3 message: String,
4 type: "OptionError"
5}
6
7type TypedError<T> := {
8 message: String,
9 type: T
10}
11
12type ValidationError := {
13 errors: Array<Error>,
14 message: String,
15 type: "ValidationError"
16}
17
18error/option := (String, T) => OptionError<T>
19
20error/typed := (args: {
21 message: String,
22 type: String,
23 name?: String
24}) => (opts: Object) => TypedError<String>
25
26error/validation := (Array<Error>) => ValidationError