This pastry filling is a "cheapo" buttercream, which is not as smooth, but somewhat more stable, and also fully cooked (no raw egg issues). It is a chocolate amaretto flavored pastry cream, creamed with butter and with praline powder added. Unlike "real" buttercream, though, the pastry cream base does not freeze well.
Bring the milk/cream, with half the sugar, to a boil.
Ribbon the egg yolks and the remaining 3 TBSP sugar: beat until it is smooth and lightens.
Beat flour into the egg yolks until smooth.
Temper the eggs by gradually pouring or ladling half the hot milk/cream mixture into them, beating constantly.
Mix the tempered eggs into the pot with the remaining milk/cream mixture. Over medium heat, whisking constantly and making sure to thoroughly reach all parts of the pot, cook until mixture thickens and comes to a boil. Continue cooking for 3-4 minutes to cook flour, whisking constantly, and lowering heat as necessary to maintain a slight boil.
In some circumstances, one wants pastry cream or some similarly prepared things like creme anglaise to be very smooth, without bubbles. In this case, the pastry cream will be whipped, and proper use of a whisk for stirring keeps lumps from forming in the first place, eliminating the need to sieve the finished cream. You can always try whisking, sieve the result and see what gets caught.
Remove from heat. Stir in amaretto. Add chocolate all at once, stir until smooth. Pour, through a sieve to catch any lumps, into a clean bowl, or for faster cooling, onto a tray. Cover with plastic wrap, placing it directly against the cream, trying to avoid any bubbles. Let cool to cool room temperature..
Cream butter until fluffy. Add pastry cream and beat well. Mix in praline powder.
Use Frangelica (best) or Basilica instead of Amaretto, and praline made from hazelnuts (which, unlike the almonds, should be skinned).
