Once the beans have soaked, discard the water and place beans and bay leaf in a pot with enough water to cover and boil for 30 minutes. Drain.
Clean the fish and score the skin on both sides. In a small bowl, mix 1 teaspoon salt, the lemon juice, olive oil and crushed garlic and rub this mixture inside the fish, and into the scores on the skin. Leave to marinate for 15 minutes.
Peel the sweet (or regular) potatoes, yams (or cassava) and plantains, place in a large pot of salted water and boil for 15 minutes. Once soft, drain and set aside.
Light a barbecue (or pre-heat grill to medium heat) and place the marinated fish over charcoal fire or under the grill for 3-5 minutes each side, or until just cooked through.
Fry the onions in the palm oil with the bay leaf until translucent. Add 475ml / 2 cups of water and the beans and simmer for 15 minutes. Adjust the seasoning to taste with salt and sugar.
Once everything is cooked, assemble fish, sweet potatoes, plantain, and beans on a large plate to share. Garnish the fish with a lemon wedge and sprinkle farinha (or breadcrumbs) over the beans.