- release_tracks: [ALPHA, BETA, GA]
  help_text:
    brief: Describe the index configuration of the given field.
    description: Describe the index configuration of the given field.
    examples: |
      The following command describes the database-wide default index settings:

        $ {command}

        $ {command} --database=(default)

      The following command describes the index configuration of the `timestamp` field in the
      `Events` collection group.

        $ {command} timestamp --collection-group=Events

  request:
    collection: firestore.projects.databases.collectionGroups.fields
    modify_request_hooks:
    - googlecloudsdk.command_lib.firestore.util:ValidateFieldArg

  arguments:
    resource:
      help_text: |
        Field to describe.

        This can be omitted to describe the database-wide default index settings.
      spec: !REF googlecloudsdk.command_lib.firestore.resources:field_with_default

  output:
    # Note the .yesno() here allows us to handle a field with all indexes disabled by explicitly
    # showing an empty table, as opposed to omitting the table from the display.
    format: |
      table[box](
        name.segment(-1):label=FIELD,
        name.segment(-3):label=COLLECTION_GROUP,
        indexConfig:format="table[box](
          ancestorField)",
        indexConfig.indexes.yesno(no="{}"):format="table[title=INDEXES,box](
          fields.order.flatten(),fields.arrayConfig.flatten(),queryScope,state)")
