Place warm water (about 100-110°F) into the bowl of a stand mixer fitted with the dough hook. (The easiest way to test the water is using an instant read thermometer, but if you don’t have one, think hot bathwater.) Sprinkle the yeast into the water, then add the salt and sugar. Stir with a wooden spoon. Let rest until it bubbles, about 5 minutes.
In another bowl or large measuring cup, whisk eggs and oil together. Add the egg mixture to the yeast mixture along with 1 cup of the flour. Start the mixer and then slowly add rest of flour, stirring in gradually. Run the mixture for about 5-10 minutes or until the dough is elastic. The dough will be slightly sticky and very soft. Turn it out onto a floured board and knead it a few times until it is no longer sticky.
Place the dough into a bowl that’s been sprayed with nonstick cooking spray. Let rest until doubled.
Spray two 9x13” pans with nonstick cooking spray.
Punch down the dough and divide it in half. Roll each half out to a rectangle that is about 12x15”. To fill, spread each rectangle with melted butter, sprinkle with cinnamon and sugar to taste. Roll up lengthwise. Make roll as tight as possible. Cut into one-inch pieces. Place in greased pan so that rolls just touch each other.
At this point you have two options: 1. Let rise until doubled (about 20-30 minutes), then bake as directed below or 2. Cover tightly with plastic wrap and chill overnight. Let the rolls come to room temperature before baking.
Preheat oven to 350°F. Bake approximately 20-25 minutes.
Make the icing: beat butter and powdered sugar until crumbly, the add extracts, salt, and heavy whipping cream and mix until smooth. The frosting should be thin enough to easily spread but not liquidy.
Sprinkle the warm rolls with chopped macadamia nuts and spread with icing. Serve warm or room temperature. Store tightly covered for up to 4 days.