code: def add_struct_fields(
      struct: Union[Column, str], *fields: Union[Column, str]
  ) -> Column:
      """
      Adds fields to a struct.
  
      Added in version 0.3.0.
  
      Examples:
          >>> df = spark.createDataFrame([Row(struct=Row(a=1))])
          >>> df.select(glow.add_struct_fields('struct', lit('b'), lit(2)).alias('struct')).collect()
          [Row(struct=Row(a=1, b=2))]
  
      Args:
          struct : The struct to which fields will be added
          fields : The new fields to add. The arguments must alternate between string-typed literal field names and field values.
  
      Returns:
          A struct consisting of the input struct and the added fields
      """
      assert check_argument_types()
      output = Column(
          sc()._jvm.io.projectglow.functions.add_struct_fields(
              _to_java_column(struct),
              _to_seq(sc(), fields, _to_java_column),
          )
      )
      assert check_return_type(output)
      return output
  
imports: from pyspark import SparkContext
  from pyspark.sql.column import Column, _to_java_column, _to_seq
  from typeguard import check_argument_types, check_return_type
  from typing import Union
label_desc: Use image node_id 2 for calling a global function with example usage: add_struct_fields(struct) and returns: output