Sha256: 7d30aee3d35e64b4f49c235d17a09e7a7ce2961bebb3996ee1db5aa192f3feba
Contents?: true
Size: 966 Bytes
Versions: 33
Compression:
Stored size: 966 Bytes
Contents
import type {ConditionalKeys} from './conditional-keys'; /** Pick keys from the shape that matches the given `Condition`. This is useful when you want to create a new type from a specific subset of an existing type. For example, you might want to pick all the primitive properties from a class and form a new automatically derived type. @example ``` import type {Primitive, ConditionalPick} from 'type-fest'; class Awesome { name: string; successes: number; failures: bigint; run() {} } type PickPrimitivesFromAwesome = ConditionalPick<Awesome, Primitive>; //=> {name: string; successes: number; failures: bigint} ``` @example ``` import type {ConditionalPick} from 'type-fest'; interface Example { a: string; b: string | number; c: () => void; d: {}; } type StringKeysOnly = ConditionalPick<Example, string>; //=> {a: string} ``` @category Object */ export type ConditionalPick<Base, Condition> = Pick< Base, ConditionalKeys<Base, Condition> >;
Version data entries
33 entries across 33 versions & 1 rubygems