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

import type { GenEnum, 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/ranking/v1beta/ranking.proto.
 */
export declare const file_arg_services_ranking_v1beta_ranking: GenFile;

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

  /**
   * @generated from field: map<string, string> adus = 2;
   */
  adus: { [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.ranking.v1beta.QualityRankingRequest
 */
export declare type QualityRankingRequestJson = {
  /**
   * @generated from field: string query = 1;
   */
  query?: string;

  /**
   * @generated from field: map<string, string> adus = 2;
   */
  adus?: { [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.ranking.v1beta.QualityRankingRequest.
 * Use `create(QualityRankingRequestSchema)` to create a new message.
 */
export declare const QualityRankingRequestSchema: GenMessage<QualityRankingRequest, {jsonType: QualityRankingRequestJson}>;

/**
 * @generated from message arg_services.ranking.v1beta.QualityRankingResponse
 */
export declare type QualityRankingResponse = Message<"arg_services.ranking.v1beta.QualityRankingResponse"> & {
  /**
   * @generated from field: repeated arg_services.ranking.v1beta.QualityRankedAdu ranked_adus = 1;
   */
  rankedAdus: QualityRankedAdu[];

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

/**
 * @generated from message arg_services.ranking.v1beta.QualityRankingResponse
 */
export declare type QualityRankingResponseJson = {
  /**
   * @generated from field: repeated arg_services.ranking.v1beta.QualityRankedAdu ranked_adus = 1;
   */
  rankedAdus?: QualityRankedAduJson[];

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

/**
 * Describes the message arg_services.ranking.v1beta.QualityRankingResponse.
 * Use `create(QualityRankingResponseSchema)` to create a new message.
 */
export declare const QualityRankingResponseSchema: GenMessage<QualityRankingResponse, {jsonType: QualityRankingResponseJson}>;

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

  /**
   * @generated from field: string text = 2;
   */
  text: string;

  /**
   * @generated from field: double global_quality = 3;
   */
  globalQuality: number;

  /**
   * @generated from field: map<string, double> quality_dimensions = 4;
   */
  qualityDimensions: { [key: string]: number };

  /**
   * @generated from field: arg_services.ranking.v1beta.ArgumentStance stance = 5;
   */
  stance: ArgumentStance;

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

/**
 * @generated from message arg_services.ranking.v1beta.QualityRankedAdu
 */
export declare type QualityRankedAduJson = {
  /**
   * @generated from field: string id = 1;
   */
  id?: string;

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

  /**
   * @generated from field: double global_quality = 3;
   */
  globalQuality?: number | "NaN" | "Infinity" | "-Infinity";

  /**
   * @generated from field: map<string, double> quality_dimensions = 4;
   */
  qualityDimensions?: { [key: string]: number | "NaN" | "Infinity" | "-Infinity" };

  /**
   * @generated from field: arg_services.ranking.v1beta.ArgumentStance stance = 5;
   */
  stance?: ArgumentStanceJson;

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

/**
 * Describes the message arg_services.ranking.v1beta.QualityRankedAdu.
 * Use `create(QualityRankedAduSchema)` to create a new message.
 */
export declare const QualityRankedAduSchema: GenMessage<QualityRankedAdu, {jsonType: QualityRankedAduJson}>;

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

  /**
   * @generated from field: map<string, string> adus = 2;
   */
  adus: { [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.ranking.v1beta.StatisticalRankingRequest
 */
export declare type StatisticalRankingRequestJson = {
  /**
   * @generated from field: string query = 1;
   */
  query?: string;

  /**
   * @generated from field: map<string, string> adus = 2;
   */
  adus?: { [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.ranking.v1beta.StatisticalRankingRequest.
 * Use `create(StatisticalRankingRequestSchema)` to create a new message.
 */
export declare const StatisticalRankingRequestSchema: GenMessage<StatisticalRankingRequest, {jsonType: StatisticalRankingRequestJson}>;

/**
 * @generated from message arg_services.ranking.v1beta.StatisticalRankingResponse
 */
export declare type StatisticalRankingResponse = Message<"arg_services.ranking.v1beta.StatisticalRankingResponse"> & {
  /**
   * @generated from field: repeated arg_services.ranking.v1beta.StatisticalRankedAdu ranked_adus = 1;
   */
  rankedAdus: StatisticalRankedAdu[];

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

/**
 * @generated from message arg_services.ranking.v1beta.StatisticalRankingResponse
 */
export declare type StatisticalRankingResponseJson = {
  /**
   * @generated from field: repeated arg_services.ranking.v1beta.StatisticalRankedAdu ranked_adus = 1;
   */
  rankedAdus?: StatisticalRankedAduJson[];

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

/**
 * Describes the message arg_services.ranking.v1beta.StatisticalRankingResponse.
 * Use `create(StatisticalRankingResponseSchema)` to create a new message.
 */
export declare const StatisticalRankingResponseSchema: GenMessage<StatisticalRankingResponse, {jsonType: StatisticalRankingResponseJson}>;

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

  /**
   * @generated from field: string text = 2;
   */
  text: string;

  /**
   * @generated from field: double score = 3;
   */
  score: number;

  /**
   * @generated from field: arg_services.ranking.v1beta.ArgumentStance stance = 5;
   */
  stance: ArgumentStance;

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

/**
 * @generated from message arg_services.ranking.v1beta.StatisticalRankedAdu
 */
export declare type StatisticalRankedAduJson = {
  /**
   * @generated from field: string id = 1;
   */
  id?: string;

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

  /**
   * @generated from field: double score = 3;
   */
  score?: number | "NaN" | "Infinity" | "-Infinity";

  /**
   * @generated from field: arg_services.ranking.v1beta.ArgumentStance stance = 5;
   */
  stance?: ArgumentStanceJson;

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

/**
 * Describes the message arg_services.ranking.v1beta.StatisticalRankedAdu.
 * Use `create(StatisticalRankedAduSchema)` to create a new message.
 */
export declare const StatisticalRankedAduSchema: GenMessage<StatisticalRankedAdu, {jsonType: StatisticalRankedAduJson}>;

/**
 * @generated from enum arg_services.ranking.v1beta.ArgumentStance
 */
export enum ArgumentStance {
  /**
   * @generated from enum value: ARGUMENT_STANCE_UNSPECIFIED = 0;
   */
  UNSPECIFIED = 0,

  /**
   * @generated from enum value: ARGUMENT_STANCE_PRO = 1;
   */
  PRO = 1,

  /**
   * @generated from enum value: ARGUMENT_STANCE_CON = 2;
   */
  CON = 2,
}

/**
 * @generated from enum arg_services.ranking.v1beta.ArgumentStance
 */
export declare type ArgumentStanceJson = "ARGUMENT_STANCE_UNSPECIFIED" | "ARGUMENT_STANCE_PRO" | "ARGUMENT_STANCE_CON";

/**
 * Describes the enum arg_services.ranking.v1beta.ArgumentStance.
 */
export declare const ArgumentStanceSchema: GenEnum<ArgumentStance, ArgumentStanceJson>;

/**
 * @generated from service arg_services.ranking.v1beta.RankingService
 */
export declare const RankingService: GenService<{
  /**
   * @generated from rpc arg_services.ranking.v1beta.RankingService.QualityRanking
   */
  qualityRanking: {
    methodKind: "unary";
    input: typeof QualityRankingRequestSchema;
    output: typeof QualityRankingResponseSchema;
  },
  /**
   * @generated from rpc arg_services.ranking.v1beta.RankingService.StatisticalRanking
   */
  statisticalRanking: {
    methodKind: "unary";
    input: typeof StatisticalRankingRequestSchema;
    output: typeof StatisticalRankingResponseSchema;
  },
}>;

