//·························································· // Copyright (c) 2023-2026. Jonathan Bédard ~ JóôòKiwi // // This project is free to use. // All the right is reserved to the author of this project. // My projects: // - https://github.com/joooKiwi/type // - https://github.com/joooKiwi/lazy // - https://github.com/joooKiwi/collection // - https://github.com/joooKiwi/enumeration //·························································· import type {Enumerable} from "../Enumerable" import type {EnumerableConstructor} from "../EnumerableConstructor" import type {EnumerableWithNullableGrandParent} from "../EnumerableWithNullableGrandParent" import type {EnumerableWithNullableGreatGrandParent} from "../EnumerableWithNullableGreatGrandParent" import type {EnumerableWithNullableParent} from "../EnumerableWithNullableParent" import type {Singleton} from "../Singleton" import type {CompanionEnum} from "../companion/CompanionEnum" import type {CompanionEnumerable} from "../companion/CompanionEnumerable" import type {CompanionEnumerableWithGrandParent} from "../companion/CompanionEnumerableWithGrandParent" import type {CompanionEnumerableWithGreatGrandParent} from "../companion/CompanionEnumerableWithGreatGrandParent" import type {CompanionEnumerableWithParent} from "../companion/CompanionEnumerableWithParent" import type {CompanionEnumWithParent} from "../companion/CompanionEnumWithParent" import type {CompanionEnumWithGrandParent} from "../companion/CompanionEnumWithGrandParent" import type {CompanionEnumWithGreatGrandParent} from "../companion/CompanionEnumWithGreatGrandParent" /** A type-alias for {@link Singleton} for the {@link CompanionEnum} */ export type CompanionEnumSingleton>, > = Singleton> /** A type-alias for {@link Singleton} for the {@link CompanionEnumerable} */ export type CompanionEnumerableSingleton>, > = Singleton> /** A type-alias for {@link Singleton} for the {@link CompanionEnumWithParent} */ export type CompanionEnumWithParentSingleton, ENUM_CONSTRUCTOR extends EnumerableConstructor>, PARENT_ENUM extends Enumerable, PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, > = Singleton> /** A type-alias for {@link Singleton} for the {@link CompanionEnumerableWithParent} */ export type CompanionEnumerableWithParentSingleton, ENUM_CONSTRUCTOR extends EnumerableConstructor>, PARENT_ENUM extends Enumerable, PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, > = Singleton> /** A type-alias for {@link Singleton} for the {@link CompanionEnumWithGrandParent} */ export type CompanionEnumWithGrandParentSingleton, ENUM_CONSTRUCTOR extends EnumerableConstructor>, PARENT_ENUM extends EnumerableWithNullableParent, PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, GRAND_PARENT_ENUM extends Enumerable, GRAND_PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, > = Singleton> /** A type-alias for {@link Singleton} for the {@link CompanionEnumerableWithGrandParent} */ export type CompanionEnumerableWithGrandParentSingleton, ENUM_CONSTRUCTOR extends EnumerableConstructor>, PARENT_ENUM extends EnumerableWithNullableParent, PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, GRAND_PARENT_ENUM extends Enumerable, GRAND_PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, > = Singleton> /** A type-alias for {@link Singleton} for the {@link CompanionEnumWithGreatGrandParent} */ export type CompanionEnumWithGreatGrandParentSingleton, ENUM_CONSTRUCTOR extends EnumerableConstructor>, PARENT_ENUM extends EnumerableWithNullableGrandParent, PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, GRAND_PARENT_ENUM extends EnumerableWithNullableParent, GRAND_PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, GREAT_GRAND_PARENT_ENUM extends Enumerable, GREAT_GRAND_PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, > = Singleton> /** A type-alias for {@link Singleton} for the {@link CompanionEnumerableWithGreatGrandParent} */ export type CompanionEnumerableWithGreatGrandParentSingleton, ENUM_CONSTRUCTOR extends EnumerableConstructor>, PARENT_ENUM extends EnumerableWithNullableGrandParent, PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, GRAND_PARENT_ENUM extends EnumerableWithNullableParent, GRAND_PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, GREAT_GRAND_PARENT_ENUM extends Enumerable, GREAT_GRAND_PARENT_ENUM_CONSTRUCTOR extends EnumerableConstructor>, > = Singleton>