Closed
Description
export type Condition = And | Or | Not | Misc
export interface Misc {
[type: string]: {
target: string
[key: string]: any
}
}
export interface And {
and: Condition[]
}
export interface Or {
or: Condition[]
}
export interface Not {
not: Condition
}
const c: Condition = {
foo: "bar", // <-- should be producing an error
not: {
equals: {
target: "name",
value: "foo"
},
},
}
Expected behavior:
Error "foo is an excess property"
Actual behavior:
No error.