Heat indoor grill pan to high heat. In a large bowl mix the onions and 1 tablespoon olive oil.
Place onions on the grill and cook for 4 minutes on each side, until both sides are lightly charred.
In a large bowl, add the onion, 2 tablespoons olive oil, salt and pepper, tomatoes, avocados, basil and lime juice.
Toss vegetables and set aside.
Rub fish with 2 tablespoons olive oil and salt and pepper. Place on hot grill and cook for 5 minutes on each side, until fish flakes easily with a fork. Serve fish warm with the vegetables.