Stone and dice the dates. Combine the diced dates, raisins, apple, citrus zest, brandy and rum in a large mixing bowl.
Stir well, cover and leave the mixture to soak for at least 2 hours but it can be overnight so the fruit plumps up and the flavour deepens.
Add the eggs, suet, treacle and stem ginger to the fruit mixture and stir until well-combined.
In a large mixing bowl, combine the gluten-free flour, brown sugar, spices, baking powder, bicarbonate of soda and salt and whisk together.
Tip the dry ingredients into the large bowl of wet ingredients and mix well. Finally add the breadcrumbs and stir in. The mixture should be soft, thick and spoonable.
Lightly grease a 1.1 litre pudding basin then spoon the Christmas pudding mixture in.
Cover the basin with a layer of baking parchment and foil, pleated in the centre to allow for expansion.
Secure the ‘lid’ with kitchen string around the rim then trim the excess parchment and foil as you don’t want it to touch the water during the steam.
Place a trivet or upturned saucer in the base of a large cooking pot and sit the pudding basin on top.
Pour water into the side of the pot to reach halfway up the pudding basin and cover the pot with a tight fitting lid.
Steam the Christmas pudding for 2 ½ hours, checking occasionally to top up with more water as needed.
Remove the basin from the cooking pot and rest on a trivet, remove the parchment, foil and carefully insert from the pudding basin either onto a serving dish to serve immediately or onto a cooling rack to allow to cool completely for chilling or freezing.
If you are freezing your pudding then double wrap with cling film (plastic wrap) and aluminium foil. Store in the freezer for up to 3 months, allow to thaw overnight at room temperature.
Re-heat the Christmas pudding to serve. Unwrap from the cling film and foil and place the pudding back into a pudding basin with a new lid made with fresh baking parchment and foil, as before, securing with string.
Repeat the steaming process but this time you only need to steam for 1 hour to re-heat (if the pudding is at room temperature).
Turn the warm pudding out on a plate and serve with the Sticky Toffee Sauce poured over the top. Pour over half the amount of the sauce and serve the other half on the table for guests to add a little extra.