Press the tofu: Prepare the tofu by draining it, and then pressing it for 15 minutes to 1 hour. For pressing instructions, check out . Pressing the tofu squeezes excess water out so that the tofu can suck up more of the marinade and become chewier.
Make the sauce: Add all of the sauce ingredients to a small bowl and whisk to combine. Set aside.
Prepare the filling: In a large skillet or non-stick pan heat the oil over medium-high heat. Add the onion, ginger, and garlic. Sauté for about 5 minutes until the onions turn translucent and begin to brown.
Reduce the heat to medium and use your hands to crumble the tofu into the pan. Cook for about 5 minutes until the tofu begins to brown. Tip: don't stir the tofu too much, let it cook for a couple of minutes without stirring so that the bottom can brown. Stirring too often will make it difficult for the tofu to brown. Add the mushrooms and continue to cook until the mushrooms are cooked through and darker in colour, about 5 minutes. Add all of the sauce to the tofu and mushrooms and stir to mix in. Remove from heat.
Assemble the lettuce wraps: Spoon a couple of tablespoons of the tofu filling into each lettuce leaf, and then garnishing with any toppings as desired.