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

import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
import type { LocalizedPose } from "../../geometry/v1/pose_pb.ts";
import { file_geometry_v1_pose } from "../../geometry/v1/pose_pb.ts";
import type { ProcessType } from "./process_pb.ts";
import { file_plm_v1_process } from "./process_pb.ts";
import type { StoredSequenceMessage } from "./sequence_authoring_pb.ts";
import { file_plm_v1_sequence_authoring } from "./sequence_authoring_pb.ts";
import type { TaskMessage } from "./task_pb.ts";
import { file_plm_v1_task } from "./task_pb.ts";
import type { Message } from "@bufbuild/protobuf";

/**
 * Describes the file plm/v1/process_authoring.proto.
 */
export const file_plm_v1_process_authoring: GenFile = /*@__PURE__*/
  fileDesc("Ch5wbG0vdjEvcHJvY2Vzc19hdXRob3JpbmcucHJvdG8SBnBsbS52MSKDAgoUU3RvcmVkUHJvY2Vzc01lc3NhZ2USCgoCaWQYAiABKAkSDAoEbmFtZRgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCRIhCgR0eXBlGAUgASgOMhMucGxtLnYxLlByb2Nlc3NUeXBlEikKBWZyYW1lGAYgASgLMhouZ2VvbWV0cnkudjEuTG9jYWxpemVkUG9zZRIYChByb290X3NlcXVlbmNlX2lkGAcgASgJEjAKCXNlcXVlbmNlcxgIIAMoCzIdLnBsbS52MS5TdG9yZWRTZXF1ZW5jZU1lc3NhZ2USIgoFdGFza3MYCSADKAsyEy5wbG0udjEuVGFza01lc3NhZ2UiSQoWU3RvcmVkUHJvY2Vzc2VzTWVzc2FnZRIvCglwcm9jZXNzZXMYASADKAsyHC5wbG0udjEuU3RvcmVkUHJvY2Vzc01lc3NhZ2UiWQoRTmV3UHJvY2Vzc01lc3NhZ2USDAoEbmFtZRgDIAEoCRITCgtkZXNjcmlwdGlvbhgEIAEoCRIhCgR0eXBlGAUgASgOMhMucGxtLnYxLlByb2Nlc3NUeXBlIq0BChRVcGRhdGVQcm9jZXNzTWVzc2FnZRIKCgJpZBgCIAEoCRIMCgRuYW1lGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEiEKBHR5cGUYBSABKA4yEy5wbG0udjEuUHJvY2Vzc1R5cGUSKQoFZnJhbWUYBiABKAsyGi5nZW9tZXRyeS52MS5Mb2NhbGl6ZWRQb3NlEhgKEHJvb3Rfc2VxdWVuY2VfaWQYByABKAkiKgoURGVsZXRlUHJvY2Vzc01lc3NhZ2USEgoKcHJvY2Vzc19pZBgBIAEoCUKYAQoKY29tLnBsbS52MUIVUHJvY2Vzc0F1dGhvcmluZ1Byb3RvUAFaMWdpdGh1Yi5jb20vY29ib3Rhci9wcm90b2NvbC9tZXNzYWdlcy9wbG0vdjE7cGxtdjGiAgNQWFiqAg9NZXNzYWdlcy5QbG0uVjHKAgZQbG1cVjHiAhJQbG1cVjFcR1BCTWV0YWRhdGHqAgdQbG06OlYxYgZwcm90bzM", [file_geometry_v1_pose, file_plm_v1_process, file_plm_v1_sequence_authoring, file_plm_v1_task]);

/**
 * TODO: rename to recipe?
 *
 * @generated from message plm.v1.StoredProcessMessage
 */
export type StoredProcessMessage = Message<"plm.v1.StoredProcessMessage"> & {
  /**
   * @generated from field: string id = 2;
   */
  id: string;

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

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

  /**
   * @generated from field: plm.v1.ProcessType type = 5;
   */
  type: ProcessType;

  /**
   * @generated from field: geometry.v1.LocalizedPose frame = 6;
   */
  frame?: LocalizedPose;

  /**
   * @generated from field: string root_sequence_id = 7;
   */
  rootSequenceId: string;

  /**
   * @generated from field: repeated plm.v1.StoredSequenceMessage sequences = 8;
   */
  sequences: StoredSequenceMessage[];

  /**
   * TODO: make 'interchanceable', such that multiple variants can be selected
   *
   * @generated from field: repeated plm.v1.TaskMessage tasks = 9;
   */
  tasks: TaskMessage[];
};

/**
 * Describes the message plm.v1.StoredProcessMessage.
 * Use `create(StoredProcessMessageSchema)` to create a new message.
 */
export const StoredProcessMessageSchema: GenMessage<StoredProcessMessage> = /*@__PURE__*/
  messageDesc(file_plm_v1_process_authoring, 0);

/**
 * @generated from message plm.v1.StoredProcessesMessage
 */
export type StoredProcessesMessage = Message<"plm.v1.StoredProcessesMessage"> & {
  /**
   * @generated from field: repeated plm.v1.StoredProcessMessage processes = 1;
   */
  processes: StoredProcessMessage[];
};

/**
 * Describes the message plm.v1.StoredProcessesMessage.
 * Use `create(StoredProcessesMessageSchema)` to create a new message.
 */
export const StoredProcessesMessageSchema: GenMessage<StoredProcessesMessage> = /*@__PURE__*/
  messageDesc(file_plm_v1_process_authoring, 1);

/**
 * @generated from message plm.v1.NewProcessMessage
 */
export type NewProcessMessage = Message<"plm.v1.NewProcessMessage"> & {
  /**
   * @generated from field: string name = 3;
   */
  name: string;

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

  /**
   * @generated from field: plm.v1.ProcessType type = 5;
   */
  type: ProcessType;
};

/**
 * Describes the message plm.v1.NewProcessMessage.
 * Use `create(NewProcessMessageSchema)` to create a new message.
 */
export const NewProcessMessageSchema: GenMessage<NewProcessMessage> = /*@__PURE__*/
  messageDesc(file_plm_v1_process_authoring, 2);

/**
 * @generated from message plm.v1.UpdateProcessMessage
 */
export type UpdateProcessMessage = Message<"plm.v1.UpdateProcessMessage"> & {
  /**
   * @generated from field: string id = 2;
   */
  id: string;

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

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

  /**
   * @generated from field: plm.v1.ProcessType type = 5;
   */
  type: ProcessType;

  /**
   * @generated from field: geometry.v1.LocalizedPose frame = 6;
   */
  frame?: LocalizedPose;

  /**
   * @generated from field: string root_sequence_id = 7;
   */
  rootSequenceId: string;
};

/**
 * Describes the message plm.v1.UpdateProcessMessage.
 * Use `create(UpdateProcessMessageSchema)` to create a new message.
 */
export const UpdateProcessMessageSchema: GenMessage<UpdateProcessMessage> = /*@__PURE__*/
  messageDesc(file_plm_v1_process_authoring, 3);

/**
 * @generated from message plm.v1.DeleteProcessMessage
 */
export type DeleteProcessMessage = Message<"plm.v1.DeleteProcessMessage"> & {
  /**
   * @generated from field: string process_id = 1;
   */
  processId: string;
};

/**
 * Describes the message plm.v1.DeleteProcessMessage.
 * Use `create(DeleteProcessMessageSchema)` to create a new message.
 */
export const DeleteProcessMessageSchema: GenMessage<DeleteProcessMessage> = /*@__PURE__*/
  messageDesc(file_plm_v1_process_authoring, 4);

