// @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/graph_construction.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 { Segment, SegmentJson } from "./adu_pb.js";
import type { Entailment, EntailmentJson } from "./entailment_pb.js";
import type { StructJson } from "@bufbuild/protobuf/wkt";
import type { Graph, GraphJson } from "../../graph/v1/graph_pb.js";

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

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

  /**
   * @generated from field: map<string, arg_services.mining.v1beta.Segment> adus = 2;
   */
  adus: { [key: string]: Segment };

  /**
   * @generated from field: string major_claim_id = 3;
   */
  majorClaimId: string;

  /**
   * @generated from field: repeated arg_services.mining.v1beta.Entailment entailments = 4;
   */
  entailments: Entailment[];

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

/**
 * @generated from message arg_services.mining.v1beta.GraphConstructionRequest
 */
export declare type GraphConstructionRequestJson = {
  /**
   * @generated from field: string language = 1;
   */
  language?: string;

  /**
   * @generated from field: map<string, arg_services.mining.v1beta.Segment> adus = 2;
   */
  adus?: { [key: string]: SegmentJson };

  /**
   * @generated from field: string major_claim_id = 3;
   */
  majorClaimId?: string;

  /**
   * @generated from field: repeated arg_services.mining.v1beta.Entailment entailments = 4;
   */
  entailments?: EntailmentJson[];

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

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

/**
 * @generated from message arg_services.mining.v1beta.GraphConstructionResponse
 */
export declare type GraphConstructionResponse = Message<"arg_services.mining.v1beta.GraphConstructionResponse"> & {
  /**
   * @generated from field: arg_services.graph.v1.Graph graph = 1;
   */
  graph?: Graph;

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

/**
 * @generated from message arg_services.mining.v1beta.GraphConstructionResponse
 */
export declare type GraphConstructionResponseJson = {
  /**
   * @generated from field: arg_services.graph.v1.Graph graph = 1;
   */
  graph?: GraphJson;

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

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

/**
 * @generated from service arg_services.mining.v1beta.GraphConstructionService
 */
export declare const GraphConstructionService: GenService<{
  /**
   * @generated from rpc arg_services.mining.v1beta.GraphConstructionService.GraphConstruction
   */
  graphConstruction: {
    methodKind: "unary";
    input: typeof GraphConstructionRequestSchema;
    output: typeof GraphConstructionResponseSchema;
  },
}>;

