UNPKG

terriajs

Version:

Geospatial data visualization platform.

32 lines (26 loc) 1.11 kB
import { Equals, IsWritableArray, IsReadonlyArray, IsWritable, IsReadonly } from "../../lib/Core/TypeConditionals"; // Based on the approach described here: https://stackoverflow.com/a/49579497 export function expectTrue<_T extends true>() {} export function expectFalse<_T extends false>() {} expectTrue<Equals<number, number>>(); expectTrue<Equals<number | undefined, number | undefined>>(); expectTrue<Equals<number | string, number | string>>(); expectFalse<Equals<number, string>>(); expectFalse<Equals<number | undefined, number>>(); expectFalse<Equals<number, number | undefined>>(); expectFalse<Equals<number | string, number>>(); expectFalse<Equals<number, number | string>>(); expectTrue<IsWritableArray<number[]>>(); expectFalse<IsReadonlyArray<number[]>>(); expectTrue<IsReadonlyArray<ReadonlyArray<number>>>(); expectFalse<IsWritableArray<ReadonlyArray<number>>>(); expectTrue<IsWritable<{ foo: number }, "foo">>(); expectFalse<IsWritable<{ readonly foo: number }, "foo">>(); expectTrue<IsReadonly<{ readonly foo: number }, "foo">>(); expectFalse<IsReadonly<{ foo: number }, "foo">>();