content: // Generated by the protocol buffer compiler.  DO NOT EDIT!
  // NO CHECKED-IN PROTOBUF GENCODE
  // source: a2a.proto
  // Protobuf Java Version: 4.31.1
  
  package io.a2a.grpc;
  
  @com.google.protobuf.Generated
  public interface MessageOrBuilder extends
      // @@protoc_insertion_point(interface_extends:a2a.v1.Message)
      com.google.protobuf.MessageOrBuilder {
  
    /**
     * <pre>
     * The message id of the message. This is required and created by the
     * message creator.
     * </pre>
     *
     * <code>string message_id = 1;</code>
     * @return The messageId.
     */
    java.lang.String getMessageId();
    /**
     * <pre>
     * The message id of the message. This is required and created by the
     * message creator.
     * </pre>
     *
     * <code>string message_id = 1;</code>
     * @return The bytes for messageId.
     */
    com.google.protobuf.ByteString
        getMessageIdBytes();
  
    /**
     * <pre>
     * The context id of the message. This is optional and if set, the message
     * will be associated with the given context.
     * </pre>
     *
     * <code>string context_id = 2;</code>
     * @return The contextId.
     */
    java.lang.String getContextId();
    /**
     * <pre>
     * The context id of the message. This is optional and if set, the message
     * will be associated with the given context.
     * </pre>
     *
     * <code>string context_id = 2;</code>
     * @return The bytes for contextId.
     */
    com.google.protobuf.ByteString
        getContextIdBytes();
  
    /**
     * <pre>
     * The task id of the message. This is optional and if set, the message
     * will be associated with the given task.
     * </pre>
     *
     * <code>string task_id = 3;</code>
     * @return The taskId.
     */
    java.lang.String getTaskId();
    /**
     * <pre>
     * The task id of the message. This is optional and if set, the message
     * will be associated with the given task.
     * </pre>
     *
     * <code>string task_id = 3;</code>
     * @return The bytes for taskId.
     */
    com.google.protobuf.ByteString
        getTaskIdBytes();
  
    /**
     * <pre>
     * A role for the message.
     * </pre>
     *
     * <code>.a2a.v1.Role role = 4;</code>
     * @return The enum numeric value on the wire for role.
     */
    int getRoleValue();
    /**
     * <pre>
     * A role for the message.
     * </pre>
     *
     * <code>.a2a.v1.Role role = 4;</code>
     * @return The role.
     */
    io.a2a.grpc.Role getRole();
  
    /**
     * <pre>
     * protolint:disable REPEATED_FIELD_NAMES_PLURALIZED
     * Content is the container of the message content.
     * </pre>
     *
     * <code>repeated .a2a.v1.Part content = 5;</code>
     */
    java.util.List<io.a2a.grpc.Part> 
        getContentList();
    /**
     * <pre>
     * protolint:disable REPEATED_FIELD_NAMES_PLURALIZED
     * Content is the container of the message content.
     * </pre>
     *
     * <code>repeated .a2a.v1.Part content = 5;</code>
     */
    io.a2a.grpc.Part getContent(int index);
    /**
     * <pre>
     * protolint:disable REPEATED_FIELD_NAMES_PLURALIZED
     * Content is the container of the message content.
     * </pre>
     *
     * <code>repeated .a2a.v1.Part content = 5;</code>
     */
    int getContentCount();
    /**
     * <pre>
     * protolint:disable REPEATED_FIELD_NAMES_PLURALIZED
     * Content is the container of the message content.
     * </pre>
     *
     * <code>repeated .a2a.v1.Part content = 5;</code>
     */
    java.util.List<? extends io.a2a.grpc.PartOrBuilder> 
        getContentOrBuilderList();
    /**
     * <pre>
     * protolint:disable REPEATED_FIELD_NAMES_PLURALIZED
     * Content is the container of the message content.
     * </pre>
     *
     * <code>repeated .a2a.v1.Part content = 5;</code>
     */
    io.a2a.grpc.PartOrBuilder getContentOrBuilder(
        int index);
  
    /**
     * <pre>
     * protolint:enable REPEATED_FIELD_NAMES_PLURALIZED
     * Any optional metadata to provide along with the message.
     * </pre>
     *
     * <code>.google.protobuf.Struct metadata = 6;</code>
     * @return Whether the metadata field is set.
     */
    boolean hasMetadata();
    /**
     * <pre>
     * protolint:enable REPEATED_FIELD_NAMES_PLURALIZED
     * Any optional metadata to provide along with the message.
     * </pre>
     *
     * <code>.google.protobuf.Struct metadata = 6;</code>
     * @return The metadata.
     */
    com.google.protobuf.Struct getMetadata();
    /**
     * <pre>
     * protolint:enable REPEATED_FIELD_NAMES_PLURALIZED
     * Any optional metadata to provide along with the message.
     * </pre>
     *
     * <code>.google.protobuf.Struct metadata = 6;</code>
     */
    com.google.protobuf.StructOrBuilder getMetadataOrBuilder();
  
    /**
     * <pre>
     * The URIs of extensions that are present or contributed to this Message.
     * </pre>
     *
     * <code>repeated string extensions = 7;</code>
     * @return A list containing the extensions.
     */
    java.util.List<java.lang.String>
        getExtensionsList();
    /**
     * <pre>
     * The URIs of extensions that are present or contributed to this Message.
     * </pre>
     *
     * <code>repeated string extensions = 7;</code>
     * @return The count of extensions.
     */
    int getExtensionsCount();
    /**
     * <pre>
     * The URIs of extensions that are present or contributed to this Message.
     * </pre>
     *
     * <code>repeated string extensions = 7;</code>
     * @param index The index of the element to return.
     * @return The extensions at the given index.
     */
    java.lang.String getExtensions(int index);
    /**
     * <pre>
     * The URIs of extensions that are present or contributed to this Message.
     * </pre>
     *
     * <code>repeated string extensions = 7;</code>
     * @param index The index of the value to return.
     * @return The bytes of the extensions at the given index.
     */
    com.google.protobuf.ByteString
        getExtensionsBytes(int index);
  }
  