description: >
    Implement to provide triggers management.

methods:
    - name: AddTrigger
      description: Create new object that represent Trigger with
          xyz.openbmc_project.Telemetry.Trigger interface stored in path
          /xyz/openbmc_project/Telemetry/Triggers/{Domain}/{Name} where
          Domain and Name are parameters of this method.
      parameters:
          - name: name
            type: string
            description: >
                Defines the name of report to be exposed over D-Bus. Service allows
                to use separator '/' in name to group reports in directory.
          - name: triggerActions
            type: array[enum[xyz.openbmc_project.Telemetry.Trigger.TriggerAction]]
            description: >
                Defines which actions are taken when threshold conditions are met.
          - name: sensors
            type: array[struct[object_path,string]]
            description: >
                Array of sensors that is monitored within trigger. Object path
                points to a sensor in DBus envrionment. String is used as user
                metadata.
          - name: reportNames
            type: array[string]
            description: >
                Collection of report names that are updated when threshold
                conditions are met. This parameter is ignored if triggerActions
                parameter does not contain 'UpdateReport' action.
          - name: thresholds
            type: variant[array[struct[enum[xyz.openbmc_project.Telemetry.Trigger.Type],uint64,enum[xyz.openbmc_project.Telemetry.Trigger.Direction],double]],array[struct[string,enum[xyz.openbmc_project.Telemetry.Trigger.Severity],uint64,string]]]
            description: >
                Contains array of numeric or discrete thresholds that are described
                in xyz.openbmc_project.Telemetry.Trigger interface.
      returns:
          - name: triggerPath
            type: object_path
            description: >
                Path to new trigger ->
                /xyz/openbmc_project/Telemetry/Triggers/{name}.
