import type { ExtractTypeFromReferenceExpression } from './reference-parser.js'; export type ExtractTypeFromCoalesce1 = ExtractTypeFromReferenceExpression; export type ExtractTypeFromCoalesce2 = ExtractTypeFromCoalesceValues2, ExtractTypeFromReferenceExpression>; type ExtractTypeFromCoalesceValues2 = null extends V1 ? null extends V2 ? V1 | V2 : NotNull : NotNull; export type ExtractTypeFromCoalesce3 = ExtractTypeFromCoalesceValues3, ExtractTypeFromReferenceExpression, ExtractTypeFromReferenceExpression>; type ExtractTypeFromCoalesceValues3 = null extends V1 ? null extends V2 ? null extends V3 ? V1 | V2 | V3 : NotNull : NotNull : NotNull; export type ExtractTypeFromCoalesce4 = ExtractTypeFromCoalesceValues4, ExtractTypeFromReferenceExpression, ExtractTypeFromReferenceExpression, ExtractTypeFromReferenceExpression>; type ExtractTypeFromCoalesceValues4 = null extends V1 ? null extends V2 ? null extends V3 ? null extends V4 ? V1 | V2 | V3 | V4 : NotNull : NotNull : NotNull : NotNull; export type ExtractTypeFromCoalesce5 = ExtractTypeFromCoalesceValues5, ExtractTypeFromReferenceExpression, ExtractTypeFromReferenceExpression, ExtractTypeFromReferenceExpression, ExtractTypeFromReferenceExpression>; type ExtractTypeFromCoalesceValues5 = null extends V1 ? null extends V2 ? null extends V3 ? null extends V4 ? null extends V5 ? V1 | V2 | V3 | V4 | V5 : NotNull : NotNull : NotNull : NotNull : NotNull; type NotNull = Exclude; export {};