code: def add_parser(subparsers, parent_parser):
      COMPLETION_HELP = "Generate shell tab completion."
      COMPLETION_DESCRIPTION = (
          "Prints out shell tab completion scripts."
      )
      completion_parser = subparsers.add_parser(
          "completion",
          parents=[parent_parser],
          description=append_doc_link(
              COMPLETION_DESCRIPTION, "completion"
          ),
          help=COMPLETION_HELP,
          formatter_class=formatter.RawDescriptionHelpFormatter,
      )
      completion_parser.add_argument(
          "-s",
          "--shell",
          help="Shell syntax for completions.",
          default="bash",
          choices=SUPPORTED_SHELLS,
      )
      completion_parser.set_defaults(func=CmdCompletion)
  
file_path: dvc/dvc/commands/completion.py
imports: from dvc.cli import formatter
  from dvc.cli.command import CmdBaseNoRepo
  from dvc.cli.completion import PREAMBLE
  from dvc.cli.utils import append_doc_link
  from dvc.log import logger
  from dvc.ui import ui
label_desc: Use image node_id 1 for calling a global function with example usage: add_parser(subparsers, parent_parser) without return types