If you check Magento\Wishlist\Helper\Data::__constructor() method, you will find there the following argument:
public function __construct(
...
\Magento\Customer\Model\Session $customerSession,
...
) {
...
}
The code that you provided is replacing Magento\Customer\Model\Session class with its proxy. In simple words, Proxies are used for reducing the number of loaded objects. Here is how it works in this particular case:
Without Proxy:
If you create an object for Magento\Wishlist\Helper\Data class, then it will also create an object for Magento\Customer\Model\Session and as result it will also create objects for all the dependencies of the Magento\Customer\Model\Session class and so on
With Proxy
If you create an object for Magento\Wishlist\Helper\Data class, the object for Magento\Customer\Model\Session class will not be created until you call one of its methods (like $customerSession->getCustomerId() or any other).
You can find more information in Magento DevDocs