{-# LANGUAGE CPP, NoImplicitPrelude, PackageImports #-}
{-# LANGUAGE Trustworthy #-}
{-# LANGUAGE ExplicitNamespaces #-}
module Data.Type.Equality.Compat (
  -- * The equality types
  (:~:)(..),
  type (~~),
  (:~~:)(..),

  -- * Working with equality
  sym, trans, castWith, gcastWith,
  apply,
  inner,
  outer,

  -- * Inferring equality from other types
  TestEquality(..),

  -- * Boolean type-level equality
  type (==),
) where

import "base" Data.Type.Equality

#if !MIN_VERSION_base(4,10,0)
import "type-equality" Data.Type.Equality.Hetero
#endif