Preheat oven to 180 C and line an 8 inch (20 cm) round cake tin with baking paper along the base and sides; if you have a springform tin use this so it's easier to remove the cake.
To make the crumb, roughly chop all of walnuts and then combine in a small bowl with the almond flour, maple syrup, coconut oil and cinnamon, then set aside.
For the cake, first combine the coconut flour, tapioca flour, baking powder, salt, cardamom and mixed spice in a large bowl.
In a separate bowl, crack in and whisk the eggs, and then whisk in the coconut milk, coconut oil, maple syrup, apple puree and vanilla extract.
Make a well in the centre of the dry ingredients and gradually pour in the wet mixture, stirring as you go. Coconut flour is very, very absorbent so the liquid will disappear fast.
Once the ingredients are fully combined, scoop out the batter (which will be very thick, almost like a wet dough more than a "batter") and smooth evenly in to the lined baking tin, making sure there are no gaps.
Spread the crumb mixture across the top of the cake, gently smoothing it across evenly and lightly pressing it in to the top so that it stays in place.
Bake the cake for approximately 35 - 40 minutes (mine took 38 minutes). After about 20 minutes, check on the cake; the crumb will darken quickly and may start to burn. For the remaining baking time simply cover the top of the cake tin securely with foil. Cake is cooked when a skewer inserted in the middle comes out clean / centre of the cake feels firm to touch.
Allow the cake to cool in the tin for 20 minutes before removing (it will shrink slightly and be easier to get out) and placing on a rack to cool to room temperature. Store the cake in the fridge for up to a week, or you can also freeze it (but the crumb might not be as good once defrosted!). It will keep for a day or two at room temperature so you can also keep it out in an airtight container if you're eating it shortly.