// Copyright 2024 LiveKit, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//   http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// @generated by protoc-gen-es v1.10.1 with parameter "target=dts+js"
// @generated from file livekit_agent_simulation.proto (package livekit, syntax proto3)
/* eslint-disable */
// @ts-nocheck

import { proto3, Timestamp } from "@bufbuild/protobuf";
import { ChatContext, ChatRole } from "./agent/livekit_agent_session_pb.js";
import { PresignedPostRequest } from "./livekit_cloud_agent_pb.js";
import { TokenPagination } from "./livekit_models_pb.js";

/**
 * How the simulated user interacts with the agent under test.
 *
 * @generated from enum livekit.SimulationMode
 */
export const SimulationMode = /*@__PURE__*/ proto3.makeEnum(
  "livekit.SimulationMode",
  [
    {no: 0, name: "SIMULATION_MODE_UNSPECIFIED", localName: "UNSPECIFIED"},
    {no: 1, name: "SIMULATION_MODE_TEXT", localName: "TEXT"},
    {no: 2, name: "SIMULATION_MODE_AUDIO", localName: "AUDIO"},
  ],
);

/**
 * @generated from message livekit.SimulationRunSummary
 */
export const SimulationRunSummary = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRunSummary",
  () => [
    { no: 1, name: "passed", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
    { no: 2, name: "failed", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
    { no: 3, name: "going_well", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 4, name: "to_improve", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 5, name: "issues", kind: "message", T: SimulationRunSummary_Issue, repeated: true },
    { no: 6, name: "chat_history", kind: "map", K: 9 /* ScalarType.STRING */, V: {kind: "message", T: ChatContext} },
  ],
);

/**
 * @generated from message livekit.SimulationRunSummary.Issue
 */
export const SimulationRunSummary_Issue = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRunSummary.Issue",
  () => [
    { no: 1, name: "description", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "suggestion", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 3, name: "label", kind: "scalar", T: 9 /* ScalarType.STRING */ },
  ],
  {localName: "SimulationRunSummary_Issue"},
);

/**
 * @generated from message livekit.SimulationRun
 */
export const SimulationRun = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun",
  () => [
    { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "project_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 3, name: "status", kind: "enum", T: proto3.getEnumType(SimulationRun_Status) },
    { no: 4, name: "agent_description", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 5, name: "error", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 6, name: "created_at", kind: "message", T: Timestamp },
    { no: 7, name: "jobs", kind: "message", T: SimulationRun_Job, repeated: true },
    { no: 9, name: "agent_name", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 10, name: "scenario_group", kind: "message", T: ScenarioGroup },
    { no: 11, name: "ended_at", kind: "message", T: Timestamp },
    { no: 12, name: "job_count", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
    { no: 13, name: "passed_count", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
    { no: 14, name: "failed_count", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
    { no: 15, name: "num_simulations", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
    { no: 16, name: "usage", kind: "message", T: SimulationRun_Usage },
    { no: 17, name: "concurrency", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
    { no: 18, name: "mode", kind: "enum", T: proto3.getEnumType(SimulationMode) },
    { no: 19, name: "metrics", kind: "message", T: SimulationRun_RunMetrics },
    { no: 20, name: "summary_zstd", kind: "scalar", T: 12 /* ScalarType.BYTES */ },
  ],
);

/**
 * @generated from enum livekit.SimulationRun.Status
 */
export const SimulationRun_Status = /*@__PURE__*/ proto3.makeEnum(
  "livekit.SimulationRun.Status",
  [
    {no: 0, name: "STATUS_PENDING_UPLOAD", localName: "PENDING_UPLOAD"},
    {no: 1, name: "STATUS_GENERATING", localName: "GENERATING"},
    {no: 2, name: "STATUS_RUNNING", localName: "RUNNING"},
    {no: 3, name: "STATUS_SUMMARIZING", localName: "SUMMARIZING"},
    {no: 4, name: "STATUS_COMPLETED", localName: "COMPLETED"},
    {no: 5, name: "STATUS_FAILED", localName: "FAILED"},
    {no: 6, name: "STATUS_CANCELLED", localName: "CANCELLED"},
  ],
);

/**
 * @generated from message livekit.SimulationRun.Job
 */
export const SimulationRun_Job = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Job",
  () => [
    { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "status", kind: "enum", T: proto3.getEnumType(SimulationRun_Job_Status) },
    { no: 3, name: "instructions", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 4, name: "error", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 5, name: "agent_expectations", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 6, name: "label", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 7, name: "tags", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true },
    { no: 8, name: "room_name", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 10, name: "started_at", kind: "message", T: Timestamp },
    { no: 11, name: "ended_at", kind: "message", T: Timestamp },
    { no: 12, name: "room_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 13, name: "usage", kind: "message", T: SimulationRun_Job_Usage },
    { no: 14, name: "metrics", kind: "message", T: SimulationRun_JobMetrics },
  ],
  {localName: "SimulationRun_Job"},
);

/**
 * @generated from enum livekit.SimulationRun.Job.Status
 */
export const SimulationRun_Job_Status = /*@__PURE__*/ proto3.makeEnum(
  "livekit.SimulationRun.Job.Status",
  [
    {no: 0, name: "STATUS_PENDING", localName: "PENDING"},
    {no: 1, name: "STATUS_RUNNING", localName: "RUNNING"},
    {no: 2, name: "STATUS_COMPLETED", localName: "COMPLETED"},
    {no: 3, name: "STATUS_FAILED", localName: "FAILED"},
    {no: 4, name: "STATUS_CANCELLED", localName: "CANCELLED"},
  ],
);

/**
 * @generated from message livekit.SimulationRun.Job.Usage
 */
export const SimulationRun_Job_Usage = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Job.Usage",
  () => [
    { no: 1, name: "text_turns_count", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
    { no: 2, name: "audio_turns_count", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
  ],
  {localName: "SimulationRun_Job_Usage"},
);

/**
 * @generated from message livekit.SimulationRun.JobMetrics
 */
export const SimulationRun_JobMetrics = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.JobMetrics",
  () => [
    { no: 1, name: "accuracy_score", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 2, name: "experience_score", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 3, name: "task_completion", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 4, name: "stt", kind: "message", T: SimulationRun_JobMetrics_STT },
    { no: 5, name: "llm", kind: "message", T: SimulationRun_JobMetrics_LLM },
    { no: 6, name: "tts", kind: "message", T: SimulationRun_JobMetrics_TTS },
    { no: 7, name: "conversation", kind: "message", T: SimulationRun_JobMetrics_Conversation },
    { no: 8, name: "simulator", kind: "message", T: SimulationRun_JobMetrics_Simulator },
    { no: 9, name: "turns", kind: "message", T: SimulationRun_JobMetrics_Turn, repeated: true },
    { no: 10, name: "judge_model", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 11, name: "audio_judge_model", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 12, name: "has_remote_session", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
    { no: 13, name: "t0", kind: "message", T: Timestamp },
  ],
  {localName: "SimulationRun_JobMetrics"},
);

/**
 * The agent's perception of the caller. Audio only.
 *
 * @generated from message livekit.SimulationRun.JobMetrics.STT
 */
export const SimulationRun_JobMetrics_STT = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.JobMetrics.STT",
  () => [
    { no: 1, name: "wer", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 2, name: "words", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 3, name: "word_errors", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 4, name: "cer", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 9, name: "chars", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 10, name: "char_errors", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 5, name: "keyterm_recall", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 6, name: "keyterms_uttered", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 7, name: "keyterms_recognized", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 8, name: "transcription_latency_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
  ],
  {localName: "SimulationRun_JobMetrics_STT"},
);

/**
 * @generated from message livekit.SimulationRun.JobMetrics.LLM
 */
export const SimulationRun_JobMetrics_LLM = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.JobMetrics.LLM",
  () => [
    { no: 1, name: "ttft_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 2, name: "ttfs_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 3, name: "tokens_per_second", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 4, name: "conciseness_score", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
  ],
  {localName: "SimulationRun_JobMetrics_LLM"},
);

/**
 * The agent's voice. audio only.
 *
 * @generated from message livekit.SimulationRun.JobMetrics.TTS
 */
export const SimulationRun_JobMetrics_TTS = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.JobMetrics.TTS",
  () => [
    { no: 1, name: "ttfa_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 2, name: "ttfb_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 3, name: "wer", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 7, name: "words", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 8, name: "word_errors", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 9, name: "cer", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 10, name: "chars", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 11, name: "char_errors", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 4, name: "speech_rate_wpm", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 12, name: "heard_words", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 13, name: "speech_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 5, name: "naturalness_score", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 6, name: "enunciation_score", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
  ],
  {localName: "SimulationRun_JobMetrics_TTS"},
);

/**
 * Audio only.
 *
 * @generated from message livekit.SimulationRun.JobMetrics.Conversation
 */
export const SimulationRun_JobMetrics_Conversation = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.JobMetrics.Conversation",
  () => [
    { no: 1, name: "turn_taking_score", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 2, name: "response_latency_p50_ms", kind: "scalar", T: 5 /* ScalarType.INT32 */, opt: true },
    { no: 3, name: "response_latency_p95_ms", kind: "scalar", T: 5 /* ScalarType.INT32 */, opt: true },
    { no: 4, name: "response_latency_p99_ms", kind: "scalar", T: 5 /* ScalarType.INT32 */, opt: true },
    { no: 16, name: "response_latency_ms", kind: "scalar", T: 5 /* ScalarType.INT32 */, opt: true },
    { no: 5, name: "agent_yield_latency_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 6, name: "eot_misprediction_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 7, name: "overlap_ratio", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 8, name: "overlap_speech_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 9, name: "total_speech_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 10, name: "silence_total_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 11, name: "awkward_silence_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 12, name: "unanswered_persona_turns", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 13, name: "false_interruption_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 14, name: "false_interruption_unrecovered_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 15, name: "agent_reported_e2e_latency_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
  ],
  {localName: "SimulationRun_JobMetrics_Conversation"},
);

/**
 * Was the call spoiled by the simulator, not the agent? Diagnostic only —
 * never folded into the scores; run aggregation excludes flagged calls
 * from the two headline scores.
 *
 * @generated from message livekit.SimulationRun.JobMetrics.Simulator
 */
export const SimulationRun_JobMetrics_Simulator = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.JobMetrics.Simulator",
  () => [
    { no: 1, name: "early_termination", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true },
    { no: 2, name: "late_termination", kind: "scalar", T: 8 /* ScalarType.BOOL */, opt: true },
  ],
  {localName: "SimulationRun_JobMetrics_Simulator"},
);

/**
 * Rows exist for text and audio;
 *
 * @generated from message livekit.SimulationRun.JobMetrics.Turn
 */
export const SimulationRun_JobMetrics_Turn = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.JobMetrics.Turn",
  () => [
    { no: 1, name: "index", kind: "scalar", T: 13 /* ScalarType.UINT32 */ },
    { no: 2, name: "role", kind: "enum", T: proto3.getEnumType(ChatRole) },
    { no: 3, name: "start_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 4, name: "end_ms", kind: "scalar", T: 13 /* ScalarType.UINT32 */, opt: true },
    { no: 5, name: "stt", kind: "message", T: SimulationRun_JobMetrics_STT },
    { no: 6, name: "llm", kind: "message", T: SimulationRun_JobMetrics_LLM },
    { no: 7, name: "tts", kind: "message", T: SimulationRun_JobMetrics_TTS },
    { no: 8, name: "conversation", kind: "message", T: SimulationRun_JobMetrics_Conversation },
  ],
  {localName: "SimulationRun_JobMetrics_Turn"},
);

/**
 * Aggregates over this run's jobs. Reuses the JobMetrics group shapes.
 *
 * @generated from message livekit.SimulationRun.RunMetrics
 */
export const SimulationRun_RunMetrics = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.RunMetrics",
  () => [
    { no: 1, name: "accuracy_score", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 2, name: "experience_score", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 3, name: "scenario_pass_rate", kind: "scalar", T: 2 /* ScalarType.FLOAT */, opt: true },
    { no: 4, name: "stt", kind: "message", T: SimulationRun_JobMetrics_STT },
    { no: 5, name: "llm", kind: "message", T: SimulationRun_JobMetrics_LLM },
    { no: 6, name: "tts", kind: "message", T: SimulationRun_JobMetrics_TTS },
    { no: 7, name: "conversation", kind: "message", T: SimulationRun_JobMetrics_Conversation },
    { no: 9, name: "jobs_total", kind: "scalar", T: 13 /* ScalarType.UINT32 */ },
    { no: 10, name: "jobs_measured", kind: "scalar", T: 13 /* ScalarType.UINT32 */ },
    { no: 11, name: "jobs_simulator_fault", kind: "scalar", T: 13 /* ScalarType.UINT32 */ },
  ],
  {localName: "SimulationRun_RunMetrics"},
);

/**
 * @generated from message livekit.SimulationRun.Create
 */
export const SimulationRun_Create = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Create",
  [],
  {localName: "SimulationRun_Create"},
);

/**
 * @generated from message livekit.SimulationRun.Create.Request
 */
export const SimulationRun_Create_Request = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Create.Request",
  () => [
    { no: 1, name: "project_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "agent_name", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 4, name: "num_simulations", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
    { no: 6, name: "region", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 7, name: "scenario_group", kind: "message", T: ScenarioGroup, opt: true },
    { no: 8, name: "concurrency", kind: "scalar", T: 5 /* ScalarType.INT32 */, opt: true },
    { no: 9, name: "mode", kind: "enum", T: proto3.getEnumType(SimulationMode) },
  ],
  {localName: "SimulationRun_Create_Request"},
);

/**
 * @generated from message livekit.SimulationRun.Create.Response
 */
export const SimulationRun_Create_Response = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Create.Response",
  () => [
    { no: 1, name: "simulation_run_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "presigned_post_request", kind: "message", T: PresignedPostRequest },
  ],
  {localName: "SimulationRun_Create_Response"},
);

/**
 * @generated from message livekit.SimulationRun.ConfirmSourceUpload
 */
export const SimulationRun_ConfirmSourceUpload = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.ConfirmSourceUpload",
  [],
  {localName: "SimulationRun_ConfirmSourceUpload"},
);

/**
 * @generated from message livekit.SimulationRun.ConfirmSourceUpload.Request
 */
export const SimulationRun_ConfirmSourceUpload_Request = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.ConfirmSourceUpload.Request",
  () => [
    { no: 1, name: "project_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "simulation_run_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 3, name: "code_entrypoint", kind: "scalar", T: 9 /* ScalarType.STRING */ },
  ],
  {localName: "SimulationRun_ConfirmSourceUpload_Request"},
);

/**
 * @generated from message livekit.SimulationRun.ConfirmSourceUpload.Response
 */
export const SimulationRun_ConfirmSourceUpload_Response = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.ConfirmSourceUpload.Response",
  [],
  {localName: "SimulationRun_ConfirmSourceUpload_Response"},
);

/**
 * @generated from message livekit.SimulationRun.Get
 */
export const SimulationRun_Get = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Get",
  [],
  {localName: "SimulationRun_Get"},
);

/**
 * @generated from message livekit.SimulationRun.Get.Request
 */
export const SimulationRun_Get_Request = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Get.Request",
  () => [
    { no: 1, name: "project_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "simulation_run_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
  ],
  {localName: "SimulationRun_Get_Request"},
);

/**
 * @generated from message livekit.SimulationRun.Get.Response
 */
export const SimulationRun_Get_Response = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Get.Response",
  () => [
    { no: 1, name: "run", kind: "message", T: SimulationRun },
  ],
  {localName: "SimulationRun_Get_Response"},
);

/**
 * @generated from message livekit.SimulationRun.List
 */
export const SimulationRun_List = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.List",
  [],
  {localName: "SimulationRun_List"},
);

/**
 * @generated from message livekit.SimulationRun.List.Request
 */
export const SimulationRun_List_Request = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.List.Request",
  () => [
    { no: 1, name: "project_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "status", kind: "enum", T: proto3.getEnumType(SimulationRun_Status), opt: true },
    { no: 3, name: "page_token", kind: "message", T: TokenPagination, opt: true },
  ],
  {localName: "SimulationRun_List_Request"},
);

/**
 * @generated from message livekit.SimulationRun.List.Response
 */
export const SimulationRun_List_Response = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.List.Response",
  () => [
    { no: 1, name: "runs", kind: "message", T: SimulationRun, repeated: true },
    { no: 2, name: "next_page_token", kind: "message", T: TokenPagination },
  ],
  {localName: "SimulationRun_List_Response"},
);

/**
 * @generated from message livekit.SimulationRun.Cancel
 */
export const SimulationRun_Cancel = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Cancel",
  [],
  {localName: "SimulationRun_Cancel"},
);

/**
 * @generated from message livekit.SimulationRun.Cancel.Request
 */
export const SimulationRun_Cancel_Request = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Cancel.Request",
  () => [
    { no: 1, name: "project_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "simulation_run_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
  ],
  {localName: "SimulationRun_Cancel_Request"},
);

/**
 * @generated from message livekit.SimulationRun.Cancel.Response
 */
export const SimulationRun_Cancel_Response = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Cancel.Response",
  [],
  {localName: "SimulationRun_Cancel_Response"},
);

/**
 * @generated from message livekit.SimulationRun.Usage
 */
export const SimulationRun_Usage = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationRun.Usage",
  () => [
    { no: 1, name: "text_turns_count", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
    { no: 2, name: "audio_turns_count", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
  ],
  {localName: "SimulationRun_Usage"},
);

/**
 * A single scenario, mirroring one entry in a scenarios.yaml file. Scenarios
 * are no longer stored server-side; the yaml file is the source of truth.
 *
 * @generated from message livekit.Scenario
 */
export const Scenario = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.Scenario",
  () => [
    { no: 1, name: "label", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "instructions", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 3, name: "agent_expectations", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 4, name: "tags", kind: "map", K: 9 /* ScalarType.STRING */, V: {kind: "scalar", T: 9 /* ScalarType.STRING */} },
    { no: 5, name: "userdata", kind: "scalar", T: 9 /* ScalarType.STRING */ },
  ],
);

/**
 * @generated from message livekit.Scenario.CreateFromSession
 */
export const Scenario_CreateFromSession = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.Scenario.CreateFromSession",
  [],
  {localName: "Scenario_CreateFromSession"},
);

/**
 * @generated from message livekit.Scenario.CreateFromSession.Request
 */
export const Scenario_CreateFromSession_Request = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.Scenario.CreateFromSession.Request",
  () => [
    { no: 1, name: "project_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "room_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 3, name: "region", kind: "scalar", T: 9 /* ScalarType.STRING */ },
  ],
  {localName: "Scenario_CreateFromSession_Request"},
);

/**
 * @generated from message livekit.Scenario.CreateFromSession.Response
 */
export const Scenario_CreateFromSession_Response = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.Scenario.CreateFromSession.Response",
  () => [
    { no: 1, name: "scenario", kind: "message", T: Scenario },
  ],
  {localName: "Scenario_CreateFromSession_Response"},
);

/**
 * A named group of scenarios, mirroring a whole scenarios.yaml file.
 *
 * @generated from message livekit.ScenarioGroup
 */
export const ScenarioGroup = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.ScenarioGroup",
  () => [
    { no: 1, name: "name", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "scenarios", kind: "message", T: Scenario, repeated: true },
  ],
);

/**
 * Carried (protojson-encoded) in the simulation room's metadata so the agent
 * under test can read the scenario + run identity synchronously at connect.
 *
 * @generated from message livekit.SimulationDispatch
 */
export const SimulationDispatch = /*@__PURE__*/ proto3.makeMessageType(
  "livekit.SimulationDispatch",
  () => [
    { no: 1, name: "simulation_run_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 2, name: "job_id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
    { no: 3, name: "scenario", kind: "message", T: Scenario },
    { no: 4, name: "mode", kind: "enum", T: proto3.getEnumType(SimulationMode) },
  ],
);

