Preheat oven to 350°F (175°C) and line a 12 cup muffin pan with cupcake liners.
In a medium bowl, whisk together the flour, natural cocoa powder, baking soda, and salt, breaking up any clumps in the cocoa powder. Set aside.
In a large mixing bowl, whisk together granulated sugar, brown sugar, and vegetable oil until combined. Add eggs one at a time, whisking well after each, then whisk in vanilla and buttermilk until smooth.
Add dry ingredients to wet in two additions, mixing on low just until combined. Pour in hot coffee or water last and stir gently until smooth and thin. Do not overmix.
Divide batter evenly among liners, filling each two thirds full. Bake for 16-18 minutes until a toothpick comes out clean. Cool in pan 5 minutes, then transfer to a rack to cool completely.
In a small saucepan over low heat, melt caramels with heavy cream, stirring constantly until smooth, about 3-4 minutes. Remove from heat and stir in chopped peanuts and salt. Cool for 10 minutes to thicken.
Once cupcakes are completely cool, cut a small cone-shaped hole in the center of each with a paring knife or apple corer. Spoon or pipe caramel peanut filling into each hole until filled to the top.
In a stand mixer with paddle attachment, beat softened butter and peanut butter until smooth and fluffy, about 2 minutes. Add powdered sugar one cup at a time on low speed. Add vanilla, salt, and 2 tablespoons cream, then beat on medium-high 1-2 minutes until light and fluffy.
Transfer frosting to a piping bag fitted with a star tip. Pipe a generous swirl onto each filled cupcake, starting from the outer edge and working inward.
Drizzle each frosted cupcake with caramel sauce, sprinkle with extra chopped peanuts, and top with half a fun size Snickers bar, cut side up, pressed gently into the frosting.