code: def write_option(**kwargs):
          
          if len(kwargs) != 1:
              raise TypeError(_BAD_OPTION_ERR)
  
          name, value = kwargs.popitem()
          if name == "last_update_time":
              return _helpers.LastUpdateOption(value)
          elif name == "exists":
              return _helpers.ExistsOption(value)
          else:
              extra = "{!r} was provided".format(name)
              raise TypeError(_BAD_OPTION_ERR, extra)
docs: Create a write option for write operations.
  
          Write operations include :meth:`~.DocumentReference.set`,
          :meth:`~.DocumentReference.update` and
          :meth:`~.DocumentReference.delete`.
  
          One of the following keyword arguments must be provided:
  
          * ``last_update_time`` (:class:`google.protobuf.timestamp_pb2.\
                 Timestamp`): A timestamp. When set, the target document must
                 exist and have been last updated at that time. Protobuf
                 ``update_time`` timestamps are typically returned from methods
                 that perform write operations as part of a "write result"
                 protobuf or directly.
          * ``exists`` (:class:`bool`): Indicates if the document being modified
                should already exist.
  
          Providing no argument would make the option have no effect (so
          it is not allowed). Providing multiple would be an apparent
          contradiction, since ``last_update_time`` assumes that the
          document **was** updated (it can't have been updated if it
          doesn't exist) and ``exists`` indicate that it is unknown if the
          document exists or not.
  
          Args:
              kwargs (Dict[str, Any]): The keyword arguments described above.
  
          Raises:
              TypeError: If anything other than exactly one argument is
                  provided by the caller.