Built-in TypeScript utility types
type Partial<T> = { [P in keyof T]?: T[P] }All properties optional
type Required<T> = { [P in keyof T]-?: T[P] }All properties required
type Readonly<T> = { readonly [P in keyof T]: T[P] }All properties readonly
type Pick<T, K> = { [P in K]: T[P] }Select specific properties
type Omit<T, K> = Pick<T, Exclude<keyof T, K>>Remove specific properties
type Record<K, T> = { [P in K]: T }Construct object type
type Exclude<T, U> = T extends U ? never : TRemove types from union
type Extract<T, U> = T extends U ? T : neverExtract types from union
type NonNullable<T> = T & {}Remove null and undefined
type R = ReturnType<typeof myFunc>Get function return type
type P = Parameters<typeof myFunc>Get function parameter types