Skip to main content

IfEquals

@webda/utils


Type Alias: IfEquals<X, Y, A, B>

IfEquals<X, Y, A, B> = <T>() => T extends X ? 1 : 2 extends <T>() => T extends Y ? 1 : 2 ? A : B

Defined in: packages/utils/src/types.ts:187

Strict type-equality check that can distinguish types differing only by a readonly modifier.

Resolves to A when X and Y are identical, otherwise B (defaults to X).

Type Parameters​

X​

X

Y​

Y

A​

A = never

B​

B = X