UNPKG

@launchdarkly/mcp-server

Version:

The local [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) server for [LaunchDarkly](https://launchdarkly.com/) federal and European Union (EU) environments.

120 lines (112 loc) • 3.65 kB
/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { remap as remap$ } from "../../lib/primitives.js"; 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"; /** * Whether this statement should allow or deny actions on the resources. */ export const AccessAllowedReasonEffect = { Allow: "allow", Deny: "deny", } as const; /** * Whether this statement should allow or deny actions on the resources. */ export type AccessAllowedReasonEffect = ClosedEnum< typeof AccessAllowedReasonEffect >; export type AccessAllowedReason = { /** * Resource specifier strings */ resources?: Array<string> | undefined; /** * Targeted resources are the resources NOT in this list. The <code>resources</code> and <code>notActions</code> fields must be empty to use this field. */ notResources?: Array<string> | undefined; /** * Actions to perform on a resource */ actions?: Array<string> | undefined; /** * Targeted actions are the actions NOT in this list. The <code>actions</code> and <code>notResources</code> fields must be empty to use this field. */ notActions?: Array<string> | undefined; /** * Whether this statement should allow or deny actions on the resources. */ effect: AccessAllowedReasonEffect; roleName?: string | undefined; }; /** @internal */ export const AccessAllowedReasonEffect$inboundSchema: z.ZodNativeEnum< typeof AccessAllowedReasonEffect > = z.nativeEnum(AccessAllowedReasonEffect); /** @internal */ export const AccessAllowedReasonEffect$outboundSchema: z.ZodNativeEnum< typeof AccessAllowedReasonEffect > = AccessAllowedReasonEffect$inboundSchema; /** @internal */ export const AccessAllowedReason$inboundSchema: z.ZodType< AccessAllowedReason, z.ZodTypeDef, unknown > = z.object({ resources: z.array(z.string()).optional(), notResources: z.array(z.string()).optional(), actions: z.array(z.string()).optional(), notActions: z.array(z.string()).optional(), effect: AccessAllowedReasonEffect$inboundSchema, role_name: z.string().optional(), }).transform((v) => { return remap$(v, { "role_name": "roleName", }); }); /** @internal */ export type AccessAllowedReason$Outbound = { resources?: Array<string> | undefined; notResources?: Array<string> | undefined; actions?: Array<string> | undefined; notActions?: Array<string> | undefined; effect: string; role_name?: string | undefined; }; /** @internal */ export const AccessAllowedReason$outboundSchema: z.ZodType< AccessAllowedReason$Outbound, z.ZodTypeDef, AccessAllowedReason > = z.object({ resources: z.array(z.string()).optional(), notResources: z.array(z.string()).optional(), actions: z.array(z.string()).optional(), notActions: z.array(z.string()).optional(), effect: AccessAllowedReasonEffect$outboundSchema, roleName: z.string().optional(), }).transform((v) => { return remap$(v, { roleName: "role_name", }); }); export function accessAllowedReasonToJSON( accessAllowedReason: AccessAllowedReason, ): string { return JSON.stringify( AccessAllowedReason$outboundSchema.parse(accessAllowedReason), ); } export function accessAllowedReasonFromJSON( jsonString: string, ): SafeParseResult<AccessAllowedReason, SDKValidationError> { return safeParse( jsonString, (x) => AccessAllowedReason$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'AccessAllowedReason' from JSON`, ); }