class_docstr: Ask the user for input until a valid response is received. This is the base class, see one of
  the concrete classes for examples.
  
  Args:
      prompt (TextType, optional): Prompt text. Defaults to "".
      console (Console, optional): A Console instance or None to use global console. Defaults to None.
      password (bool, optional): Enable password input. Defaults to False.
      choices (List[str], optional): A list of valid choices. Defaults to None.
      show_default (bool, optional): Show default in prompt. Defaults to True.
      show_choices (bool, optional): Show choices in prompt. Defaults to True.
class_docstr_tok: ["Ask","the","user","for","input","until","a","valid","response","is","received",".","This","is","the","base","class",",","see","one","of","the","concrete","classes","for","examples",".","Args",":","prompt","(","TextType",",","optional",")",":","Prompt","text",".","Defaults","to","``","''",".","console","(","Console",",","optional",")",":","A","Console","instance","or","None","to","use","global","console",".","Defaults","to","None",".","password","(","bool",",","optional",")",":","Enable","password","input",".","Defaults","to","False",".","choices","(","List","[","str","]",",","optional",")",":","A","list","of","valid","choices",".","Defaults","to","None",".","show_default","(","bool",",","optional",")",":","Show","default","in","prompt",".","Defaults","to","True",".","show_choices","(","bool",",","optional",")",":","Show","choices","in","prompt",".","Defaults","to","True","."]
docstr: Run the prompt loop.
  
  Args:
      default (Any, optional): Optional default value.
  
  Returns:
      PromptType: Processed value.
docstr_tok: ["Run","the","prompt","loop",".","Args",":","default","(","Any",",","optional",")",":","Optional","default","value",".","Returns",":","PromptType",":","Processed","value","."]
code: def __call__(
      self, *, default: Any = ..., stream: Optional[TextIO] = None
  ) -> Any:
      """Run the prompt loop.
  
      Args:
          default (Any, optional): Optional default value.
  
      Returns:
          PromptType: Processed value.
      """
      while True:
          self.pre_prompt()
          prompt = self.make_prompt(default)
          value = self.get_input(
              self.console, prompt, self.password, stream=stream
          )
          if value == "" and default != ...:
              return default
          try:
              return_value = self.process_response(value)
          except InvalidResponse as error:
              self.on_validate_error(value, error)
              continue
          else:
              return return_value
  
imports: from typing import Any, Generic, List, Optional, TextIO, TypeVar, Union, overload
  from .None import get_console
  from .console import Console
  from .text import Text, TextType
label_desc: Use image node_id 14 for calling the PromptBase obj's underlying member method code with example usage: obj.__call__() and returns: default, return_value