class_docstr: `FeatureConnector` for translations with fixed languages per example.
  
  Input: The Translate feature accepts a dictionary for each example mapping
    string language codes to string translations.
  
  Output: A dictionary mapping string language codes to translations as `Text`
    features.
  
  Example:
  At construction time:
  
  ```
  tfds.features.Translation(languages=['en', 'fr', 'de'])
  ```
  
  During data generation:
  
  ```
  yield {
      'en': 'the cat',
      'fr': 'le chat',
      'de': 'die katze'
  }
  ```
  
  Tensor returned by `.as_dataset()`:
  
  ```
  {
      'en': tf.Tensor(shape=(), dtype=np.str_, numpy='the cat'),
      'fr': tf.Tensor(shape=(), dtype=np.str_, numpy='le chat'),
      'de': tf.Tensor(shape=(), dtype=np.str_, numpy='die katze'),
  }
  ```
docstr: List of languages.
docstr_tok: ["List","of","languages","."]
code: def languages(self):
      """List of languages."""
      return sorted(self.keys())
  
imports: from __future__ import annotations
  import collections.abc
  from typing import Union
  from tensorflow_datasets.core.features import feature
  from tensorflow_datasets.core.features import features_dict
  from tensorflow_datasets.core.features import sequence_feature
  from tensorflow_datasets.core.features import text_feature
  from tensorflow_datasets.core.proto import feature_pb2
  from tensorflow_datasets.core.utils import type_utils
label_desc: Use image node_id 2 for calling the Translation obj's underlying member method code with example usage: obj.languages() and returns: sorted