code: def update_trigger(self, trigger):
          
          assert trigger is not None
          assert isinstance(trigger.id, str), "Value must be a string"
          the_time_period = {
              "start": {
                  "expression": "after",
                  "amount": trigger.start_after_millis
              },
              "end": {
                  "expression": "after",
                  "amount": trigger.end_after_millis
              }
          }
          the_conditions = [dict(name=c.weather_param, expression=c.operator, amount=c.amount) for c in trigger.conditions]
          the_area = [a.as_dict() for a in trigger.area]
  
          status, _ = self.http_client.put(
              NAMED_TRIGGER_URI % trigger.id,
              params={'appid': self.API_key},
              data=dict(time_period=the_time_period, conditions=the_conditions, area=the_area),
              headers={'Content-Type': 'application/json'})
docs: Updates on the Alert API the trigger record having the ID of the specified Trigger object: the remote record is
          updated with data from the local Trigger object.
  
          :param trigger: the Trigger with updated data
          :type trigger: `pyowm.alertapi30.trigger.Trigger`
          :return: ``None`` if update is successful, an error otherwise