Add the egg yolks, vanilla extract, and cornstarch into a small bowl and mix together with a whisk. Set aside.
In a sauce pan, pour in the cream, milk, coconut milk, salt an sugar and whisk on medium heat. Continue to stir the mixture occasionally and bring to a boil.
Reduce the temperature to low heat and continue to boil for 2 minutes.
Remove about 1/2 cup of the cream mixture and slowly pout into the egg mixture, while whisking quickly.
Slowly pour the cream and egg mixture into the sauce pan (continue low heat) while whisking vigorously. Stir for about 2 minutes until thick.
Remove pan from heat and add the butter and shredded coconut, mixing well. Cool mixture and pour into crust. Cover and refrigerate for about 2 hours until completely cooled.