feat(typescript-types): Add Get<O, P>

This commit is contained in:
T. R. Bernstein
2025-07-18 13:29:54 +02:00
parent 5461fc52b4
commit ac53d1e584
3 changed files with 46 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
import type { Get } from '@/get.js'
import { expect } from 'tstyche'
interface Example1 {
requiredKey: number
optionalKey?: number
unknownNonOptionalKey: unknown
undefinedNonOptionalKey: undefined
neverKey: never
subkey: {
name: string
age: number
}
}
expect<Get<Example1, 'requiredKey'>>().type.toBe<number>()
expect<Get<Example1, 'optionalKey'>>().type.toBe<number | undefined>()
expect<Get<Example1, 'subkey.age'>>().type.toBe<number>()
expect<Get<Example1, 'unknownNonOptionalKey'>>().type.toBe<unknown>()