code: def __init__(self, config: ResNetConfig, **kwargs) -> None:
      super().__init__(**kwargs)
      self.config = config
      self.embedder = TFResNetEmbeddings(config, name="embedder")
      self.encoder = TFResNetEncoder(config, name="encoder")
      self.pooler = tf.keras.layers.GlobalAveragePooling2D(
          keepdims=True
      )
  
imports: from typing import Optional, Tuple, Union
  import tensorflow
  from ...activations_tf import ACT2FN
  from ...modeling_tf_outputs import TFBaseModelOutputWithNoAttention, TFBaseModelOutputWithPoolingAndNoAttention, TFImageClassifierOutputWithNoAttention
  from ...modeling_tf_utils import TFPreTrainedModel, TFSequenceClassificationLoss, keras_serializable, unpack_inputs
  from ...tf_utils import shape_list
  from ...utils import add_code_sample_docstrings, add_start_docstrings, add_start_docstrings_to_model_forward, logging
  from .configuration_resnet import ResNetConfig
label_desc: Use image node_id 1 to create a new TFResNetMainLayer object from inherited base classes: tf.keras.layers with example: obj = TFResNetMainLayer(config)