The shell executable can be configured by specifying a shellPath in the TerminalWidgetOptions. Usually, a new terminal is created with the current working directory and nothing else. See this method in the terminal frontend contribution.
In order to open a terminal with a different shell, you would have to copy the content of the normal openTerminal method and insert your own shellPath into the newTerminal() call. Then, call this newly created terminal through a command or something similiar.