def METHOD_NAME(self, key: KT) -> Tuple[VT, float, float]:
    """Get a value, and its expiry time, from the cache
    Args:
        key: key to look up
    Returns:
        A tuple of  the value from the cache, the expiry time and the TTL
    Raises:
        KeyError if the entry is not found
    """
    self.expire()
    try:
        e = self._data[key]
    except KeyError:
        self._metrics.inc_misses()
        raise
    self._metrics.inc_hits()
    return e.value, e.expiry_time, e.ttl