Prepare the tofu mix. To compress the tofu, place a couple of kitchen towels on a large plate, followed by the tofu, topped with a couple more sheets of kitchen paper and another large plate. Place a few cans or cookbooks on top to weigh it down for 15 minutes.
Place the mushrooms, prawns (if using), garlic, ginger and spring onion in a large mixing bowl with the sesame oil, ginger, salt and white pepper. Add the pressed tofu and green beans into the bowl, using your fingertips to break the tofu up, creating a thick paste. Add the cornflour and egg yolk, mix well and set aside.
Prepare the pot, wok or deep-fryer. Fill half of it with vegetable oil and heat to 180°C (350°F), or use a wooden skewer or chopstick to check by placing the tip into the oil - it is ready if the wood starts to fizz after a second or so. You can also shallow-fry, but do so with care when turning them over making sure they cook on all sides.
Using 2 dessert spoons, carefully ‘quenelle’ the tofu, then lay a quenelle of tofu mix in the hot oil. Alternatively, shape them into tofu ‘balls’. Ensuring the oil is hot throughout, fry in batches of 5 or 6 pieces at a time, until they are golden brown all over. This is roughly 3–4 minutes if deep fried, or 5-6 minutes if shallow fried. Remove from the hot oil with a slotted spoon and blot the excess oil on kitchen towels.
To make the sauce, heat 1 tablespoon of vegetable oil in a medium saucepan. Add the spring onion and ginger to cook for a minute, then pour the sauce mix into the pan and bring to the boil, adding the pak choi to cook for 2 minutes. Remove the pak choi and place in a serving dish.
Combine the cornflour and water to make the cornflour paste, stir into the sauce and bring to a boil. Add the fried tofu pieces to the pan and keep the heat on high for 1–2 minutes, carefully coating the tofu quenelles with the sauce. Pour the tofu and sauce over the pak choi and serve.