// @generated by protoc-gen-es v2.10.2 with parameter "target=ts,import_extension=ts"
// @generated from file ar/v1/environment.proto (package ar.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.ts";
import { file_ar_v1_property } from "./property_pb.ts";
import type { LocalizedPose } from "../../geometry/v1/pose_pb.ts";
import { file_geometry_v1_pose } from "../../geometry/v1/pose_pb.ts";
import type { Message } from "@bufbuild/protobuf";

/**
 * Describes the file ar/v1/environment.proto.
 */
export const file_ar_v1_environment: GenFile = /*@__PURE__*/
  fileDesc("Chdhci92MS9lbnZpcm9ubWVudC5wcm90bxIFYXIudjEiSgoOTWFya2VyTG9jYXRpb24SCgoCaWQYASABKAkSLAoIbG9jYXRpb24YAiABKAsyGi5nZW9tZXRyeS52MS5Mb2NhbGl6ZWRQb3NlIkkKDVJvYm90TG9jYXRpb24SCgoCaWQYASABKAkSLAoIbG9jYXRpb24YAiABKAsyGi5nZW9tZXRyeS52MS5Mb2NhbGl6ZWRQb3NlIkkKDUFzc2V0TG9jYXRpb24SCgoCaWQYASABKAkSLAoIbG9jYXRpb24YAiABKAsyGi5nZW9tZXRyeS52MS5Mb2NhbGl6ZWRQb3NlIkgKDFBhcnRMb2NhdGlvbhIKCgJpZBgBIAEoCRIsCghsb2NhdGlvbhgCIAEoCzIaLmdlb21ldHJ5LnYxLkxvY2FsaXplZFBvc2UiSAoMVG9vbExvY2F0aW9uEgoKAmlkGAEgASgJEiwKCGxvY2F0aW9uGAIgASgLMhouZ2VvbWV0cnkudjEuTG9jYWxpemVkUG9zZSLYAgoSRW52aXJvbm1lbnRNZXNzYWdlEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSDAoEaWNvbhgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCRIkCgR0eXBlGAUgASgOMhYuYXIudjEuRW52aXJvbm1lbnRUeXBlEiYKB21hcmtlcnMYBiADKAsyFS5hci52MS5NYXJrZXJMb2NhdGlvbhIkCgZyb2JvdHMYByADKAsyFC5hci52MS5Sb2JvdExvY2F0aW9uEiQKBmFzc2V0cxgIIAMoCzIULmFyLnYxLkFzc2V0TG9jYXRpb24SIgoFcGFydHMYCSADKAsyEy5hci52MS5QYXJ0TG9jYXRpb24SIgoFdG9vbHMYCiADKAsyEy5hci52MS5Ub29sTG9jYXRpb24SIwoKcHJvcGVydGllcxgLIAMoCzIPLmFyLnYxLlByb3BlcnR5IkYKE0Vudmlyb25tZW50c01lc3NhZ2USLwoMZW52aXJvbm1lbnRzGAEgAygLMhkuYXIudjEuRW52aXJvbm1lbnRNZXNzYWdlKqwCCg9FbnZpcm9ubWVudFR5cGUSIAocRU5WSVJPTk1FTlRfVFlQRV9VTlNQRUNJRklFRBAAEhwKGEVOVklST05NRU5UX1RZUEVfU1RPUkFHRRABEiMKH0VOVklST05NRU5UX1RZUEVfTUFOVUFMX1NUQVRJT04QAhImCiJFTlZJUk9OTUVOVF9UWVBFX0FVVE9NQVRJQ19TVEFUSU9OEAMSIwofRU5WSVJPTk1FTlRfVFlQRV9IWUJSSURfU1RBVElPThAEEiAKHEVOVklST05NRU5UX1RZUEVfTUFOVUFMX0xJTkUQBRIjCh9FTlZJUk9OTUVOVF9UWVBFX0FVVE9NQVRJQ19MSU5FEAYSIAocRU5WSVJPTk1FTlRfVFlQRV9IWUJSSURfTElORRAHQowBCgljb20uYXIudjFCEEVudmlyb25tZW50UHJvdG9QAVovZ2l0aHViLmNvbS9jb2JvdGFyL3Byb3RvY29sL21lc3NhZ2VzL2FyL3YxO2FydjGiAgNBWFiqAg5NZXNzYWdlcy5BUi5WMcoCBUFyXFYx4gIRQXJcVjFcR1BCTWV0YWRhdGHqAgZBcjo6VjFiBnByb3RvMw", [file_ar_v1_property, file_geometry_v1_pose]);

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

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

/**
 * Describes the message ar.v1.MarkerLocation.
 * Use `create(MarkerLocationSchema)` to create a new message.
 */
export const MarkerLocationSchema: GenMessage<MarkerLocation> = /*@__PURE__*/
  messageDesc(file_ar_v1_environment, 0);

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

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

/**
 * Describes the message ar.v1.RobotLocation.
 * Use `create(RobotLocationSchema)` to create a new message.
 */
export const RobotLocationSchema: GenMessage<RobotLocation> = /*@__PURE__*/
  messageDesc(file_ar_v1_environment, 1);

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

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

/**
 * Describes the message ar.v1.AssetLocation.
 * Use `create(AssetLocationSchema)` to create a new message.
 */
export const AssetLocationSchema: GenMessage<AssetLocation> = /*@__PURE__*/
  messageDesc(file_ar_v1_environment, 2);

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

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

/**
 * Describes the message ar.v1.PartLocation.
 * Use `create(PartLocationSchema)` to create a new message.
 */
export const PartLocationSchema: GenMessage<PartLocation> = /*@__PURE__*/
  messageDesc(file_ar_v1_environment, 3);

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

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

/**
 * Describes the message ar.v1.ToolLocation.
 * Use `create(ToolLocationSchema)` to create a new message.
 */
export const ToolLocationSchema: GenMessage<ToolLocation> = /*@__PURE__*/
  messageDesc(file_ar_v1_environment, 4);

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

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

  /**
   * @generated from field: string icon = 3;
   */
  icon: string;

  /**
   * @generated from field: string description = 4;
   */
  description: string;

  /**
   * @generated from field: ar.v1.EnvironmentType type = 5;
   */
  type: EnvironmentType;

  /**
   * Markers associated with this environment.
   *
   * @generated from field: repeated ar.v1.MarkerLocation markers = 6;
   */
  markers: MarkerLocation[];

  /**
   * @generated from field: repeated ar.v1.RobotLocation robots = 7;
   */
  robots: RobotLocation[];

  /**
   * @generated from field: repeated ar.v1.AssetLocation assets = 8;
   */
  assets: AssetLocation[];

  /**
   * @generated from field: repeated ar.v1.PartLocation parts = 9;
   */
  parts: PartLocation[];

  /**
   * @generated from field: repeated ar.v1.ToolLocation tools = 10;
   */
  tools: ToolLocation[];

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

/**
 * Describes the message ar.v1.EnvironmentMessage.
 * Use `create(EnvironmentMessageSchema)` to create a new message.
 */
export const EnvironmentMessageSchema: GenMessage<EnvironmentMessage> = /*@__PURE__*/
  messageDesc(file_ar_v1_environment, 5);

/**
 * @generated from message ar.v1.EnvironmentsMessage
 */
export type EnvironmentsMessage = Message<"ar.v1.EnvironmentsMessage"> & {
  /**
   * @generated from field: repeated ar.v1.EnvironmentMessage environments = 1;
   */
  environments: EnvironmentMessage[];
};

/**
 * Describes the message ar.v1.EnvironmentsMessage.
 * Use `create(EnvironmentsMessageSchema)` to create a new message.
 */
export const EnvironmentsMessageSchema: GenMessage<EnvironmentsMessage> = /*@__PURE__*/
  messageDesc(file_ar_v1_environment, 6);

/**
 * @generated from enum ar.v1.EnvironmentType
 */
export enum EnvironmentType {
  /**
   * @generated from enum value: ENVIRONMENT_TYPE_UNSPECIFIED = 0;
   */
  UNSPECIFIED = 0,

  /**
   * @generated from enum value: ENVIRONMENT_TYPE_STORAGE = 1;
   */
  STORAGE = 1,

  /**
   * @generated from enum value: ENVIRONMENT_TYPE_MANUAL_STATION = 2;
   */
  MANUAL_STATION = 2,

  /**
   * @generated from enum value: ENVIRONMENT_TYPE_AUTOMATIC_STATION = 3;
   */
  AUTOMATIC_STATION = 3,

  /**
   * @generated from enum value: ENVIRONMENT_TYPE_HYBRID_STATION = 4;
   */
  HYBRID_STATION = 4,

  /**
   * @generated from enum value: ENVIRONMENT_TYPE_MANUAL_LINE = 5;
   */
  MANUAL_LINE = 5,

  /**
   * @generated from enum value: ENVIRONMENT_TYPE_AUTOMATIC_LINE = 6;
   */
  AUTOMATIC_LINE = 6,

  /**
   * @generated from enum value: ENVIRONMENT_TYPE_HYBRID_LINE = 7;
   */
  HYBRID_LINE = 7,
}

/**
 * Describes the enum ar.v1.EnvironmentType.
 */
export const EnvironmentTypeSchema: GenEnum<EnvironmentType> = /*@__PURE__*/
  enumDesc(file_ar_v1_environment, 0);

