in PropertyMatcher.withProperty also take in property type so it can be checked