All files / types partial-keys.ts

0% Statements 0/0
0% Branches 0/0
0% Functions 0/0
0% Lines 0/0

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12                       
import type { Simplify } from './simplify';
 
/**
 * Makes some properties optional: the input of a factory that fills them with defaults.
 *
 * @template T - The object type.
 * @template K - The keys to make optional.
 * @example
 * function createUser(input: PartialKeys<User, 'id' | 'createdAt'>): User;
 */
export type PartialKeys<T, K extends keyof T> = Simplify<Omit<T, K> & Partial<Pick<T, K>>>;