1 - Beat butter in the bowl of a stand mixer (or using an electric beater) for about 30 seconds. Add sugars and beat until light and fluffy (pause to scrape down sides and bottom of bowl, if needed).
2 - Add eggs, one at a time, beating until combined.
3 - Stir in vanilla and coconut extract.
4 - In a separate bowl, whisk together flour, cornstarch, baking soda, and salt.
5 - Gradually add flour mixture to butter mixture until completely combined. Be sure to scrape the sides and bottom of the bowl so ingredients are well-mixed.
6 - Gradually stir in 3 cups of the coconut flakes until completely combined.
7 - Chill dough in the refrigerator for 30 minutes.
8 - Preheat oven to 375 degrees and prepare cookie sheets by lining with parchment paper.
9 - Drop cookie by rounded 2 - 3 tablespoon sized ball onto parchment paper, spacing at least 2" apart (for very round cookies, briefly roll between your hands to form into smooth balls).
10 - Bake on 375 degrees for 10-12 should be slightly browned, centers may still be slightly underbaked but shouldn't be raw, they'll bake completely as they cool.
11 - Allow cookies to cool completely on cookie sheet before dipping in chocolate (if using).
12 - If dipping in chocolate, prepare melting wafers according to package instructions, heating until melted.
13 - Dip cookies about 1/2 way into the chocolate and transfer to wax paper. Sprinkle with the remaining 1/2 cup coconut (if using) and allow chocolate to set before serving.