// @generated by protoc-gen-es v2.6.3 with parameter "target=ts"
// @generated from file common/v1/agent.proto (package common.v1, syntax proto3)
/* eslint-disable */

import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
import type { Property } from "./property_pb";
import { file_common_v1_property } from "./property_pb";
import type { LocalizedPose } from "../../geometry/v1/pose_pb";
import { file_geometry_v1_pose } from "../../geometry/v1/pose_pb";
import type { Message } from "@bufbuild/protobuf";

/**
 * Describes the file common/v1/agent.proto.
 */
export const file_common_v1_agent: GenFile = /*@__PURE__*/
  fileDesc("ChVjb21tb24vdjEvYWdlbnQucHJvdG8SCWNvbW1vbi52MSKtAgoFQWdlbnQSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIiCgR0eXBlGAMgASgOMhQuY29tbW9uLnYxLkFnZW50VHlwZRIuCg1vcGVyYXRvcl90eXBlGAQgASgOMhcuY29tbW9uLnYxLk9wZXJhdG9yVHlwZRIoCgpyb2JvdF90eXBlGAUgASgOMhQuY29tbW9uLnYxLlJvYm90VHlwZRI1ChFlbmRfZWZmZWN0b3JfdHlwZRgGIAEoDjIaLmNvbW1vbi52MS5FbmRFZmZlY3RvclR5cGUSLAoIbG9jYXRpb24YByABKAsyGi5nZW9tZXRyeS52MS5Mb2NhbGl6ZWRQb3NlEicKCnByb3BlcnRpZXMYCCADKAsyEy5jb21tb24udjEuUHJvcGVydHkqVgoJQWdlbnRUeXBlEhoKFkFHRU5UX1RZUEVfVU5TUEVDSUZJRUQQABIXChNBR0VOVF9UWVBFX09QRVJBVE9SEAESFAoQQUdFTlRfVFlQRV9ST0JPVBACKoEBCgxPcGVyYXRvclR5cGUSHQoZT1BFUkFUT1JfVFlQRV9VTlNQRUNJRklFRBAAEhgKFE9QRVJBVE9SX1RZUEVfTk9WSUNFEAESHgoaT1BFUkFUT1JfVFlQRV9JTlRFUk1FRElBVEUQAhIYChRPUEVSQVRPUl9UWVBFX0VYUEVSVBADKpcBChJPcGVyYXRvclBlcm1pc3Npb24SIwofT1BFUkFUT1JfUEVSTUlTU0lPTl9VTlNQRUNJRklFRBAAEhwKGE9QRVJBVE9SX1BFUk1JU1NJT05fTk9ORRABEiAKHE9QRVJBVE9SX1BFUk1JU1NJT05fQ09TTUVUSUMQAhIcChhPUEVSQVRPUl9QRVJNSVNTSU9OX0ZVTEwQAyqBAQoJUm9ib3RUeXBlEhoKFlJPQk9UX1RZUEVfVU5TUEVDSUZJRUQQABITCg9ST0JPVF9UWVBFX1VSM0UQChITCg9ST0JPVF9UWVBFX1VSNUUQCxIUChBST0JPVF9UWVBFX1VSMTBFEAwSGAoUUk9CT1RfVFlQRV9LVUtBX0lJV0EQFCqbAQoPRW5kRWZmZWN0b3JUeXBlEiEKHUVORF9FRkZFQ1RPUl9UWVBFX1VOU1BFQ0lGSUVEEAASGwoXRU5EX0VGRkVDVE9SX1RZUEVfRU1QVFkQARIkCiBFTkRfRUZGRUNUT1JfVFlQRV9ST0JPVElRX0hBTkRfRRAKEiIKHkVORF9FRkZFQ1RPUl9UWVBFX0NVU1RPTV9NT1VOVBAUQqIBCg1jb20uY29tbW9uLnYxQgpBZ2VudFByb3RvUAFaN2dpdGh1Yi5jb20vY29ib3Rhci9wcm90b2NvbC9tZXNzYWdlcy9jb21tb24vdjE7Y29tbW9udjGiAgNDWFiqAhJNZXNzYWdlcy5Db21tb24uVjHKAglDb21tb25cVjHiAhVDb21tb25cVjFcR1BCTWV0YWRhdGHqAgpDb21tb246OlYxYgZwcm90bzM", [file_common_v1_property, file_geometry_v1_pose]);

/**
 * @generated from message common.v1.Agent
 */
export type Agent = Message<"common.v1.Agent"> & {
  /**
   * @generated from field: string id = 1;
   */
  id: string;

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

  /**
   * @generated from field: common.v1.AgentType type = 3;
   */
  type: AgentType;

  /**
   * @generated from field: common.v1.OperatorType operator_type = 4;
   */
  operatorType: OperatorType;

  /**
   * @generated from field: common.v1.RobotType robot_type = 5;
   */
  robotType: RobotType;

  /**
   * @generated from field: common.v1.EndEffectorType end_effector_type = 6;
   */
  endEffectorType: EndEffectorType;

  /**
   * @generated from field: geometry.v1.LocalizedPose location = 7;
   */
  location?: LocalizedPose;

  /**
   * @generated from field: repeated common.v1.Property properties = 8;
   */
  properties: Property[];
};

/**
 * Describes the message common.v1.Agent.
 * Use `create(AgentSchema)` to create a new message.
 */
export const AgentSchema: GenMessage<Agent> = /*@__PURE__*/
  messageDesc(file_common_v1_agent, 0);

/**
 * @generated from enum common.v1.AgentType
 */
export enum AgentType {
  /**
   * @generated from enum value: AGENT_TYPE_UNSPECIFIED = 0;
   */
  UNSPECIFIED = 0,

  /**
   * @generated from enum value: AGENT_TYPE_OPERATOR = 1;
   */
  OPERATOR = 1,

  /**
   * @generated from enum value: AGENT_TYPE_ROBOT = 2;
   */
  ROBOT = 2,
}

/**
 * Describes the enum common.v1.AgentType.
 */
export const AgentTypeSchema: GenEnum<AgentType> = /*@__PURE__*/
  enumDesc(file_common_v1_agent, 0);

/**
 * @generated from enum common.v1.OperatorType
 */
export enum OperatorType {
  /**
   * @generated from enum value: OPERATOR_TYPE_UNSPECIFIED = 0;
   */
  UNSPECIFIED = 0,

  /**
   * @generated from enum value: OPERATOR_TYPE_NOVICE = 1;
   */
  NOVICE = 1,

  /**
   * @generated from enum value: OPERATOR_TYPE_INTERMEDIATE = 2;
   */
  INTERMEDIATE = 2,

  /**
   * @generated from enum value: OPERATOR_TYPE_EXPERT = 3;
   */
  EXPERT = 3,
}

/**
 * Describes the enum common.v1.OperatorType.
 */
export const OperatorTypeSchema: GenEnum<OperatorType> = /*@__PURE__*/
  enumDesc(file_common_v1_agent, 1);

/**
 * @generated from enum common.v1.OperatorPermission
 */
export enum OperatorPermission {
  /**
   * @generated from enum value: OPERATOR_PERMISSION_UNSPECIFIED = 0;
   */
  UNSPECIFIED = 0,

  /**
   * @generated from enum value: OPERATOR_PERMISSION_NONE = 1;
   */
  NONE = 1,

  /**
   * @generated from enum value: OPERATOR_PERMISSION_COSMETIC = 2;
   */
  COSMETIC = 2,

  /**
   * @generated from enum value: OPERATOR_PERMISSION_FULL = 3;
   */
  FULL = 3,
}

/**
 * Describes the enum common.v1.OperatorPermission.
 */
export const OperatorPermissionSchema: GenEnum<OperatorPermission> = /*@__PURE__*/
  enumDesc(file_common_v1_agent, 2);

/**
 * @generated from enum common.v1.RobotType
 */
export enum RobotType {
  /**
   * @generated from enum value: ROBOT_TYPE_UNSPECIFIED = 0;
   */
  UNSPECIFIED = 0,

  /**
   * @generated from enum value: ROBOT_TYPE_UR3E = 10;
   */
  UR3E = 10,

  /**
   * @generated from enum value: ROBOT_TYPE_UR5E = 11;
   */
  UR5E = 11,

  /**
   * @generated from enum value: ROBOT_TYPE_UR10E = 12;
   */
  UR10E = 12,

  /**
   * @generated from enum value: ROBOT_TYPE_KUKA_IIWA = 20;
   */
  KUKA_IIWA = 20,
}

/**
 * Describes the enum common.v1.RobotType.
 */
export const RobotTypeSchema: GenEnum<RobotType> = /*@__PURE__*/
  enumDesc(file_common_v1_agent, 3);

/**
 * @generated from enum common.v1.EndEffectorType
 */
export enum EndEffectorType {
  /**
   * @generated from enum value: END_EFFECTOR_TYPE_UNSPECIFIED = 0;
   */
  UNSPECIFIED = 0,

  /**
   * @generated from enum value: END_EFFECTOR_TYPE_EMPTY = 1;
   */
  EMPTY = 1,

  /**
   * @generated from enum value: END_EFFECTOR_TYPE_ROBOTIQ_HAND_E = 10;
   */
  ROBOTIQ_HAND_E = 10,

  /**
   * @generated from enum value: END_EFFECTOR_TYPE_CUSTOM_MOUNT = 20;
   */
  CUSTOM_MOUNT = 20,
}

/**
 * Describes the enum common.v1.EndEffectorType.
 */
export const EndEffectorTypeSchema: GenEnum<EndEffectorType> = /*@__PURE__*/
  enumDesc(file_common_v1_agent, 4);

