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.

150 lines (144 loc) • 4.85 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 { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { AIConfigTargetingEnvironmentFallthrough, AIConfigTargetingEnvironmentFallthrough$inboundSchema, AIConfigTargetingEnvironmentFallthrough$Outbound, AIConfigTargetingEnvironmentFallthrough$outboundSchema, } from "./aiconfigtargetingenvironmentfallthrough.js"; import { AIConfigTargetingEnvironmentRule, AIConfigTargetingEnvironmentRule$inboundSchema, AIConfigTargetingEnvironmentRule$Outbound, AIConfigTargetingEnvironmentRule$outboundSchema, } from "./aiconfigtargetingenvironmentrule.js"; import { AIConfigTargetingEnvironmentTarget, AIConfigTargetingEnvironmentTarget$inboundSchema, AIConfigTargetingEnvironmentTarget$Outbound, AIConfigTargetingEnvironmentTarget$outboundSchema, } from "./aiconfigtargetingenvironmenttarget.js"; export type AIConfigTargetingEnvironment = { /** * Individual context targets for non-user context kinds */ contextTargets: Array<AIConfigTargetingEnvironmentTarget>; /** * Whether targeting is on in this environment */ enabled: boolean; fallthrough: AIConfigTargetingEnvironmentFallthrough; lastModified: number; /** * Index of the variation served when targeting is off */ offVariation?: number | undefined; /** * The targeting rules */ rules: Array<AIConfigTargetingEnvironmentRule>; /** * Individual user targets */ targets: Array<AIConfigTargetingEnvironmentTarget>; /** * Whether to send detailed events for all evaluations */ trackEvents: boolean; /** * Whether to send detailed events for evaluations that fall through to the default rule */ trackEventsFallthrough: boolean; /** * The environment name */ environmentName: string; /** * The version of the targeting in this environment */ version: number; }; /** @internal */ export const AIConfigTargetingEnvironment$inboundSchema: z.ZodType< AIConfigTargetingEnvironment, z.ZodTypeDef, unknown > = z.object({ contextTargets: z.array(AIConfigTargetingEnvironmentTarget$inboundSchema), enabled: z.boolean(), fallthrough: AIConfigTargetingEnvironmentFallthrough$inboundSchema, lastModified: z.number().int(), offVariation: z.number().int().optional(), rules: z.array(AIConfigTargetingEnvironmentRule$inboundSchema), targets: z.array(AIConfigTargetingEnvironmentTarget$inboundSchema), trackEvents: z.boolean(), trackEventsFallthrough: z.boolean(), _environmentName: z.string(), _version: z.number().int(), }).transform((v) => { return remap$(v, { "_environmentName": "environmentName", "_version": "version", }); }); /** @internal */ export type AIConfigTargetingEnvironment$Outbound = { contextTargets: Array<AIConfigTargetingEnvironmentTarget$Outbound>; enabled: boolean; fallthrough: AIConfigTargetingEnvironmentFallthrough$Outbound; lastModified: number; offVariation?: number | undefined; rules: Array<AIConfigTargetingEnvironmentRule$Outbound>; targets: Array<AIConfigTargetingEnvironmentTarget$Outbound>; trackEvents: boolean; trackEventsFallthrough: boolean; _environmentName: string; _version: number; }; /** @internal */ export const AIConfigTargetingEnvironment$outboundSchema: z.ZodType< AIConfigTargetingEnvironment$Outbound, z.ZodTypeDef, AIConfigTargetingEnvironment > = z.object({ contextTargets: z.array(AIConfigTargetingEnvironmentTarget$outboundSchema), enabled: z.boolean(), fallthrough: AIConfigTargetingEnvironmentFallthrough$outboundSchema, lastModified: z.number().int(), offVariation: z.number().int().optional(), rules: z.array(AIConfigTargetingEnvironmentRule$outboundSchema), targets: z.array(AIConfigTargetingEnvironmentTarget$outboundSchema), trackEvents: z.boolean(), trackEventsFallthrough: z.boolean(), environmentName: z.string(), version: z.number().int(), }).transform((v) => { return remap$(v, { environmentName: "_environmentName", version: "_version", }); }); export function aiConfigTargetingEnvironmentToJSON( aiConfigTargetingEnvironment: AIConfigTargetingEnvironment, ): string { return JSON.stringify( AIConfigTargetingEnvironment$outboundSchema.parse( aiConfigTargetingEnvironment, ), ); } export function aiConfigTargetingEnvironmentFromJSON( jsonString: string, ): SafeParseResult<AIConfigTargetingEnvironment, SDKValidationError> { return safeParse( jsonString, (x) => AIConfigTargetingEnvironment$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'AIConfigTargetingEnvironment' from JSON`, ); }