// @generated by protoc-gen-es v2.5.0 with parameter "target=js+dts,import_extension=js,json_types=true"
// @generated from file arg_services/mining/v1beta/adu.proto (package arg_services.mining.v1beta, syntax proto3)
/* eslint-disable */

import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
import type { JsonObject, Message } from "@bufbuild/protobuf";
import type { StructJson } from "@bufbuild/protobuf/wkt";

/**
 * Describes the file arg_services/mining/v1beta/adu.proto.
 */
export declare const file_arg_services_mining_v1beta_adu: GenFile;

/**
 * @generated from message arg_services.mining.v1beta.SegmentationRequest
 */
export declare type SegmentationRequest = Message<"arg_services.mining.v1beta.SegmentationRequest"> & {
  /**
   * @generated from field: string text = 1;
   */
  text: string;

  /**
   * Implementation-specific information can be encoded here
   *
   * @generated from field: google.protobuf.Struct extras = 15;
   */
  extras?: JsonObject;
};

/**
 * @generated from message arg_services.mining.v1beta.SegmentationRequest
 */
export declare type SegmentationRequestJson = {
  /**
   * @generated from field: string text = 1;
   */
  text?: string;

  /**
   * Implementation-specific information can be encoded here
   *
   * @generated from field: google.protobuf.Struct extras = 15;
   */
  extras?: StructJson;
};

/**
 * Describes the message arg_services.mining.v1beta.SegmentationRequest.
 * Use `create(SegmentationRequestSchema)` to create a new message.
 */
export declare const SegmentationRequestSchema: GenMessage<SegmentationRequest, {jsonType: SegmentationRequestJson}>;

/**
 * @generated from message arg_services.mining.v1beta.SegmentationResponse
 */
export declare type SegmentationResponse = Message<"arg_services.mining.v1beta.SegmentationResponse"> & {
  /**
   * @generated from field: repeated arg_services.mining.v1beta.Segment segments = 1;
   */
  segments: Segment[];

  /**
   * Implementation-specific information can be encoded here
   *
   * @generated from field: google.protobuf.Struct extras = 15;
   */
  extras?: JsonObject;
};

/**
 * @generated from message arg_services.mining.v1beta.SegmentationResponse
 */
export declare type SegmentationResponseJson = {
  /**
   * @generated from field: repeated arg_services.mining.v1beta.Segment segments = 1;
   */
  segments?: SegmentJson[];

  /**
   * Implementation-specific information can be encoded here
   *
   * @generated from field: google.protobuf.Struct extras = 15;
   */
  extras?: StructJson;
};

/**
 * Describes the message arg_services.mining.v1beta.SegmentationResponse.
 * Use `create(SegmentationResponseSchema)` to create a new message.
 */
export declare const SegmentationResponseSchema: GenMessage<SegmentationResponse, {jsonType: SegmentationResponseJson}>;

/**
 * @generated from message arg_services.mining.v1beta.Segment
 */
export declare type Segment = Message<"arg_services.mining.v1beta.Segment"> & {
  /**
   * @generated from field: string text = 1;
   */
  text: string;

  /**
   * @generated from field: uint64 start = 2;
   */
  start: bigint;

  /**
   * @generated from field: uint64 end = 3;
   */
  end: bigint;
};

/**
 * @generated from message arg_services.mining.v1beta.Segment
 */
export declare type SegmentJson = {
  /**
   * @generated from field: string text = 1;
   */
  text?: string;

  /**
   * @generated from field: uint64 start = 2;
   */
  start?: string;

  /**
   * @generated from field: uint64 end = 3;
   */
  end?: string;
};

/**
 * Describes the message arg_services.mining.v1beta.Segment.
 * Use `create(SegmentSchema)` to create a new message.
 */
export declare const SegmentSchema: GenMessage<Segment, {jsonType: SegmentJson}>;

/**
 * @generated from message arg_services.mining.v1beta.ClassificationRequest
 */
export declare type ClassificationRequest = Message<"arg_services.mining.v1beta.ClassificationRequest"> & {
  /**
   * @generated from field: map<string, string> segments = 1;
   */
  segments: { [key: string]: string };

  /**
   * Implementation-specific information can be encoded here
   *
   * @generated from field: google.protobuf.Struct extras = 15;
   */
  extras?: JsonObject;
};

/**
 * @generated from message arg_services.mining.v1beta.ClassificationRequest
 */
export declare type ClassificationRequestJson = {
  /**
   * @generated from field: map<string, string> segments = 1;
   */
  segments?: { [key: string]: string };

  /**
   * Implementation-specific information can be encoded here
   *
   * @generated from field: google.protobuf.Struct extras = 15;
   */
  extras?: StructJson;
};

/**
 * Describes the message arg_services.mining.v1beta.ClassificationRequest.
 * Use `create(ClassificationRequestSchema)` to create a new message.
 */
export declare const ClassificationRequestSchema: GenMessage<ClassificationRequest, {jsonType: ClassificationRequestJson}>;

/**
 * @generated from message arg_services.mining.v1beta.ClassificationResponse
 */
export declare type ClassificationResponse = Message<"arg_services.mining.v1beta.ClassificationResponse"> & {
  /**
   * @generated from field: repeated arg_services.mining.v1beta.Adu adus = 1;
   */
  adus: Adu[];

  /**
   * Implementation-specific information can be encoded here
   *
   * @generated from field: google.protobuf.Struct extras = 15;
   */
  extras?: JsonObject;
};

/**
 * @generated from message arg_services.mining.v1beta.ClassificationResponse
 */
export declare type ClassificationResponseJson = {
  /**
   * @generated from field: repeated arg_services.mining.v1beta.Adu adus = 1;
   */
  adus?: AduJson[];

  /**
   * Implementation-specific information can be encoded here
   *
   * @generated from field: google.protobuf.Struct extras = 15;
   */
  extras?: StructJson;
};

/**
 * Describes the message arg_services.mining.v1beta.ClassificationResponse.
 * Use `create(ClassificationResponseSchema)` to create a new message.
 */
export declare const ClassificationResponseSchema: GenMessage<ClassificationResponse, {jsonType: ClassificationResponseJson}>;

/**
 * @generated from message arg_services.mining.v1beta.Adu
 */
export declare type Adu = Message<"arg_services.mining.v1beta.Adu"> & {
  /**
   * @generated from field: string segment_id = 1;
   */
  segmentId: string;

  /**
   * @generated from field: repeated arg_services.mining.v1beta.Token tokens = 2;
   */
  tokens: Token[];
};

/**
 * @generated from message arg_services.mining.v1beta.Adu
 */
export declare type AduJson = {
  /**
   * @generated from field: string segment_id = 1;
   */
  segmentId?: string;

  /**
   * @generated from field: repeated arg_services.mining.v1beta.Token tokens = 2;
   */
  tokens?: TokenJson[];
};

/**
 * Describes the message arg_services.mining.v1beta.Adu.
 * Use `create(AduSchema)` to create a new message.
 */
export declare const AduSchema: GenMessage<Adu, {jsonType: AduJson}>;

/**
 * @generated from message arg_services.mining.v1beta.Token
 */
export declare type Token = Message<"arg_services.mining.v1beta.Token"> & {
  /**
   * @generated from field: string text = 1;
   */
  text: string;

  /**
   * @generated from field: bool argumentative = 2;
   */
  argumentative: boolean;

  /**
   * @generated from field: bool keyword = 3;
   */
  keyword: boolean;
};

/**
 * @generated from message arg_services.mining.v1beta.Token
 */
export declare type TokenJson = {
  /**
   * @generated from field: string text = 1;
   */
  text?: string;

  /**
   * @generated from field: bool argumentative = 2;
   */
  argumentative?: boolean;

  /**
   * @generated from field: bool keyword = 3;
   */
  keyword?: boolean;
};

/**
 * Describes the message arg_services.mining.v1beta.Token.
 * Use `create(TokenSchema)` to create a new message.
 */
export declare const TokenSchema: GenMessage<Token, {jsonType: TokenJson}>;

/**
 * @generated from service arg_services.mining.v1beta.AduService
 */
export declare const AduService: GenService<{
  /**
   * @generated from rpc arg_services.mining.v1beta.AduService.Segmentation
   */
  segmentation: {
    methodKind: "unary";
    input: typeof SegmentationRequestSchema;
    output: typeof SegmentationResponseSchema;
  },
  /**
   * @generated from rpc arg_services.mining.v1beta.AduService.Classification
   */
  classification: {
    methodKind: "unary";
    input: typeof ClassificationRequestSchema;
    output: typeof ClassificationResponseSchema;
  },
}>;

