In a jug or bowl, combine the luke-warm water and milk with the yeast and set aside for 5 minutes or until the mixture is foamy.
In a large mixing bowl, stir together the flours, sea salt, cinnamon, all-spice and sugar.
When the yeast mixture is ready, add the oil and grated carrot and lightly stir before adding the mixture to the dry ingredients. Before combining also add the sultanas.
Combine the ingredients with a spoon until it begins to come together and then continue with your hands working the dough until it comes together in a large mass. Lightly dust your counter top with flour and turn the dough out on to it.
Knead the dough, adding a touch of flour at a time to reduce the stickiness (I usually end up adding up to 3 tablespoons more) for around 8 minutes or until the dough is soft and smooth.
Line a slice pan with baking paper. To achieve similar size buns, weigh the dough and divide the weight by 12 to get an individual weight (it's usually around 100 grams each). Cut the dough and weigh each portion to get your correct weight before rolling each piece in to a ball and placing them on the baking tray with a small space between each ball.
Cover the buns with a damp tea towel and set aside to proof for 1 and 1/2 hours.
Meanwhile, place the walnuts in a food processor and pulse to a rough crumb. Transfer the crumb to a bowl and add the remaining streusel ingredients. Using your fingers, rub the mixture together to a wet but textured sand consistency.
In a separate bowl, combine the apricot jam and water to create a glaze.
Pre-heat the oven to 200 degrees C (390 degrees F).
After an hour and a half, take the buns and brush each one with a good amount of the apricot glaze. Follow with a good sprinkle of the walnut streusel on each bun and a small pinch of sea salt. Place the buns in the oven and bake for 25 minutes or until a deep golden.
Remove from the oven and gently add more glaze to the buns before serving hot with vegan butter.
To achieve lukewarm milk, I microwave the milk for 15 seconds.