Preheat your oven to 365°F (180°C) and line a cupcake pan with paper liners.
In a medium-sized bowl, whisk together eggs, sugar and vanilla extract until sugar dissolves. Pour in the milk and vegetable oil, gently mix until the batter is smooth.
In a separate bowl, sift together the flour, cocoa powder, baking powder, and salt until well combined.
Add the dry ingredients (i prefer adding the dry ingredients to two phases, for more easier mixing) to the wet mixture, and gently fold them together using a hand whisk. Be careful not to overmix; stop as soon as the ingredients are combined.
Using a spoon or a ladle, fill each cupcake liner about two-thirds full with the batter.
Place the cupcake pan in the preheated oven and bake for about 18-20 minutes, or until a toothpick inserted into the center of a cupcake comes out clean or with a few moist crumbs. Baking times may vary, so keep an eye on them.
Once baked, remove the cupcakes from the oven and let them cool in the pan for a few minutes. Then, transfer them to a wire rack to cool completely.
Cream Cheese Frosting:. In a medium-sized bowl, combine the softened cream cheese and vanilla extract. Use an electric mixer on medium speed, gradually add the sugar to the cream cheese, starting with a smaller amount. Mix on low speed first to avoid creating a sugar cloud. Taste the frosting as you go and add more sugar if needed to reach your desired level of sweetness. Add the peanut butter to the frosting mixture. Mix on low speed. Then, add the heavy cream one spoon at a time. increase the speed to medium and beat until the peanut butter is fully integrated and the frosting is creamy and uniform.
Plunge the apple corer into the center of cupcake, lift out the core. Fill the cupcake with caramel sauce and peanut. Place back the top of the core. Use a piping bag with a decorating tip or simply spread the frosting onto the cupcakes using a spatula.
Top the frosting with caramel sauce and chocolate guanach.
Refrigerate the cupcakes for at least 2 hours before serving.