class_docstr: S3KeyTrigger is fired as deferred class with params to run the task in trigger worker.
  
  :param bucket_name: Name of the S3 bucket. Only needed when ``bucket_key``
      is not provided as a full s3:// url.
  :param bucket_key:  The key being waited on. Supports full s3:// style url
      or relative path from root level. When it's specified as a full s3://
      url, please leave bucket_name as `None`.
  :param wildcard_match: whether the bucket_key should be interpreted as a
      Unix wildcard pattern
  :param aws_conn_id: reference to the s3 connection
  :param use_regex: whether to use regex to check bucket
  :param hook_params: params for hook its optional
docstr: Serialize S3KeyTrigger arguments and classpath.
docstr_tok: ["Serialize","S3KeyTrigger","arguments","and","classpath","."]
code: def serialize(self) -> tuple[str, dict[str, Any]]:
      """Serialize S3KeyTrigger arguments and classpath."""
      return (
          "airflow.providers.amazon.aws.triggers.s3.S3KeyTrigger",
          {
              "bucket_name": self.bucket_name,
              "bucket_key": self.bucket_key,
              "wildcard_match": self.wildcard_match,
              "aws_conn_id": self.aws_conn_id,
              "hook_params": self.hook_params,
              "poke_interval": self.poke_interval,
              "should_check_fn": self.should_check_fn,
              "use_regex": self.use_regex,
          },
      )
  
file_path: airflow/airflow/providers/amazon/aws/triggers/s3.py
imports: from __future__ import annotations
  import asyncio
  from functools import cached_property
  from typing import TYPE_CHECKING, Any, AsyncIterator
  from airflow.providers.amazon.aws.hooks.s3 import S3Hook
  from airflow.triggers.base import BaseTrigger, TriggerEvent
label_desc: Use image node_id 2 for calling the S3KeyTrigger obj's underlying member method code with example usage: obj.serialize() and returns: str,  dict