UNPKG

@vercel/sdk

Version:

<p align="center"> <a href="https://vercel.com"> <img src="https://assets.vercel.com/image/upload/v1588805858/repositories/vercel/logo.png" height="96"> <h3 align="center">Vercel</h3> </a> <p align="center">Develop. Preview. Ship.</p> </p>

1,544 lines (1,380 loc) 44.5 kB
/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { safeParse } from "../lib/schemas.js"; import { ClosedEnum } from "../types/enums.js"; import { Result as SafeParseResult } from "../types/fp.js"; import * as types from "../types/primitives.js"; import { smartUnion } from "../types/smartUnion.js"; import { SDKValidationError } from "./sdkvalidationerror.js"; export type ListFlagVersionsRequest = { projectIdOrName: string; flagIdOrSlug: string; limit?: number | undefined; /** * Pagination cursor */ cursor?: string | undefined; /** * Environment to filter by */ environment?: string | undefined; /** * Whether to include metadata */ withMetadata?: boolean | undefined; /** * The Team identifier to perform the request on behalf of. */ teamId?: string | undefined; /** * The Team slug to perform the request on behalf of. */ slug?: string | undefined; }; export const ListFlagVersionsMetricType = { Count: "count", Currency: "currency", Percentage: "percentage", } as const; export type ListFlagVersionsMetricType = ClosedEnum< typeof ListFlagVersionsMetricType >; export const ListFlagVersionsMetricUnit = { Session: "session", User: "user", Visitor: "visitor", } as const; export type ListFlagVersionsMetricUnit = ClosedEnum< typeof ListFlagVersionsMetricUnit >; export const ListFlagVersionsDirectionality = { DecreaseIsGood: "decreaseIsGood", IncreaseIsGood: "increaseIsGood", } as const; export type ListFlagVersionsDirectionality = ClosedEnum< typeof ListFlagVersionsDirectionality >; export type ListFlagVersionsGuardrailMetrics = { description?: string | undefined; metricFormula?: string | undefined; name: string; metricType: ListFlagVersionsMetricType; metricUnit: ListFlagVersionsMetricUnit; directionality: ListFlagVersionsDirectionality; }; export const ListFlagVersionsDevice = { Android: "android", Desktop: "desktop", Ios: "ios", Mweb: "mweb", } as const; export type ListFlagVersionsDevice = ClosedEnum<typeof ListFlagVersionsDevice>; export const ListFlagVersionsDurationUnit = { Days: "days", Exposures: "exposures", } as const; export type ListFlagVersionsDurationUnit = ClosedEnum< typeof ListFlagVersionsDurationUnit >; export const ListFlagVersionsAllocationUnit = { CookieId: "cookieId", UserId: "userId", VisitorId: "visitorId", } as const; export type ListFlagVersionsAllocationUnit = ClosedEnum< typeof ListFlagVersionsAllocationUnit >; export const ListFlagVersionsFeatureFlagsMetricType = { Count: "count", Currency: "currency", Percentage: "percentage", } as const; export type ListFlagVersionsFeatureFlagsMetricType = ClosedEnum< typeof ListFlagVersionsFeatureFlagsMetricType >; export const ListFlagVersionsFeatureFlagsMetricUnit = { Session: "session", User: "user", Visitor: "visitor", } as const; export type ListFlagVersionsFeatureFlagsMetricUnit = ClosedEnum< typeof ListFlagVersionsFeatureFlagsMetricUnit >; export const ListFlagVersionsFeatureFlagsDirectionality = { DecreaseIsGood: "decreaseIsGood", IncreaseIsGood: "increaseIsGood", } as const; export type ListFlagVersionsFeatureFlagsDirectionality = ClosedEnum< typeof ListFlagVersionsFeatureFlagsDirectionality >; export type ListFlagVersionsPrimaryMetrics = { description?: string | undefined; metricFormula?: string | undefined; name: string; metricType: ListFlagVersionsFeatureFlagsMetricType; metricUnit: ListFlagVersionsFeatureFlagsMetricUnit; directionality: ListFlagVersionsFeatureFlagsDirectionality; }; export const ListFlagVersionsStatus = { Closed: "closed", Draft: "draft", Paused: "paused", Running: "running", } as const; export type ListFlagVersionsStatus = ClosedEnum<typeof ListFlagVersionsStatus>; export type ListFlagVersionsExperiment = { id?: string | undefined; name?: string | undefined; numVariants?: number | undefined; surfaceArea?: string | undefined; stickyRequirement?: boolean | undefined; layer?: string | undefined; guardrailMetrics?: Array<ListFlagVersionsGuardrailMetrics> | undefined; hypothesis?: string | undefined; device?: ListFlagVersionsDevice | undefined; controlVariantId?: string | undefined; startedAt?: number | undefined; endedAt?: number | undefined; decision?: string | undefined; decisionReason?: string | undefined; duration?: number | undefined; durationUnit?: ListFlagVersionsDurationUnit | undefined; allocationPercent?: number | undefined; allocationUnit: ListFlagVersionsAllocationUnit; primaryMetrics: Array<ListFlagVersionsPrimaryMetrics>; status: ListFlagVersionsStatus; }; export type ListFlagVersionsVariants = {}; export type ListFlagVersionsReuse = { active: boolean; environment: string; }; export type ListFlagVersionsTargets = { note?: string | undefined; value: string; }; export const ListFlagVersionsType = { Variant: "variant", } as const; export type ListFlagVersionsType = ClosedEnum<typeof ListFlagVersionsType>; export type ListFlagVersionsPausedOutcome = { type: ListFlagVersionsType; variantId: string; }; export const ListFlagVersionsFallthroughFeatureFlagsResponse200ApplicationJSONType = { Entity: "entity", } as const; export type ListFlagVersionsFallthroughFeatureFlagsResponse200ApplicationJSONType = ClosedEnum< typeof ListFlagVersionsFallthroughFeatureFlagsResponse200ApplicationJSONType >; export type ListFlagVersionsFallthroughFeatureFlagsBase = { type: ListFlagVersionsFallthroughFeatureFlagsResponse200ApplicationJSONType; kind: string; attribute: string; }; export type ListFlagVersionsFallthroughSlots = { promille: number; durationMs: number; }; export type ListFlagVersionsFallthrough3 = { type: "rollout"; base: ListFlagVersionsFallthroughFeatureFlagsBase; defaultVariantId: string; startTimestamp: number; rollFromVariantId: string; rollToVariantId: string; slots: Array<ListFlagVersionsFallthroughSlots>; }; export const ListFlagVersionsFallthroughFeatureFlagsResponse200Type = { Entity: "entity", } as const; export type ListFlagVersionsFallthroughFeatureFlagsResponse200Type = ClosedEnum< typeof ListFlagVersionsFallthroughFeatureFlagsResponse200Type >; export type ListFlagVersionsFallthroughBase = { type: ListFlagVersionsFallthroughFeatureFlagsResponse200Type; kind: string; attribute: string; }; export type ListFlagVersionsFallthrough2 = { type: "split"; base: ListFlagVersionsFallthroughBase; weights: { [k: string]: number }; defaultVariantId: string; }; export type ListFlagVersionsFallthrough1 = { type: "variant"; variantId: string; }; export type ListFlagVersionsFallthrough = | ListFlagVersionsFallthrough1 | ListFlagVersionsFallthrough2 | ListFlagVersionsFallthrough3; export const ListFlagVersionsOutcomeFeatureFlagsResponse200ApplicationJSONType = { Entity: "entity", } as const; export type ListFlagVersionsOutcomeFeatureFlagsResponse200ApplicationJSONType = ClosedEnum< typeof ListFlagVersionsOutcomeFeatureFlagsResponse200ApplicationJSONType >; export type ListFlagVersionsOutcomeFeatureFlagsBase = { type: ListFlagVersionsOutcomeFeatureFlagsResponse200ApplicationJSONType; kind: string; attribute: string; }; export type ListFlagVersionsOutcomeSlots = { promille: number; durationMs: number; }; export type ListFlagVersionsOutcome3 = { type: "rollout"; base: ListFlagVersionsOutcomeFeatureFlagsBase; defaultVariantId: string; startTimestamp: number; rollFromVariantId: string; rollToVariantId: string; slots: Array<ListFlagVersionsOutcomeSlots>; }; export const ListFlagVersionsOutcomeFeatureFlagsResponse200Type = { Entity: "entity", } as const; export type ListFlagVersionsOutcomeFeatureFlagsResponse200Type = ClosedEnum< typeof ListFlagVersionsOutcomeFeatureFlagsResponse200Type >; export type ListFlagVersionsOutcomeBase = { type: ListFlagVersionsOutcomeFeatureFlagsResponse200Type; kind: string; attribute: string; }; export type ListFlagVersionsOutcome2 = { type: "split"; base: ListFlagVersionsOutcomeBase; weights: { [k: string]: number }; defaultVariantId: string; }; export type ListFlagVersionsOutcome1 = { type: "variant"; variantId: string; }; export type ListFlagVersionsOutcome = | ListFlagVersionsOutcome1 | ListFlagVersionsOutcome2 | ListFlagVersionsOutcome3; export const ListFlagVersionsRhsFeatureFlagsType = { Regex: "regex", } as const; export type ListFlagVersionsRhsFeatureFlagsType = ClosedEnum< typeof ListFlagVersionsRhsFeatureFlagsType >; export type ListFlagVersionsRhs4 = { type: ListFlagVersionsRhsFeatureFlagsType; pattern: string; flags: string; }; export const ListFlagVersionsRhsType = { List: "list", ListInline: "list/inline", } as const; export type ListFlagVersionsRhsType = ClosedEnum< typeof ListFlagVersionsRhsType >; export type ListFlagVersionsItems2 = { label?: string | undefined; note?: string | undefined; value: string; }; export type ListFlagVersionsItems1 = { label?: string | undefined; note?: string | undefined; value: number; }; export type ListFlagVersionsRhsItems = | ListFlagVersionsItems1 | ListFlagVersionsItems2; export type ListFlagVersionsRhs3 = { type: ListFlagVersionsRhsType; items: Array<ListFlagVersionsItems1 | ListFlagVersionsItems2>; }; export type ListFlagVersionsRhs = | ListFlagVersionsRhs4 | ListFlagVersionsRhs3 | string | number | boolean; export type ListFlagVersionsCmpOptions = { ignoreCase?: boolean | undefined; }; export type ListFlagVersionsLhs2 = { type: "entity"; kind: string; attribute: string; }; export type ListFlagVersionsLhs1 = { type: "segment"; }; export type ListFlagVersionsLhs = ListFlagVersionsLhs1 | ListFlagVersionsLhs2; export const ListFlagVersionsCmp = { NotContains: "!contains", NotEndsWith: "!endsWith", NotEq: "!eq", NotEx: "!ex", NotOneOf: "!oneOf", NotRegex: "!regex", NotStartsWith: "!startsWith", After: "after", Before: "before", Contains: "contains", ContainsAllOf: "containsAllOf", ContainsAnyOf: "containsAnyOf", ContainsNoneOf: "containsNoneOf", EndsWith: "endsWith", Eq: "eq", Ex: "ex", Gt: "gt", Gte: "gte", Lt: "lt", Lte: "lte", OneOf: "oneOf", Regex: "regex", StartsWith: "startsWith", } as const; export type ListFlagVersionsCmp = ClosedEnum<typeof ListFlagVersionsCmp>; export type ListFlagVersionsConditions = { rhs?: | ListFlagVersionsRhs4 | ListFlagVersionsRhs3 | string | number | boolean | undefined; cmpOptions?: ListFlagVersionsCmpOptions | undefined; lhs: ListFlagVersionsLhs1 | ListFlagVersionsLhs2; cmp: ListFlagVersionsCmp; }; export type ListFlagVersionsRules = { id: string; outcome: | ListFlagVersionsOutcome1 | ListFlagVersionsOutcome2 | ListFlagVersionsOutcome3; conditions: Array<ListFlagVersionsConditions>; }; export type ListFlagVersionsEnvironments = { reuse?: ListFlagVersionsReuse | undefined; targets?: { [k: string]: { [k: string]: { [k: string]: Array<ListFlagVersionsTargets> }; }; } | undefined; revision?: number | undefined; pausedOutcome: ListFlagVersionsPausedOutcome; fallthrough: | ListFlagVersionsFallthrough1 | ListFlagVersionsFallthrough2 | ListFlagVersionsFallthrough3; active: boolean; rules: Array<ListFlagVersionsRules>; }; export const ListFlagVersionsState = { Active: "active", Archived: "archived", } as const; export type ListFlagVersionsState = ClosedEnum<typeof ListFlagVersionsState>; export type ListFlagVersionsData = { description?: string | undefined; maintainerIds?: Array<string> | undefined; permanent?: boolean | undefined; tags?: Array<string> | undefined; experiment?: ListFlagVersionsExperiment | undefined; variants: Array<ListFlagVersionsVariants>; environments: { [k: string]: ListFlagVersionsEnvironments }; seed: number; state: ListFlagVersionsState; }; export type ListFlagVersionsCreator = { id: string; name: string; }; export type ListFlagVersionsMetadata = { creator?: ListFlagVersionsCreator | undefined; }; export type ListFlagVersionsVersions = { createdBy?: string | undefined; message?: string | undefined; data: ListFlagVersionsData; id: string; revision: number; createdAt: number; flagId: string; changedEnvironments: Array<string>; metadata?: ListFlagVersionsMetadata | undefined; }; export type ListFlagVersionsPagination = {}; export type ListFlagVersionsResponseBody = { versions: Array<ListFlagVersionsVersions>; pagination: ListFlagVersionsPagination; }; /** @internal */ export type ListFlagVersionsRequest$Outbound = { projectIdOrName: string; flagIdOrSlug: string; limit: number; cursor?: string | undefined; environment?: string | undefined; withMetadata: boolean; teamId?: string | undefined; slug?: string | undefined; }; /** @internal */ export const ListFlagVersionsRequest$outboundSchema: z.ZodType< ListFlagVersionsRequest$Outbound, z.ZodTypeDef, ListFlagVersionsRequest > = z.object({ projectIdOrName: z.string(), flagIdOrSlug: z.string(), limit: z.number().default(20), cursor: z.string().optional(), environment: z.string().optional(), withMetadata: z.boolean().default(false), teamId: z.string().optional(), slug: z.string().optional(), }); export function listFlagVersionsRequestToJSON( listFlagVersionsRequest: ListFlagVersionsRequest, ): string { return JSON.stringify( ListFlagVersionsRequest$outboundSchema.parse(listFlagVersionsRequest), ); } /** @internal */ export const ListFlagVersionsMetricType$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsMetricType > = z.nativeEnum(ListFlagVersionsMetricType); /** @internal */ export const ListFlagVersionsMetricUnit$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsMetricUnit > = z.nativeEnum(ListFlagVersionsMetricUnit); /** @internal */ export const ListFlagVersionsDirectionality$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsDirectionality > = z.nativeEnum(ListFlagVersionsDirectionality); /** @internal */ export const ListFlagVersionsGuardrailMetrics$inboundSchema: z.ZodType< ListFlagVersionsGuardrailMetrics, z.ZodTypeDef, unknown > = z.object({ description: types.optional(types.string()), metricFormula: types.optional(types.string()), name: types.string(), metricType: ListFlagVersionsMetricType$inboundSchema, metricUnit: ListFlagVersionsMetricUnit$inboundSchema, directionality: ListFlagVersionsDirectionality$inboundSchema, }); export function listFlagVersionsGuardrailMetricsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsGuardrailMetrics, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsGuardrailMetrics$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsGuardrailMetrics' from JSON`, ); } /** @internal */ export const ListFlagVersionsDevice$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsDevice > = z.nativeEnum(ListFlagVersionsDevice); /** @internal */ export const ListFlagVersionsDurationUnit$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsDurationUnit > = z.nativeEnum(ListFlagVersionsDurationUnit); /** @internal */ export const ListFlagVersionsAllocationUnit$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsAllocationUnit > = z.nativeEnum(ListFlagVersionsAllocationUnit); /** @internal */ export const ListFlagVersionsFeatureFlagsMetricType$inboundSchema: z.ZodNativeEnum<typeof ListFlagVersionsFeatureFlagsMetricType> = z.nativeEnum( ListFlagVersionsFeatureFlagsMetricType, ); /** @internal */ export const ListFlagVersionsFeatureFlagsMetricUnit$inboundSchema: z.ZodNativeEnum<typeof ListFlagVersionsFeatureFlagsMetricUnit> = z.nativeEnum( ListFlagVersionsFeatureFlagsMetricUnit, ); /** @internal */ export const ListFlagVersionsFeatureFlagsDirectionality$inboundSchema: z.ZodNativeEnum<typeof ListFlagVersionsFeatureFlagsDirectionality> = z .nativeEnum(ListFlagVersionsFeatureFlagsDirectionality); /** @internal */ export const ListFlagVersionsPrimaryMetrics$inboundSchema: z.ZodType< ListFlagVersionsPrimaryMetrics, z.ZodTypeDef, unknown > = z.object({ description: types.optional(types.string()), metricFormula: types.optional(types.string()), name: types.string(), metricType: ListFlagVersionsFeatureFlagsMetricType$inboundSchema, metricUnit: ListFlagVersionsFeatureFlagsMetricUnit$inboundSchema, directionality: ListFlagVersionsFeatureFlagsDirectionality$inboundSchema, }); export function listFlagVersionsPrimaryMetricsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsPrimaryMetrics, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsPrimaryMetrics$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsPrimaryMetrics' from JSON`, ); } /** @internal */ export const ListFlagVersionsStatus$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsStatus > = z.nativeEnum(ListFlagVersionsStatus); /** @internal */ export const ListFlagVersionsExperiment$inboundSchema: z.ZodType< ListFlagVersionsExperiment, z.ZodTypeDef, unknown > = z.object({ id: types.optional(types.string()), name: types.optional(types.string()), numVariants: types.optional(types.number()), surfaceArea: types.optional(types.string()), stickyRequirement: types.optional(types.boolean()), layer: types.optional(types.string()), guardrailMetrics: types.optional( z.array(z.lazy(() => ListFlagVersionsGuardrailMetrics$inboundSchema)), ), hypothesis: types.optional(types.string()), device: types.optional(ListFlagVersionsDevice$inboundSchema), controlVariantId: types.optional(types.string()), startedAt: types.optional(types.number()), endedAt: types.optional(types.number()), decision: types.optional(types.string()), decisionReason: types.optional(types.string()), duration: types.optional(types.number()), durationUnit: types.optional(ListFlagVersionsDurationUnit$inboundSchema), allocationPercent: types.optional(types.number()), allocationUnit: ListFlagVersionsAllocationUnit$inboundSchema, primaryMetrics: z.array( z.lazy(() => ListFlagVersionsPrimaryMetrics$inboundSchema), ), status: ListFlagVersionsStatus$inboundSchema, }); export function listFlagVersionsExperimentFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsExperiment, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsExperiment$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsExperiment' from JSON`, ); } /** @internal */ export const ListFlagVersionsVariants$inboundSchema: z.ZodType< ListFlagVersionsVariants, z.ZodTypeDef, unknown > = z.object({}); export function listFlagVersionsVariantsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsVariants, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsVariants$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsVariants' from JSON`, ); } /** @internal */ export const ListFlagVersionsReuse$inboundSchema: z.ZodType< ListFlagVersionsReuse, z.ZodTypeDef, unknown > = z.object({ active: types.boolean(), environment: types.string(), }); export function listFlagVersionsReuseFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsReuse, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsReuse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsReuse' from JSON`, ); } /** @internal */ export const ListFlagVersionsTargets$inboundSchema: z.ZodType< ListFlagVersionsTargets, z.ZodTypeDef, unknown > = z.object({ note: types.optional(types.string()), value: types.string(), }); export function listFlagVersionsTargetsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsTargets, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsTargets$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsTargets' from JSON`, ); } /** @internal */ export const ListFlagVersionsType$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsType > = z.nativeEnum(ListFlagVersionsType); /** @internal */ export const ListFlagVersionsPausedOutcome$inboundSchema: z.ZodType< ListFlagVersionsPausedOutcome, z.ZodTypeDef, unknown > = z.object({ type: ListFlagVersionsType$inboundSchema, variantId: types.string(), }); export function listFlagVersionsPausedOutcomeFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsPausedOutcome, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsPausedOutcome$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsPausedOutcome' from JSON`, ); } /** @internal */ export const ListFlagVersionsFallthroughFeatureFlagsResponse200ApplicationJSONType$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsFallthroughFeatureFlagsResponse200ApplicationJSONType > = z.nativeEnum( ListFlagVersionsFallthroughFeatureFlagsResponse200ApplicationJSONType, ); /** @internal */ export const ListFlagVersionsFallthroughFeatureFlagsBase$inboundSchema: z.ZodType< ListFlagVersionsFallthroughFeatureFlagsBase, z.ZodTypeDef, unknown > = z.object({ type: ListFlagVersionsFallthroughFeatureFlagsResponse200ApplicationJSONType$inboundSchema, kind: types.string(), attribute: types.string(), }); export function listFlagVersionsFallthroughFeatureFlagsBaseFromJSON( jsonString: string, ): SafeParseResult< ListFlagVersionsFallthroughFeatureFlagsBase, SDKValidationError > { return safeParse( jsonString, (x) => ListFlagVersionsFallthroughFeatureFlagsBase$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'ListFlagVersionsFallthroughFeatureFlagsBase' from JSON`, ); } /** @internal */ export const ListFlagVersionsFallthroughSlots$inboundSchema: z.ZodType< ListFlagVersionsFallthroughSlots, z.ZodTypeDef, unknown > = z.object({ promille: types.number(), durationMs: types.number(), }); export function listFlagVersionsFallthroughSlotsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsFallthroughSlots, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsFallthroughSlots$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsFallthroughSlots' from JSON`, ); } /** @internal */ export const ListFlagVersionsFallthrough3$inboundSchema: z.ZodType< ListFlagVersionsFallthrough3, z.ZodTypeDef, unknown > = z.object({ type: types.literal("rollout"), base: z.lazy(() => ListFlagVersionsFallthroughFeatureFlagsBase$inboundSchema), defaultVariantId: types.string(), startTimestamp: types.number(), rollFromVariantId: types.string(), rollToVariantId: types.string(), slots: z.array(z.lazy(() => ListFlagVersionsFallthroughSlots$inboundSchema)), }); export function listFlagVersionsFallthrough3FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsFallthrough3, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsFallthrough3$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsFallthrough3' from JSON`, ); } /** @internal */ export const ListFlagVersionsFallthroughFeatureFlagsResponse200Type$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsFallthroughFeatureFlagsResponse200Type > = z.nativeEnum(ListFlagVersionsFallthroughFeatureFlagsResponse200Type); /** @internal */ export const ListFlagVersionsFallthroughBase$inboundSchema: z.ZodType< ListFlagVersionsFallthroughBase, z.ZodTypeDef, unknown > = z.object({ type: ListFlagVersionsFallthroughFeatureFlagsResponse200Type$inboundSchema, kind: types.string(), attribute: types.string(), }); export function listFlagVersionsFallthroughBaseFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsFallthroughBase, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsFallthroughBase$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsFallthroughBase' from JSON`, ); } /** @internal */ export const ListFlagVersionsFallthrough2$inboundSchema: z.ZodType< ListFlagVersionsFallthrough2, z.ZodTypeDef, unknown > = z.object({ type: types.literal("split"), base: z.lazy(() => ListFlagVersionsFallthroughBase$inboundSchema), weights: z.record(types.number()), defaultVariantId: types.string(), }); export function listFlagVersionsFallthrough2FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsFallthrough2, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsFallthrough2$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsFallthrough2' from JSON`, ); } /** @internal */ export const ListFlagVersionsFallthrough1$inboundSchema: z.ZodType< ListFlagVersionsFallthrough1, z.ZodTypeDef, unknown > = z.object({ type: types.literal("variant"), variantId: types.string(), }); export function listFlagVersionsFallthrough1FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsFallthrough1, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsFallthrough1$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsFallthrough1' from JSON`, ); } /** @internal */ export const ListFlagVersionsFallthrough$inboundSchema: z.ZodType< ListFlagVersionsFallthrough, z.ZodTypeDef, unknown > = z.union([ z.lazy(() => ListFlagVersionsFallthrough1$inboundSchema), z.lazy(() => ListFlagVersionsFallthrough2$inboundSchema), z.lazy(() => ListFlagVersionsFallthrough3$inboundSchema), ]); export function listFlagVersionsFallthroughFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsFallthrough, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsFallthrough$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsFallthrough' from JSON`, ); } /** @internal */ export const ListFlagVersionsOutcomeFeatureFlagsResponse200ApplicationJSONType$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsOutcomeFeatureFlagsResponse200ApplicationJSONType > = z.nativeEnum( ListFlagVersionsOutcomeFeatureFlagsResponse200ApplicationJSONType, ); /** @internal */ export const ListFlagVersionsOutcomeFeatureFlagsBase$inboundSchema: z.ZodType< ListFlagVersionsOutcomeFeatureFlagsBase, z.ZodTypeDef, unknown > = z.object({ type: ListFlagVersionsOutcomeFeatureFlagsResponse200ApplicationJSONType$inboundSchema, kind: types.string(), attribute: types.string(), }); export function listFlagVersionsOutcomeFeatureFlagsBaseFromJSON( jsonString: string, ): SafeParseResult< ListFlagVersionsOutcomeFeatureFlagsBase, SDKValidationError > { return safeParse( jsonString, (x) => ListFlagVersionsOutcomeFeatureFlagsBase$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'ListFlagVersionsOutcomeFeatureFlagsBase' from JSON`, ); } /** @internal */ export const ListFlagVersionsOutcomeSlots$inboundSchema: z.ZodType< ListFlagVersionsOutcomeSlots, z.ZodTypeDef, unknown > = z.object({ promille: types.number(), durationMs: types.number(), }); export function listFlagVersionsOutcomeSlotsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsOutcomeSlots, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsOutcomeSlots$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsOutcomeSlots' from JSON`, ); } /** @internal */ export const ListFlagVersionsOutcome3$inboundSchema: z.ZodType< ListFlagVersionsOutcome3, z.ZodTypeDef, unknown > = z.object({ type: types.literal("rollout"), base: z.lazy(() => ListFlagVersionsOutcomeFeatureFlagsBase$inboundSchema), defaultVariantId: types.string(), startTimestamp: types.number(), rollFromVariantId: types.string(), rollToVariantId: types.string(), slots: z.array(z.lazy(() => ListFlagVersionsOutcomeSlots$inboundSchema)), }); export function listFlagVersionsOutcome3FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsOutcome3, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsOutcome3$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsOutcome3' from JSON`, ); } /** @internal */ export const ListFlagVersionsOutcomeFeatureFlagsResponse200Type$inboundSchema: z.ZodNativeEnum<typeof ListFlagVersionsOutcomeFeatureFlagsResponse200Type> = z .nativeEnum(ListFlagVersionsOutcomeFeatureFlagsResponse200Type); /** @internal */ export const ListFlagVersionsOutcomeBase$inboundSchema: z.ZodType< ListFlagVersionsOutcomeBase, z.ZodTypeDef, unknown > = z.object({ type: ListFlagVersionsOutcomeFeatureFlagsResponse200Type$inboundSchema, kind: types.string(), attribute: types.string(), }); export function listFlagVersionsOutcomeBaseFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsOutcomeBase, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsOutcomeBase$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsOutcomeBase' from JSON`, ); } /** @internal */ export const ListFlagVersionsOutcome2$inboundSchema: z.ZodType< ListFlagVersionsOutcome2, z.ZodTypeDef, unknown > = z.object({ type: types.literal("split"), base: z.lazy(() => ListFlagVersionsOutcomeBase$inboundSchema), weights: z.record(types.number()), defaultVariantId: types.string(), }); export function listFlagVersionsOutcome2FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsOutcome2, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsOutcome2$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsOutcome2' from JSON`, ); } /** @internal */ export const ListFlagVersionsOutcome1$inboundSchema: z.ZodType< ListFlagVersionsOutcome1, z.ZodTypeDef, unknown > = z.object({ type: types.literal("variant"), variantId: types.string(), }); export function listFlagVersionsOutcome1FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsOutcome1, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsOutcome1$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsOutcome1' from JSON`, ); } /** @internal */ export const ListFlagVersionsOutcome$inboundSchema: z.ZodType< ListFlagVersionsOutcome, z.ZodTypeDef, unknown > = z.union([ z.lazy(() => ListFlagVersionsOutcome1$inboundSchema), z.lazy(() => ListFlagVersionsOutcome2$inboundSchema), z.lazy(() => ListFlagVersionsOutcome3$inboundSchema), ]); export function listFlagVersionsOutcomeFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsOutcome, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsOutcome$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsOutcome' from JSON`, ); } /** @internal */ export const ListFlagVersionsRhsFeatureFlagsType$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsRhsFeatureFlagsType > = z.nativeEnum(ListFlagVersionsRhsFeatureFlagsType); /** @internal */ export const ListFlagVersionsRhs4$inboundSchema: z.ZodType< ListFlagVersionsRhs4, z.ZodTypeDef, unknown > = z.object({ type: ListFlagVersionsRhsFeatureFlagsType$inboundSchema, pattern: types.string(), flags: types.string(), }); export function listFlagVersionsRhs4FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsRhs4, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsRhs4$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsRhs4' from JSON`, ); } /** @internal */ export const ListFlagVersionsRhsType$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsRhsType > = z.nativeEnum(ListFlagVersionsRhsType); /** @internal */ export const ListFlagVersionsItems2$inboundSchema: z.ZodType< ListFlagVersionsItems2, z.ZodTypeDef, unknown > = z.object({ label: types.optional(types.string()), note: types.optional(types.string()), value: types.string(), }); export function listFlagVersionsItems2FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsItems2, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsItems2$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsItems2' from JSON`, ); } /** @internal */ export const ListFlagVersionsItems1$inboundSchema: z.ZodType< ListFlagVersionsItems1, z.ZodTypeDef, unknown > = z.object({ label: types.optional(types.string()), note: types.optional(types.string()), value: types.number(), }); export function listFlagVersionsItems1FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsItems1, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsItems1$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsItems1' from JSON`, ); } /** @internal */ export const ListFlagVersionsRhsItems$inboundSchema: z.ZodType< ListFlagVersionsRhsItems, z.ZodTypeDef, unknown > = smartUnion([ z.lazy(() => ListFlagVersionsItems1$inboundSchema), z.lazy(() => ListFlagVersionsItems2$inboundSchema), ]); export function listFlagVersionsRhsItemsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsRhsItems, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsRhsItems$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsRhsItems' from JSON`, ); } /** @internal */ export const ListFlagVersionsRhs3$inboundSchema: z.ZodType< ListFlagVersionsRhs3, z.ZodTypeDef, unknown > = z.object({ type: ListFlagVersionsRhsType$inboundSchema, items: z.array( smartUnion([ z.lazy(() => ListFlagVersionsItems1$inboundSchema), z.lazy(() => ListFlagVersionsItems2$inboundSchema), ]), ), }); export function listFlagVersionsRhs3FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsRhs3, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsRhs3$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsRhs3' from JSON`, ); } /** @internal */ export const ListFlagVersionsRhs$inboundSchema: z.ZodType< ListFlagVersionsRhs, z.ZodTypeDef, unknown > = smartUnion([ z.lazy(() => ListFlagVersionsRhs4$inboundSchema), z.lazy(() => ListFlagVersionsRhs3$inboundSchema), types.string(), types.number(), types.boolean(), ]); export function listFlagVersionsRhsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsRhs, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsRhs$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsRhs' from JSON`, ); } /** @internal */ export const ListFlagVersionsCmpOptions$inboundSchema: z.ZodType< ListFlagVersionsCmpOptions, z.ZodTypeDef, unknown > = z.object({ ignoreCase: types.optional(types.boolean()), }); export function listFlagVersionsCmpOptionsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsCmpOptions, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsCmpOptions$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsCmpOptions' from JSON`, ); } /** @internal */ export const ListFlagVersionsLhs2$inboundSchema: z.ZodType< ListFlagVersionsLhs2, z.ZodTypeDef, unknown > = z.object({ type: types.literal("entity"), kind: types.string(), attribute: types.string(), }); export function listFlagVersionsLhs2FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsLhs2, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsLhs2$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsLhs2' from JSON`, ); } /** @internal */ export const ListFlagVersionsLhs1$inboundSchema: z.ZodType< ListFlagVersionsLhs1, z.ZodTypeDef, unknown > = z.object({ type: types.literal("segment"), }); export function listFlagVersionsLhs1FromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsLhs1, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsLhs1$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsLhs1' from JSON`, ); } /** @internal */ export const ListFlagVersionsLhs$inboundSchema: z.ZodType< ListFlagVersionsLhs, z.ZodTypeDef, unknown > = z.union([ z.lazy(() => ListFlagVersionsLhs1$inboundSchema), z.lazy(() => ListFlagVersionsLhs2$inboundSchema), ]); export function listFlagVersionsLhsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsLhs, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsLhs$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsLhs' from JSON`, ); } /** @internal */ export const ListFlagVersionsCmp$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsCmp > = z.nativeEnum(ListFlagVersionsCmp); /** @internal */ export const ListFlagVersionsConditions$inboundSchema: z.ZodType< ListFlagVersionsConditions, z.ZodTypeDef, unknown > = z.object({ rhs: types.optional( smartUnion([ z.lazy(() => ListFlagVersionsRhs4$inboundSchema), z.lazy(() => ListFlagVersionsRhs3$inboundSchema), types.string(), types.number(), types.boolean(), ]), ), cmpOptions: types.optional( z.lazy(() => ListFlagVersionsCmpOptions$inboundSchema), ), lhs: z.union([ z.lazy(() => ListFlagVersionsLhs1$inboundSchema), z.lazy(() => ListFlagVersionsLhs2$inboundSchema), ]), cmp: ListFlagVersionsCmp$inboundSchema, }); export function listFlagVersionsConditionsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsConditions, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsConditions$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsConditions' from JSON`, ); } /** @internal */ export const ListFlagVersionsRules$inboundSchema: z.ZodType< ListFlagVersionsRules, z.ZodTypeDef, unknown > = z.object({ id: types.string(), outcome: z.union([ z.lazy(() => ListFlagVersionsOutcome1$inboundSchema), z.lazy(() => ListFlagVersionsOutcome2$inboundSchema), z.lazy(() => ListFlagVersionsOutcome3$inboundSchema), ]), conditions: z.array(z.lazy(() => ListFlagVersionsConditions$inboundSchema)), }); export function listFlagVersionsRulesFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsRules, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsRules$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsRules' from JSON`, ); } /** @internal */ export const ListFlagVersionsEnvironments$inboundSchema: z.ZodType< ListFlagVersionsEnvironments, z.ZodTypeDef, unknown > = z.object({ reuse: types.optional(z.lazy(() => ListFlagVersionsReuse$inboundSchema)), targets: types.optional( z.record(z.record(z.record(z.array(z.lazy(() => ListFlagVersionsTargets$inboundSchema ))))), ), revision: types.optional(types.number()), pausedOutcome: z.lazy(() => ListFlagVersionsPausedOutcome$inboundSchema), fallthrough: z.union([ z.lazy(() => ListFlagVersionsFallthrough1$inboundSchema), z.lazy(() => ListFlagVersionsFallthrough2$inboundSchema), z.lazy(() => ListFlagVersionsFallthrough3$inboundSchema), ]), active: types.boolean(), rules: z.array(z.lazy(() => ListFlagVersionsRules$inboundSchema)), }); export function listFlagVersionsEnvironmentsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsEnvironments, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsEnvironments$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsEnvironments' from JSON`, ); } /** @internal */ export const ListFlagVersionsState$inboundSchema: z.ZodNativeEnum< typeof ListFlagVersionsState > = z.nativeEnum(ListFlagVersionsState); /** @internal */ export const ListFlagVersionsData$inboundSchema: z.ZodType< ListFlagVersionsData, z.ZodTypeDef, unknown > = z.object({ description: types.optional(types.string()), maintainerIds: types.optional(z.array(types.string())), permanent: types.optional(types.boolean()), tags: types.optional(z.array(types.string())), experiment: types.optional( z.lazy(() => ListFlagVersionsExperiment$inboundSchema), ), variants: z.array(z.lazy(() => ListFlagVersionsVariants$inboundSchema)), environments: z.record( z.lazy(() => ListFlagVersionsEnvironments$inboundSchema), ), seed: types.number(), state: ListFlagVersionsState$inboundSchema, }); export function listFlagVersionsDataFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsData, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsData$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsData' from JSON`, ); } /** @internal */ export const ListFlagVersionsCreator$inboundSchema: z.ZodType< ListFlagVersionsCreator, z.ZodTypeDef, unknown > = z.object({ id: types.string(), name: types.string(), }); export function listFlagVersionsCreatorFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsCreator, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsCreator$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsCreator' from JSON`, ); } /** @internal */ export const ListFlagVersionsMetadata$inboundSchema: z.ZodType< ListFlagVersionsMetadata, z.ZodTypeDef, unknown > = z.object({ creator: types.optional(z.lazy(() => ListFlagVersionsCreator$inboundSchema)), }); export function listFlagVersionsMetadataFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsMetadata, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsMetadata$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsMetadata' from JSON`, ); } /** @internal */ export const ListFlagVersionsVersions$inboundSchema: z.ZodType< ListFlagVersionsVersions, z.ZodTypeDef, unknown > = z.object({ createdBy: types.optional(types.string()), message: types.optional(types.string()), data: z.lazy(() => ListFlagVersionsData$inboundSchema), id: types.string(), revision: types.number(), createdAt: types.number(), flagId: types.string(), changedEnvironments: z.array(types.string()), metadata: types.optional( z.lazy(() => ListFlagVersionsMetadata$inboundSchema), ), }); export function listFlagVersionsVersionsFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsVersions, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsVersions$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsVersions' from JSON`, ); } /** @internal */ export const ListFlagVersionsPagination$inboundSchema: z.ZodType< ListFlagVersionsPagination, z.ZodTypeDef, unknown > = z.object({}); export function listFlagVersionsPaginationFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsPagination, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsPagination$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsPagination' from JSON`, ); } /** @internal */ export const ListFlagVersionsResponseBody$inboundSchema: z.ZodType< ListFlagVersionsResponseBody, z.ZodTypeDef, unknown > = z.object({ versions: z.array(z.lazy(() => ListFlagVersionsVersions$inboundSchema)), pagination: z.lazy(() => ListFlagVersionsPagination$inboundSchema), }); export function listFlagVersionsResponseBodyFromJSON( jsonString: string, ): SafeParseResult<ListFlagVersionsResponseBody, SDKValidationError> { return safeParse( jsonString, (x) => ListFlagVersionsResponseBody$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ListFlagVersionsResponseBody' from JSON`, ); }