pub fn run(
terminal: &mut Tui,
app: &mut App,
symbol_client: Option<WorkspaceSymbolClient>,
hierarchy_client: Option<HierarchyClient>,
lsp_status_receiver: Option<UnboundedReceiver<LspStatusUpdate>>,
ipc_event_sender: Option<IpcEventSender>,
ipc_command_receiver: Option<Receiver<IpcCommand>>,
) -> Result<()>