∀(VersionRange : Type) → ∀(anyVersion : VersionRange) → ∀(noVersion : VersionRange) → ∀(thisVersion : ./Version.dhall → VersionRange) → ∀(notThisVersion : ./Version.dhall → VersionRange) → ∀(laterVersion : ./Version.dhall → VersionRange) → ∀(earlierVersion : ./Version.dhall → VersionRange) → ∀(orLaterVersion : ./Version.dhall → VersionRange) → ∀(orEarlierVersion : ./Version.dhall → VersionRange) → ∀(withinVersion : ./Version.dhall → VersionRange) → ∀(majorBoundVersion : ./Version.dhall → VersionRange) → ∀(unionVersionRanges : VersionRange → VersionRange → VersionRange) → ∀(intersectVersionRanges : VersionRange → VersionRange → VersionRange) → ∀(differenceVersionRanges : VersionRange → VersionRange → VersionRange) → ∀(invertVersionRange : VersionRange → VersionRange) → VersionRange