@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.
140 lines (134 loc) • 4.72 kB
text/typescript
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
import * as z from "zod/v3";
import { safeParse } from "../../lib/schemas.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import {
AiConfigsFilter,
AiConfigsFilter$inboundSchema,
AiConfigsFilter$Outbound,
AiConfigsFilter$outboundSchema,
} from "./aiconfigsfilter.js";
import {
AiConfigsMetricDataSourceRefRep,
AiConfigsMetricDataSourceRefRep$inboundSchema,
AiConfigsMetricDataSourceRefRep$Outbound,
AiConfigsMetricDataSourceRefRep$outboundSchema,
} from "./aiconfigsmetricdatasourcerefrep.js";
export type AiConfigsMetricDenominatorRep = {
/**
* The warehouse event column for the denominator
*/
eventName?: string | undefined;
/**
* Whether the denominator aggregates a numeric value
*/
isNumeric?: boolean | undefined;
/**
* How individual unit values are aggregated for the denominator
*/
unitAggregationType?: string | undefined;
/**
* The column to count distinct values of; required when unitAggregationType is count_distinct
*/
unitAggregationField?: string | undefined;
/**
* For a numeric denominator, the column holding the numeric value
*/
valueColumn?: string | undefined;
dataSource?: AiConfigsMetricDataSourceRefRep | undefined;
filters?: AiConfigsFilter | undefined;
/**
* Start of the measurement window in milliseconds
*/
windowStartOffset?: number | undefined;
/**
* End of the measurement window in milliseconds
*/
windowEndOffset?: number | undefined;
/**
* Lower winsorization percentile in the open interval (0, 100)
*/
winsorLowerPercentile?: number | undefined;
/**
* Upper winsorization percentile in the open interval (0, 100)
*/
winsorUpperPercentile?: number | undefined;
/**
* When true, the percentile bound calculation includes imputed zeros
*/
winsorIncludeImputed?: boolean | undefined;
};
/** @internal */
export const AiConfigsMetricDenominatorRep$inboundSchema: z.ZodType<
AiConfigsMetricDenominatorRep,
z.ZodTypeDef,
unknown
> = z.object({
eventName: z.string().optional(),
isNumeric: z.boolean().optional(),
unitAggregationType: z.string().optional(),
unitAggregationField: z.string().optional(),
valueColumn: z.string().optional(),
dataSource: AiConfigsMetricDataSourceRefRep$inboundSchema.optional(),
filters: AiConfigsFilter$inboundSchema.optional(),
windowStartOffset: z.number().int().optional(),
windowEndOffset: z.number().int().optional(),
winsorLowerPercentile: z.number().optional(),
winsorUpperPercentile: z.number().optional(),
winsorIncludeImputed: z.boolean().optional(),
});
/** @internal */
export type AiConfigsMetricDenominatorRep$Outbound = {
eventName?: string | undefined;
isNumeric?: boolean | undefined;
unitAggregationType?: string | undefined;
unitAggregationField?: string | undefined;
valueColumn?: string | undefined;
dataSource?: AiConfigsMetricDataSourceRefRep$Outbound | undefined;
filters?: AiConfigsFilter$Outbound | undefined;
windowStartOffset?: number | undefined;
windowEndOffset?: number | undefined;
winsorLowerPercentile?: number | undefined;
winsorUpperPercentile?: number | undefined;
winsorIncludeImputed?: boolean | undefined;
};
/** @internal */
export const AiConfigsMetricDenominatorRep$outboundSchema: z.ZodType<
AiConfigsMetricDenominatorRep$Outbound,
z.ZodTypeDef,
AiConfigsMetricDenominatorRep
> = z.object({
eventName: z.string().optional(),
isNumeric: z.boolean().optional(),
unitAggregationType: z.string().optional(),
unitAggregationField: z.string().optional(),
valueColumn: z.string().optional(),
dataSource: AiConfigsMetricDataSourceRefRep$outboundSchema.optional(),
filters: AiConfigsFilter$outboundSchema.optional(),
windowStartOffset: z.number().int().optional(),
windowEndOffset: z.number().int().optional(),
winsorLowerPercentile: z.number().optional(),
winsorUpperPercentile: z.number().optional(),
winsorIncludeImputed: z.boolean().optional(),
});
export function aiConfigsMetricDenominatorRepToJSON(
aiConfigsMetricDenominatorRep: AiConfigsMetricDenominatorRep,
): string {
return JSON.stringify(
AiConfigsMetricDenominatorRep$outboundSchema.parse(
aiConfigsMetricDenominatorRep,
),
);
}
export function aiConfigsMetricDenominatorRepFromJSON(
jsonString: string,
): SafeParseResult<AiConfigsMetricDenominatorRep, SDKValidationError> {
return safeParse(
jsonString,
(x) => AiConfigsMetricDenominatorRep$inboundSchema.parse(JSON.parse(x)),
`Failed to parse 'AiConfigsMetricDenominatorRep' from JSON`,
);
}