/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 7b6ff8bc5824 */ import * as z from "zod/v4"; import { safeParse } from "../../lib/schemas.js"; import { ClosedEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import * as models from "../index.js"; export type GetAccessRequestGlobals = { /** * Workspace name. Platform API keys already select a workspace; other authentication methods can configure it once on the SDK client. */ workspace?: string | undefined; }; export type GetAccessRequestRequest = { id: string; }; export const GetAccessRequestRequesterKind = { User: "user", ServiceAccount: "serviceAccount", } as const; export type GetAccessRequestRequesterKind = ClosedEnum< typeof GetAccessRequestRequesterKind >; export type GetAccessRequestDeployment = { id: string; name: string; deploymentGroup?: models.DeploymentGroupInfo | undefined; }; /** * How risky an operation is (declared by the plugin metadata). */ export const GetAccessRequestTier = { ReadOnly: "read-only", Mutating: "mutating", Destructive: "destructive", } as const; /** * How risky an operation is (declared by the plugin metadata). */ export type GetAccessRequestTier = ClosedEnum; export type GetAccessRequestCommand = { command: string; summary: string; params?: any | null | undefined; /** * How risky an operation is (declared by the plugin metadata). */ tier?: GetAccessRequestTier | undefined; }; /** * How risky an operation is (declared by the plugin metadata). */ export const GetAccessRequestMaxRisk = { ReadOnly: "read-only", Mutating: "mutating", Destructive: "destructive", } as const; /** * How risky an operation is (declared by the plugin metadata). */ export type GetAccessRequestMaxRisk = ClosedEnum< typeof GetAccessRequestMaxRisk >; /** * The access request. */ export type GetAccessRequestResponse = { id: string; requesterKind: GetAccessRequestRequesterKind | null; requesterId: string | null; requestedExpiresAt: string | null; deploymentId: string; deployment?: GetAccessRequestDeployment | undefined; remediationPlanId: string | null; title: string; reason: string | null; commands: Array; operationPattern: string | null; /** * How risky an operation is (declared by the plugin metadata). */ maxRisk: GetAccessRequestMaxRisk | null; status: models.AccessRequestStatus; approvedUntil: string | null; }; /** @internal */ export type GetAccessRequestRequest$Outbound = { id: string; }; /** @internal */ export const GetAccessRequestRequest$outboundSchema: z.ZodType< GetAccessRequestRequest$Outbound, GetAccessRequestRequest > = z.object({ id: z.string(), }); export function getAccessRequestRequestToJSON( getAccessRequestRequest: GetAccessRequestRequest, ): string { return JSON.stringify( GetAccessRequestRequest$outboundSchema.parse(getAccessRequestRequest), ); } /** @internal */ export const GetAccessRequestRequesterKind$inboundSchema: z.ZodEnum< typeof GetAccessRequestRequesterKind > = z.enum(GetAccessRequestRequesterKind); /** @internal */ export const GetAccessRequestDeployment$inboundSchema: z.ZodType< GetAccessRequestDeployment, unknown > = z.object({ id: z.string(), name: z.string(), deploymentGroup: models.DeploymentGroupInfo$inboundSchema.optional(), }); export function getAccessRequestDeploymentFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => GetAccessRequestDeployment$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetAccessRequestDeployment' from JSON`, ); } /** @internal */ export const GetAccessRequestTier$inboundSchema: z.ZodEnum< typeof GetAccessRequestTier > = z.enum(GetAccessRequestTier); /** @internal */ export const GetAccessRequestCommand$inboundSchema: z.ZodType< GetAccessRequestCommand, unknown > = z.object({ command: z.string(), summary: z.string(), params: z.nullable(z.any()).optional(), tier: GetAccessRequestTier$inboundSchema.optional(), }); export function getAccessRequestCommandFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => GetAccessRequestCommand$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetAccessRequestCommand' from JSON`, ); } /** @internal */ export const GetAccessRequestMaxRisk$inboundSchema: z.ZodEnum< typeof GetAccessRequestMaxRisk > = z.enum(GetAccessRequestMaxRisk); /** @internal */ export const GetAccessRequestResponse$inboundSchema: z.ZodType< GetAccessRequestResponse, unknown > = z.object({ id: z.string(), requesterKind: z.nullable(GetAccessRequestRequesterKind$inboundSchema), requesterId: z.nullable(z.string()), requestedExpiresAt: z.nullable(z.string()), deploymentId: z.string(), deployment: z.lazy(() => GetAccessRequestDeployment$inboundSchema).optional(), remediationPlanId: z.nullable(z.string()), title: z.string(), reason: z.nullable(z.string()), commands: z.array(z.lazy(() => GetAccessRequestCommand$inboundSchema)), operationPattern: z.nullable(z.string()), maxRisk: z.nullable(GetAccessRequestMaxRisk$inboundSchema), status: models.AccessRequestStatus$inboundSchema, approvedUntil: z.nullable(z.string()), }); export function getAccessRequestResponseFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => GetAccessRequestResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetAccessRequestResponse' from JSON`, ); }