Closed
Description
Edit from DanielRosenwasser: #46218 #46218 #46218 #46218 #46218 #46218
I'm working on a standalone repro, but you can see the error now by opening types/ramda/tools.d.ts and looking at lines 149 and 179:
export type Evolvable<E extends Evolver> = {
[P in keyof E]?: Evolved<E[P]>;
};
// ......
export type Evolver<T extends Evolvable<any> = any> = {
// if T[K] isn't evolvable, don't allow nesting for that property
[key in keyof Partial<T>]: ((value: T[key]) => T[key]) | (T[key] extends Evolvable<any> ? Evolver<T[key]> : never);
};
There are now errors on constraints for E
and T
saying that "Type parameter 'E' has a circular constraint.".