export type MergeRecord = { readonly [k in keyof K | keyof H]: k extends keyof K ? K[k] : k extends keyof H ? H[k] : never; } extends infer X ? X : never; export type ForcedArray = A extends readonly any[] ? A : []; export type UnionToIntersection = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never; export type EnforceNonEmptyRecord = keyof R extends never ? never : R; export type RefinementWithIndex = (i: I, a: A) => a is B; export type PredicateWithIndex = (i: I, a: A) => boolean; export type Erase = R & K extends K & infer R1 ? R1 : R; export interface Spreadable extends Record { } export type ESArray = Array; export type ESReadonlyArray = ReadonlyArray; export declare const ESArray: ArrayConstructor; export type ESIterable = globalThis.Iterable; export type IsInt = N & (`${N}` extends `${bigint}` ? N : never); declare global { /** * @tsplus type number */ export interface Number { } } export type OrElse = [A] extends [never] ? B : A; //# sourceMappingURL=Types.d.ts.map