Added type parameter to HalResource interface