Preheat the oven to 325 degrees F. Line a regular-size cupcake pan with 18 cupcake liners.
Sift together flour, baking powder, salt, and sugar. In the bowl of an electric stand mixer with a paddle attachment, add the sifted dry ingredients and mix on low speed for 30 seconds. Slowly add oil to the mixture until fine crumbs are formed. Add the eggs, milk, and coconut extract and mix on low speed for 1 minute. Stop and scrape the bowl and paddle, and then mix on medium speed for 2 minutes.
Fill the cupcake liners three-quarters full with batter and bake until baked through, about 20 minutes. Do not open the oven during this time. Cool the cupcakes completely after baking.
To assemble, core each cupcake with an apple corer to create a pocket for the filling. Put the Chocolate Ganache Filling into a pastry bag and cut 1/2-inch off the tip. Fill each cupcake with the filling. Put the Caramel Buttercream Frosting into a pastry bag and cut 1/2-inch off the tip. Pipe the frosting on top of the cupcakes in a circular motion until completely covered. Once frosted, dip the cupcakes in a bowl of the toasted coconut and serve.
Melt the ingredients in a saucepan over low heat. Stir the mixture constantly until melted and smooth. Be careful not to burn. Remove from the heat to cool completely.
Stir 1 cup butter, heavy cream, brown sugar, white sugar, and vanilla together in a microwave-safe dish. Microwave at 1 to 2 minute intervals, stirring between intervals. The caramel will be thick and bubbly when done. The caramel must sit and cool completely in order to incorporate into the buttercream.
In the bowl of an electric stand mixer with a whisk attachment, whip the remaining 1 pound butter until creamed. Add the powdered sugar and 1/4 cup cooled caramel and mix until the ingredients are evenly incorporated and the frosting is smooth and creamy.