/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod"; import { remap as remap$ } from "../../lib/primitives.js"; import { ClosedEnum } from "../../types/enums.js"; import { ConditionGroupPayloadV2, ConditionGroupPayloadV2$inboundSchema, ConditionGroupPayloadV2$Outbound, ConditionGroupPayloadV2$outboundSchema, } from "./conditiongrouppayloadv2.js"; import { ExpressionPayloadV2, ExpressionPayloadV2$inboundSchema, ExpressionPayloadV2$Outbound, ExpressionPayloadV2$outboundSchema, } from "./expressionpayloadv2.js"; import { StepConfigPayload, StepConfigPayload$inboundSchema, StepConfigPayload$Outbound, StepConfigPayload$outboundSchema, } from "./stepconfigpayload.js"; import { WorkflowDelay, WorkflowDelay$inboundSchema, WorkflowDelay$Outbound, WorkflowDelay$outboundSchema, } from "./workflowdelay.js"; export const UpdateWorkflowRequestBodyRunsOnIncidentModes = { Standard: "standard", Test: "test", Retrospective: "retrospective", } as const; export type UpdateWorkflowRequestBodyRunsOnIncidentModes = ClosedEnum< typeof UpdateWorkflowRequestBodyRunsOnIncidentModes >; /** * Which incidents should the workflow be applied to? (newly_created or newly_created_and_active) */ export const UpdateWorkflowRequestBodyRunsOnIncidents = { NewlyCreated: "newly_created", NewlyCreatedAndActive: "newly_created_and_active", } as const; /** * Which incidents should the workflow be applied to? (newly_created or newly_created_and_active) */ export type UpdateWorkflowRequestBodyRunsOnIncidents = ClosedEnum< typeof UpdateWorkflowRequestBodyRunsOnIncidents >; /** * The state of the workflow (e.g. is it draft, or disabled) */ export const UpdateWorkflowRequestBodyState = { Active: "active", Disabled: "disabled", Draft: "draft", Error: "error", } as const; /** * The state of the workflow (e.g. is it draft, or disabled) */ export type UpdateWorkflowRequestBodyState = ClosedEnum< typeof UpdateWorkflowRequestBodyState >; export type UpdateWorkflowRequestBody = { /** * Annotations that track metadata about this resource */ annotations?: { [k: string]: string } | undefined; /** * List of conditions to apply to the workflow */ conditionGroups: Array; /** * Whether to continue executing the workflow if a step fails */ continueOnStepError: boolean; delay?: WorkflowDelay | undefined; /** * The expressions used in the workflow */ expressions: Array; /** * Folder to display the workflow in */ folder?: string | undefined; /** * Whether to include private incidents */ includePrivateIncidents: boolean; /** * The human-readable name of the workflow */ name: string; /** * Once For strategy to apply to this workflow */ onceFor: Array; /** * Which modes of incident this should run on (defaults to just standard incidents) */ runsOnIncidentModes: Array; /** * Which incidents should the workflow be applied to? (newly_created or newly_created_and_active) */ runsOnIncidents: UpdateWorkflowRequestBodyRunsOnIncidents; /** * The state of the workflow (e.g. is it draft, or disabled) */ state?: UpdateWorkflowRequestBodyState | undefined; /** * List of step to execute as part of the workflow */ steps: Array; }; /** @internal */ export const UpdateWorkflowRequestBodyRunsOnIncidentModes$inboundSchema: z.ZodNativeEnum = z .nativeEnum(UpdateWorkflowRequestBodyRunsOnIncidentModes); /** @internal */ export const UpdateWorkflowRequestBodyRunsOnIncidentModes$outboundSchema: z.ZodNativeEnum = UpdateWorkflowRequestBodyRunsOnIncidentModes$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace UpdateWorkflowRequestBodyRunsOnIncidentModes$ { /** @deprecated use `UpdateWorkflowRequestBodyRunsOnIncidentModes$inboundSchema` instead. */ export const inboundSchema = UpdateWorkflowRequestBodyRunsOnIncidentModes$inboundSchema; /** @deprecated use `UpdateWorkflowRequestBodyRunsOnIncidentModes$outboundSchema` instead. */ export const outboundSchema = UpdateWorkflowRequestBodyRunsOnIncidentModes$outboundSchema; } /** @internal */ export const UpdateWorkflowRequestBodyRunsOnIncidents$inboundSchema: z.ZodNativeEnum = z .nativeEnum(UpdateWorkflowRequestBodyRunsOnIncidents); /** @internal */ export const UpdateWorkflowRequestBodyRunsOnIncidents$outboundSchema: z.ZodNativeEnum = UpdateWorkflowRequestBodyRunsOnIncidents$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace UpdateWorkflowRequestBodyRunsOnIncidents$ { /** @deprecated use `UpdateWorkflowRequestBodyRunsOnIncidents$inboundSchema` instead. */ export const inboundSchema = UpdateWorkflowRequestBodyRunsOnIncidents$inboundSchema; /** @deprecated use `UpdateWorkflowRequestBodyRunsOnIncidents$outboundSchema` instead. */ export const outboundSchema = UpdateWorkflowRequestBodyRunsOnIncidents$outboundSchema; } /** @internal */ export const UpdateWorkflowRequestBodyState$inboundSchema: z.ZodNativeEnum< typeof UpdateWorkflowRequestBodyState > = z.nativeEnum(UpdateWorkflowRequestBodyState); /** @internal */ export const UpdateWorkflowRequestBodyState$outboundSchema: z.ZodNativeEnum< typeof UpdateWorkflowRequestBodyState > = UpdateWorkflowRequestBodyState$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace UpdateWorkflowRequestBodyState$ { /** @deprecated use `UpdateWorkflowRequestBodyState$inboundSchema` instead. */ export const inboundSchema = UpdateWorkflowRequestBodyState$inboundSchema; /** @deprecated use `UpdateWorkflowRequestBodyState$outboundSchema` instead. */ export const outboundSchema = UpdateWorkflowRequestBodyState$outboundSchema; } /** @internal */ export const UpdateWorkflowRequestBody$inboundSchema: z.ZodType< UpdateWorkflowRequestBody, z.ZodTypeDef, unknown > = z.object({ annotations: z.record(z.string()).optional(), condition_groups: z.array(ConditionGroupPayloadV2$inboundSchema), continue_on_step_error: z.boolean(), delay: WorkflowDelay$inboundSchema.optional(), expressions: z.array(ExpressionPayloadV2$inboundSchema), folder: z.string().optional(), include_private_incidents: z.boolean(), name: z.string(), once_for: z.array(z.string()), runs_on_incident_modes: z.array( UpdateWorkflowRequestBodyRunsOnIncidentModes$inboundSchema, ), runs_on_incidents: UpdateWorkflowRequestBodyRunsOnIncidents$inboundSchema, state: UpdateWorkflowRequestBodyState$inboundSchema.optional(), steps: z.array(StepConfigPayload$inboundSchema), }).transform((v) => { return remap$(v, { "condition_groups": "conditionGroups", "continue_on_step_error": "continueOnStepError", "include_private_incidents": "includePrivateIncidents", "once_for": "onceFor", "runs_on_incident_modes": "runsOnIncidentModes", "runs_on_incidents": "runsOnIncidents", }); }); /** @internal */ export type UpdateWorkflowRequestBody$Outbound = { annotations?: { [k: string]: string } | undefined; condition_groups: Array; continue_on_step_error: boolean; delay?: WorkflowDelay$Outbound | undefined; expressions: Array; folder?: string | undefined; include_private_incidents: boolean; name: string; once_for: Array; runs_on_incident_modes: Array; runs_on_incidents: string; state?: string | undefined; steps: Array; }; /** @internal */ export const UpdateWorkflowRequestBody$outboundSchema: z.ZodType< UpdateWorkflowRequestBody$Outbound, z.ZodTypeDef, UpdateWorkflowRequestBody > = z.object({ annotations: z.record(z.string()).optional(), conditionGroups: z.array(ConditionGroupPayloadV2$outboundSchema), continueOnStepError: z.boolean(), delay: WorkflowDelay$outboundSchema.optional(), expressions: z.array(ExpressionPayloadV2$outboundSchema), folder: z.string().optional(), includePrivateIncidents: z.boolean(), name: z.string(), onceFor: z.array(z.string()), runsOnIncidentModes: z.array( UpdateWorkflowRequestBodyRunsOnIncidentModes$outboundSchema, ), runsOnIncidents: UpdateWorkflowRequestBodyRunsOnIncidents$outboundSchema, state: UpdateWorkflowRequestBodyState$outboundSchema.optional(), steps: z.array(StepConfigPayload$outboundSchema), }).transform((v) => { return remap$(v, { conditionGroups: "condition_groups", continueOnStepError: "continue_on_step_error", includePrivateIncidents: "include_private_incidents", onceFor: "once_for", runsOnIncidentModes: "runs_on_incident_modes", runsOnIncidents: "runs_on_incidents", }); }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace UpdateWorkflowRequestBody$ { /** @deprecated use `UpdateWorkflowRequestBody$inboundSchema` instead. */ export const inboundSchema = UpdateWorkflowRequestBody$inboundSchema; /** @deprecated use `UpdateWorkflowRequestBody$outboundSchema` instead. */ export const outboundSchema = UpdateWorkflowRequestBody$outboundSchema; /** @deprecated use `UpdateWorkflowRequestBody$Outbound` instead. */ export type Outbound = UpdateWorkflowRequestBody$Outbound; }