// ListPartitionReassignmentsRequest, proposed in KIP-455 and implemented in
// Kafka 2.4.0, is a request to list in progress partition reassignments.
//
// ACL wise, this requires DESCRIBE on CLUSTER.
ListPartitionReassignmentsRequest => key 46, max version 0, flexible v0+, admin
  TimeoutMillis(60000)
  // Topics are topics to list in progress partition reassignments of, or null
  // to list everything.
  Topics: nullable[=>]
    // Topic is a topic to list in progress partition reassingments of.
    Topic: string
    // Partitions are partitions to list in progress reassignments of.
    Partitions: [int32]

// ListPartitionReassignmentsResponse is returned for a ListPartitionReassignmentsRequest.
ListPartitionReassignmentsResponse =>
  ThrottleMillis
  // ErrorCode is the error code returned for listing reassignments.
  //
  // REQUEST_TIMED_OUT is returned if the request timed out.
  //
  // NOT_CONTROLLER is returned if the request was not issued to a Kafka
  // controller.
  //
  // CLUSTER_AUTHORIZATION_FAILED is returned if the client is not
  // authorized to reassign partitions.
  ErrorCode: int16
  // ErrorMessage is any global (applied to all partitions) error message.
  ErrorMessage: nullable-string
  // Topics contains responses for each topic requested.
  Topics: [=>]
    // Topic is the topic being responded to.
    Topic: string
    // Partitions contains responses for partitions.
    Partitions: [=>]
      // Partition is the partition being responded to.
      Partition: int32
      // Replicas is the partition's current replicas.
      Replicas: [int32]
      // AddingReplicas are replicas currently being added to the partition.
      AddingReplicas: [int32]
      // RemovingReplicas are replicas currently being removed from the partition.
      RemovingReplicas: [int32]
