class_docstr: Writes a single pyi file
class_docstr_tok: ["Writes","a","single","pyi","file"]
code: def write_grpc_methods(
      self,
      service: d.ServiceDescriptorProto,
      scl_prefix: SourceCodeLocation,
  ) -> None:
      wl = self._write_line
      methods = [
          (i, m)
          for i, m in enumerate(service.method)
          if m.name not in PYTHON_RESERVED
      ]
      if not methods:
          wl("...")
          wl("")
      for i, method in methods:
          scl = scl_prefix + [
              d.ServiceDescriptorProto.METHOD_FIELD_NUMBER,
              i,
          ]
  
          wl("@{}", self._import("abc", "abstractmethod"))
          wl("def {}(", method.name)
          with self._indent():
              wl("self,")
              input_name = (
                  "request_iterator"
                  if method.client_streaming
                  else "request"
              )
              input_type = self._input_type(method)
              wl(f"{input_name}: {input_type},")
              wl(
                  "context: {},",
                  self._import("grpc", "ServicerContext"),
              )
          wl(
              ") -> {}:{}",
              self._output_type(method),
              " ..." if not self._has_comments(scl) else "",
          ),
          if self._has_comments(scl):
              with self._indent():
                  if not self._write_comments(scl):
                      wl("...")
  
imports: from __future__ import annotations
  import sys
  from collections import defaultdict
  from contextlib import contextmanager
  from typing import Any, Callable, Dict, Iterable, Iterator, List, Optional, Set, Sequence, Tuple
  import google.protobuf.descriptor_pb2
  from google.protobuf.compiler import plugin_pb2
  from google.protobuf.internal.containers import RepeatedCompositeFieldContainer
  from google.protobuf.internal.well_known_types import WKTBASES
  from .None import extensions_pb2
label_desc: Use image node_id 23 for calling the PkgWriter obj's underlying member method code with example usage: obj.write_grpc_methods(service, scl_prefix) without return types