Skip to content

CanReplace

type CanReplace<From extends Plugin, To extends Plugin> = From extends Plugin
? To extends Plugin
? <T>() => T extends InputOf<From>
? 1
: 2 extends <T>() => T extends InputOf<To> ? 1 : 2
? [ErrorOf<To>] extends [ErrorOf<From>]
? true
: false
: false
: false
: false

Defined in: Graft.ts:559

Check every possible definition when either side is a union.

Type Parameter
From extends Plugin
To extends Plugin