To make the filling-
Preheat oven to 350 degrees. Spread coconut on a baking sheet, and bake, stirring halfway through, until light golden brown. Cool completely.
In the bowl of your mixer, beat butter and brown sugar at medium speed, until smooth.
Add powdered sugar, extracts and salt and beat until smooth.
Reserve 1/2 cup of filling for icing.
With remaining mixture, stir in cooled shredded coconut.
Cover with plastic wrap until ready to use.
In a microwave safe dish, heat coconut for 30 seconds. You want it to be warm, but not hot.
Once coconut milk is warm, add oil and stir to combine.
In a separate bowl combine 3 cups of flour, 1/4 cup sugar, and 1/2 teaspoon salt.
In a large bowl, mix together coconut milk, oil, extract, and yeast with a spoon. Allow to rest for 5 minutes. Add 3 and cups of flour mixture and egg to the yeast liquid and knead manually or using dough hook until combined. If dough is still sticky after all the flour has been kneaded in, add remaining 1/2 cup of flour and knead until the dough it soft and no longer sticking to the sides.
Lightly grease a 9x13in pan with non-stick cooking spray or butter.
On a lightly floured surface, roll dough out into a large rectangle approximately 1/2 inch thick.
Spread coconut filling over dough.
Starting with the long side, tightly roll dough into a log.
Trim off ends and slice 12 equal rounds.
Transfer rounds to greased pan.
Cover pan with a warm damp cloth and allow rise for about 25 minutes in a dark warm place.
Once rolls have risen, bake at 400 degrees for 15 minutes, or until slightly browned.
When rolls are done, cool for 5 minutes, the smoother with reserved coconut frosting and sprinkle with additional toasted coconut.
Makes 12 large buns.