// InitializeShareGroupStateRequest is a request to initialize share group state.
InitializeShareGroupStateRequest => key 83, max version 0, flexible v0+, share coordinator
  // GroupID is the group identifier.
  GroupID: string
  // Topics are the data for the topics.
  Topics: [=>]
    // TopicID is the topic identifier.
    TopicID: uuid
    // Partitions are the data for the partitions.
    Partitions: [=>]
      // Partition is the partition index.
      Partition: int32
      // StateEpoch is the state epoch for this share-partition.
      StateEpoch: int32
      // StartOffset is the share-partition start offset, or -1 if the start
      // offset is not being initialized.
      StartOffset: int64

// InitializeShareGroupStateResponse is a response for an InitializeShareGroupStateRequest.
//
// Supported errors:
// - NOT_COORDINATOR (version 0+)
// - COORDINATOR_NOT_AVAILABLE (version 0+)
// - COORDINATOR_LOAD_IN_PROGRESS (version 0+)
// - FENCED_STATE_EPOCH (version 0+)
// - INVALID_REQUEST (version 0+)
InitializeShareGroupStateResponse =>
  // Topics are the initialization results.
  Topics: [=>]
    // TopicID is the topic identifier.
    TopicID: uuid
    // Partitions are the results for the partitions.
    Partitions: [=>]
      // Partition is the partition index.
      Partition: int32
      // ErrorCode is the error code, or 0 if there was no error.
      ErrorCode: int16
      // ErrorMessage is the error message, or null if there was no error.
      ErrorMessage: nullable-string
