class_docstr: Interact with Amazon EMR Containers (Amazon EMR on EKS).
  
  Provide thick wrapper around :py:class:`boto3.client("emr-containers") <EMRContainers.Client>`.
  
  :param virtual_cluster_id: Cluster ID of the EMR on EKS virtual cluster
  
  Additional arguments (such as ``aws_conn_id``) may be specified and
  are passed down to the underlying AwsBaseHook.
  
  .. seealso::
      - :class:`airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook`
class_docstr_tok: ["Interact","with","Amazon","EMR","Containers","(","Amazon","EMR","on","EKS",")",".","Provide","thick","wrapper","around",":","py",":","class",":","`","boto3.client","(","``","emr-containers","''",")","<","EMRContainers.Client",">","`",".",":","param","virtual_cluster_id",":","Cluster","ID","of","the","EMR","on","EKS","virtual","cluster","Additional","arguments","(","such","as","``","aws_conn_id","``",")","may","be","specified","and","are","passed","down","to","the","underlying","AwsBaseHook",".","..","seealso",":",":","-",":","class",":","`","airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook","`"]
code: def __init__(
      self,
      *args: Any,
      virtual_cluster_id: str | None = None,
      **kwargs: Any,
  ) -> None:
      super().__init__(client_type="emr-containers", *args, **kwargs)  # type: ignore
      self.virtual_cluster_id = virtual_cluster_id
  
imports: from __future__ import annotations
  import json
  import time
  import warnings
  from typing import Any
  from botocore.exceptions import ClientError
  from airflow.exceptions import AirflowException, AirflowNotFoundException
  from airflow.providers.amazon.aws.hooks.base_aws import AwsBaseHook
  from airflow.providers.amazon.aws.utils.waiter_with_logging import wait
label_desc: Use image node_id 1 to create a new EmrContainerHook object from inherited base classes: AwsBaseHook with example: obj = EmrContainerHook()