typealias _DistributivePick

external
export type _DistributivePick<T, K extends _DistributiveKeys<T>> = T extends unknown ? keyof _Pick<T, K> extends never ? never : {  [P in keyof _Pick<T, K>]: _Pick<T, K>[P];} : never;

Allows picking of keys from unions that are disjoint

Type Parameters

T

K extends _DistributiveKeys<T>

T extends unknown ? keyof _Pick<T, K> extends never ? never : { [P in keyof _Pick<T, K>]: _Pick<T, K>[P];} : never