/** * Converts a mapping type to be non-optional. * * ```ts * type T = DeepRequired<{optionalKey?: string, nullableValue: string | null, undefinableValue: string | undefined}> * T = {optionalKey: string, nullableValue: string, undefinableValue: string} * ``` * */ export type DeepRequired = { [TKey in keyof Required]: NonNullable[TKey]>; };