public static function inPropertyWithDifferentKey(
        string $name,
        string $key,
        DeserializesCollections $collection,
        ProducesProxies $proxyBuilder
    ): ExposesDataKey {
        return new self($name, $key, $collection, $proxyBuilder);
    }