Given that this is a separate package already, this interface could probably be at the top level.