@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.
433 lines • 15.3 kB
TypeScript
import * as z from "zod/v3";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { Access, Access$Outbound } from "./access.js";
import { DependentExperimentRep, DependentExperimentRep$Outbound } from "./dependentexperimentrep.js";
import { DependentMetricGroupRep, DependentMetricGroupRep$Outbound } from "./dependentmetricgrouprep.js";
import { Filter, Filter$Outbound } from "./filter.js";
import { FlagListingRep, FlagListingRep$Outbound } from "./flaglistingrep.js";
import { Link, Link$Outbound } from "./link.js";
import { MemberSummary, MemberSummary$Outbound } from "./membersummary.js";
import { MetricDataSourceRefRep, MetricDataSourceRefRep$Outbound } from "./metricdatasourcerefrep.js";
import { MetricDenominatorRep, MetricDenominatorRep$Outbound } from "./metricdenominatorrep.js";
import { MetricEventDefaultRep, MetricEventDefaultRep$Outbound } from "./metriceventdefaultrep.js";
import { Modification, Modification$Outbound } from "./modification.js";
/**
* The kind of event the metric tracks
*/
export declare const MetricRepKind: {
readonly Pageview: "pageview";
readonly Click: "click";
readonly Custom: "custom";
readonly Trace: "trace";
};
/**
* The kind of event the metric tracks
*/
export type MetricRepKind = ClosedEnum<typeof MetricRepKind>;
/**
* For custom and trace metrics, the success criteria
*/
export declare const MetricRepSuccessCriteria: {
readonly HigherThanBaseline: "HigherThanBaseline";
readonly LowerThanBaseline: "LowerThanBaseline";
};
/**
* For custom and trace metrics, the success criteria
*/
export type MetricRepSuccessCriteria = ClosedEnum<typeof MetricRepSuccessCriteria>;
/**
* The method by which multiple unit event values are aggregated
*/
export declare const MetricRepUnitAggregationType: {
readonly Average: "average";
readonly Sum: "sum";
readonly CountDistinct: "count_distinct";
};
/**
* The method by which multiple unit event values are aggregated
*/
export type MetricRepUnitAggregationType = ClosedEnum<typeof MetricRepUnitAggregationType>;
/**
* The method for analyzing metric events
*/
export declare const MetricRepAnalysisType: {
readonly Mean: "mean";
readonly Percentile: "percentile";
};
/**
* The method for analyzing metric events
*/
export type MetricRepAnalysisType = ClosedEnum<typeof MetricRepAnalysisType>;
/**
* The most recent experiment that used this metric
*/
export type LastUsedInExperiment = {
/**
* The experiment key
*/
key: string;
/**
* The experiment name
*/
name: string;
/**
* The environment ID
*/
environmentId: string;
/**
* The environment key
*/
environmentKey: string;
creationDate: number;
archivedDate?: number | undefined;
/**
* The location and content type of related resources
*/
links: {
[k: string]: Link;
};
};
/**
* The most recent guarded rollout that used this metric
*/
export type LastUsedInGuardedRollout = {
/**
* The guarded rollout release phase ID
*/
id: string;
/**
* The guarded rollout flag key
*/
flagKey: string;
/**
* The guarded rollout flag name
*/
flagName: string;
/**
* The guarded rollout flag purpose
*/
flagPurpose?: string | undefined;
/**
* The guarded rollout environment key
*/
environmentKey: string;
/**
* The guarded rollout environment name
*/
environmentName: string;
/**
* The guarded rollout status
*/
status: string;
creationDate: number;
/**
* The location and content type of related resources
*/
links: {
[k: string]: Link;
};
};
export type MetricRep = {
/**
* The number of experiments using this metric
*/
experimentCount?: number | undefined;
/**
* The number of metric groups using this metric
*/
metricGroupCount?: number | undefined;
/**
* The number of active experiments using this metric
*/
activeExperimentCount?: number | undefined;
/**
* The number of active guarded rollouts using this metric
*/
activeGuardedRolloutCount?: number | undefined;
/**
* The ID of this metric
*/
id: string;
/**
* The version ID of the metric
*/
versionId: string;
/**
* Version of the metric
*/
version?: number | undefined;
/**
* A unique key to reference the metric
*/
key: string;
/**
* A human-friendly name for the metric
*/
name: string;
/**
* The kind of event the metric tracks
*/
kind: MetricRepKind;
/**
* The number of feature flags currently attached to this metric
*/
attachedFlagCount?: number | undefined;
/**
* The location and content type of related resources
*/
links: {
[k: string]: Link;
};
site?: Link | undefined;
access?: Access | undefined;
/**
* Tags for the metric
*/
tags: Array<string>;
creationDate: number;
lastModified?: Modification | undefined;
/**
* The ID of the member who maintains this metric
*/
maintainerId?: string | undefined;
maintainer?: MemberSummary | undefined;
/**
* Description of the metric
*/
description?: string | undefined;
/**
* The category of the metric
*/
category?: string | undefined;
/**
* For custom and trace metrics, whether to track numeric changes in value against a baseline (<code>true</code>) or to track a conversion when an end user takes an action (<code>false</code>).
*/
isNumeric?: boolean | undefined;
/**
* For custom and trace metrics, the success criteria
*/
successCriteria?: MetricRepSuccessCriteria | undefined;
/**
* For numeric custom and trace metrics, the unit of measure
*/
unit?: string | undefined;
/**
* For custom metrics, the event key to use in your code
*/
eventKey?: string | undefined;
/**
* Deprecated, use <code>analysisUnits</code> instead.
*
* @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
*/
randomizationUnits?: Array<string> | undefined;
/**
* An array of analysis units allowed for this metric.
*/
analysisUnits?: Array<string> | undefined;
filters?: Filter | undefined;
/**
* The method by which multiple unit event values are aggregated
*/
unitAggregationType?: MetricRepUnitAggregationType | undefined;
/**
* The method for analyzing metric events
*/
analysisType?: MetricRepAnalysisType | undefined;
/**
* The percentile for the analysis method. An integer denoting the target percentile between 0 and 100. Required when <code>analysisType</code> is <code>percentile</code>.
*/
percentileValue?: number | undefined;
eventDefault?: MetricEventDefaultRep | undefined;
dataSource: MetricDataSourceRefRep;
lastSeen?: number | undefined;
/**
* Whether the metric version is archived
*/
archived?: boolean | undefined;
archivedAt?: number | undefined;
/**
* For click metrics, the CSS selectors
*/
selector?: string | undefined;
urls?: Array<{
[k: string]: any;
}> | undefined;
/**
* Not yet implemented - The start of the measurement window, in milliseconds relative to the unit's first exposure to a flag variation
*/
windowStartOffset?: number | undefined;
/**
* Not yet implemented - The end of the measurement window, in milliseconds relative to the unit's first exposure to a flag variation
*/
windowEndOffset?: number | undefined;
/**
* Lower winsorization percentile, expressed as a percent in the open interval (0, 100). When both bounds are set, defines a two-sided clamp range. Otherwise lower-only winsorization.
*/
winsorLowerPercentile?: number | undefined;
/**
* Upper winsorization percentile, expressed as a percent in the open interval (0, 100). When both bounds are set, must be greater than winsorLowerPercentile.
*/
winsorUpperPercentile?: number | undefined;
/**
* When true, the percentile bound calculation includes imputed zeros. Only meaningful when at least one bound is set and the metric includes units that didn't send events.
*/
winsorIncludeImputed?: boolean | undefined;
/**
* For trace metrics, the trace query to use for the metric.
*/
traceQuery?: string | undefined;
/**
* For trace metrics, the location in the trace to use for numeric values.
*/
traceValueLocation?: string | undefined;
/**
* For count_distinct metrics, the column to count distinct values of
*/
unitAggregationField?: string | undefined;
denominator?: MetricDenominatorRep | undefined;
experiments?: Array<DependentExperimentRep> | undefined;
/**
* Metric groups that use this metric
*/
metricGroups?: Array<DependentMetricGroupRep> | undefined;
/**
* Whether the metric is active
*/
isActive?: boolean | undefined;
/**
* Details on the flags attached to this metric
*/
attachedFeatures?: Array<FlagListingRep> | null | undefined;
/**
* The most recent experiment that used this metric
*/
lastUsedInExperiment?: LastUsedInExperiment | null | undefined;
/**
* The most recent guarded rollout that used this metric
*/
lastUsedInGuardedRollout?: LastUsedInGuardedRollout | null | undefined;
};
/** @internal */
export declare const MetricRepKind$inboundSchema: z.ZodNativeEnum<typeof MetricRepKind>;
/** @internal */
export declare const MetricRepKind$outboundSchema: z.ZodNativeEnum<typeof MetricRepKind>;
/** @internal */
export declare const MetricRepSuccessCriteria$inboundSchema: z.ZodNativeEnum<typeof MetricRepSuccessCriteria>;
/** @internal */
export declare const MetricRepSuccessCriteria$outboundSchema: z.ZodNativeEnum<typeof MetricRepSuccessCriteria>;
/** @internal */
export declare const MetricRepUnitAggregationType$inboundSchema: z.ZodNativeEnum<typeof MetricRepUnitAggregationType>;
/** @internal */
export declare const MetricRepUnitAggregationType$outboundSchema: z.ZodNativeEnum<typeof MetricRepUnitAggregationType>;
/** @internal */
export declare const MetricRepAnalysisType$inboundSchema: z.ZodNativeEnum<typeof MetricRepAnalysisType>;
/** @internal */
export declare const MetricRepAnalysisType$outboundSchema: z.ZodNativeEnum<typeof MetricRepAnalysisType>;
/** @internal */
export declare const LastUsedInExperiment$inboundSchema: z.ZodType<LastUsedInExperiment, z.ZodTypeDef, unknown>;
/** @internal */
export type LastUsedInExperiment$Outbound = {
key: string;
name: string;
environmentId: string;
environmentKey: string;
creationDate: number;
archivedDate?: number | undefined;
_links: {
[k: string]: Link$Outbound;
};
};
/** @internal */
export declare const LastUsedInExperiment$outboundSchema: z.ZodType<LastUsedInExperiment$Outbound, z.ZodTypeDef, LastUsedInExperiment>;
export declare function lastUsedInExperimentToJSON(lastUsedInExperiment: LastUsedInExperiment): string;
export declare function lastUsedInExperimentFromJSON(jsonString: string): SafeParseResult<LastUsedInExperiment, SDKValidationError>;
/** @internal */
export declare const LastUsedInGuardedRollout$inboundSchema: z.ZodType<LastUsedInGuardedRollout, z.ZodTypeDef, unknown>;
/** @internal */
export type LastUsedInGuardedRollout$Outbound = {
_id: string;
flagKey: string;
flagName: string;
flagPurpose?: string | undefined;
environmentKey: string;
environmentName: string;
status: string;
creationDate: number;
_links: {
[k: string]: Link$Outbound;
};
};
/** @internal */
export declare const LastUsedInGuardedRollout$outboundSchema: z.ZodType<LastUsedInGuardedRollout$Outbound, z.ZodTypeDef, LastUsedInGuardedRollout>;
export declare function lastUsedInGuardedRolloutToJSON(lastUsedInGuardedRollout: LastUsedInGuardedRollout): string;
export declare function lastUsedInGuardedRolloutFromJSON(jsonString: string): SafeParseResult<LastUsedInGuardedRollout, SDKValidationError>;
/** @internal */
export declare const MetricRep$inboundSchema: z.ZodType<MetricRep, z.ZodTypeDef, unknown>;
/** @internal */
export type MetricRep$Outbound = {
experimentCount?: number | undefined;
metricGroupCount?: number | undefined;
activeExperimentCount?: number | undefined;
activeGuardedRolloutCount?: number | undefined;
_id: string;
_versionId: string;
_version?: number | undefined;
key: string;
name: string;
kind: string;
_attachedFlagCount?: number | undefined;
_links: {
[k: string]: Link$Outbound;
};
_site?: Link$Outbound | undefined;
_access?: Access$Outbound | undefined;
tags: Array<string>;
_creationDate: number;
lastModified?: Modification$Outbound | undefined;
maintainerId?: string | undefined;
_maintainer?: MemberSummary$Outbound | undefined;
description?: string | undefined;
category?: string | undefined;
isNumeric?: boolean | undefined;
successCriteria?: string | undefined;
unit?: string | undefined;
eventKey?: string | undefined;
randomizationUnits?: Array<string> | undefined;
analysisUnits?: Array<string> | undefined;
filters?: Filter$Outbound | undefined;
unitAggregationType?: string | undefined;
analysisType?: string | undefined;
percentileValue?: number | undefined;
eventDefault?: MetricEventDefaultRep$Outbound | undefined;
dataSource: MetricDataSourceRefRep$Outbound;
lastSeen?: number | undefined;
archived?: boolean | undefined;
archivedAt?: number | undefined;
selector?: string | undefined;
urls?: Array<{
[k: string]: any;
}> | undefined;
windowStartOffset?: number | undefined;
windowEndOffset?: number | undefined;
winsorLowerPercentile?: number | undefined;
winsorUpperPercentile?: number | undefined;
winsorIncludeImputed?: boolean | undefined;
traceQuery?: string | undefined;
traceValueLocation?: string | undefined;
unitAggregationField?: string | undefined;
denominator?: MetricDenominatorRep$Outbound | undefined;
experiments?: Array<DependentExperimentRep$Outbound> | undefined;
metricGroups?: Array<DependentMetricGroupRep$Outbound> | undefined;
isActive?: boolean | undefined;
_attachedFeatures?: Array<FlagListingRep$Outbound> | null | undefined;
lastUsedInExperiment?: LastUsedInExperiment$Outbound | null | undefined;
lastUsedInGuardedRollout?: LastUsedInGuardedRollout$Outbound | null | undefined;
};
/** @internal */
export declare const MetricRep$outboundSchema: z.ZodType<MetricRep$Outbound, z.ZodTypeDef, MetricRep>;
export declare function metricRepToJSON(metricRep: MetricRep): string;
export declare function metricRepFromJSON(jsonString: string): SafeParseResult<MetricRep, SDKValidationError>;
//# sourceMappingURL=metricrep.d.ts.map