/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod"; export type HoldoutDto = { /** * ID */ id: string; /** * Optional name for the configuration. */ name?: string | undefined; /** * type of id */ idType: string; /** * brief summary of what the holdout is being used for */ description: string; /** * ID of the last modifier. */ lastModifierID?: any | null | undefined; /** * Time of the last modification. */ lastModifiedTime?: any | null | undefined; /** * Email of the last modifier. */ lastModifierEmail?: any | null | undefined; /** * Name of the last modifier. */ lastModifierName?: any | null | undefined; /** * ID of the user who created the entity. */ creatorID?: any | null | undefined; /** * Timestamp when the entity was created. */ createdTime: number; /** * Name of the creator. */ creatorName?: any | null | undefined; /** * Email of the creator. */ creatorEmail?: any | null | undefined; /** * Optional tags for categorization. */ tags?: Array | undefined; /** * List of target applications associated with this configuration. */ targetApps?: Array | undefined; /** * Holdouts applied to this configuration. */ holdoutIDs?: Array | undefined; /** * Optional identifier for the responsible team. */ team?: any | null | undefined; /** * enable or disable the holdout */ isEnabled: boolean; /** * percentage of users between 0-10% to pass through the holdout */ passPercentage: number; /** * an array of gateIDs which this holdout is applied to */ gateIDs: Array; /** * an array of experimentIDs which this holdout is applied to */ experimentIDs: Array; /** * an array of layerIDs which this holdout is applied to */ layerIDs: Array; /** * whether the holdout is being applied to all new gates */ isGlobal: boolean; /** * the gateID that the holdout is targeting */ targetingGateID?: any | null | undefined; }; /** @internal */ export const HoldoutDto$inboundSchema: z.ZodType = z.object({ id: z.string(), name: z.string().optional(), idType: z.string(), description: z.string(), lastModifierID: z.nullable(z.any()).optional(), lastModifiedTime: z.nullable(z.any()).optional(), lastModifierEmail: z.nullable(z.any()).optional(), lastModifierName: z.nullable(z.any()).optional(), creatorID: z.nullable(z.any()).optional(), createdTime: z.number(), creatorName: z.nullable(z.any()).optional(), creatorEmail: z.nullable(z.any()).optional(), tags: z.array(z.string()).optional(), targetApps: z.array(z.string()).optional(), holdoutIDs: z.array(z.string()).optional(), team: z.nullable(z.any()).optional(), isEnabled: z.boolean(), passPercentage: z.number(), gateIDs: z.array(z.string()), experimentIDs: z.array(z.string()), layerIDs: z.array(z.string()), isGlobal: z.boolean(), targetingGateID: z.nullable(z.any()).optional(), }); /** @internal */ export type HoldoutDto$Outbound = { id: string; name?: string | undefined; idType: string; description: string; lastModifierID?: any | null | undefined; lastModifiedTime?: any | null | undefined; lastModifierEmail?: any | null | undefined; lastModifierName?: any | null | undefined; creatorID?: any | null | undefined; createdTime: number; creatorName?: any | null | undefined; creatorEmail?: any | null | undefined; tags?: Array | undefined; targetApps?: Array | undefined; holdoutIDs?: Array | undefined; team?: any | null | undefined; isEnabled: boolean; passPercentage: number; gateIDs: Array; experimentIDs: Array; layerIDs: Array; isGlobal: boolean; targetingGateID?: any | null | undefined; }; /** @internal */ export const HoldoutDto$outboundSchema: z.ZodType = z.object({ id: z.string(), name: z.string().optional(), idType: z.string(), description: z.string(), lastModifierID: z.nullable(z.any()).optional(), lastModifiedTime: z.nullable(z.any()).optional(), lastModifierEmail: z.nullable(z.any()).optional(), lastModifierName: z.nullable(z.any()).optional(), creatorID: z.nullable(z.any()).optional(), createdTime: z.number(), creatorName: z.nullable(z.any()).optional(), creatorEmail: z.nullable(z.any()).optional(), tags: z.array(z.string()).optional(), targetApps: z.array(z.string()).optional(), holdoutIDs: z.array(z.string()).optional(), team: z.nullable(z.any()).optional(), isEnabled: z.boolean(), passPercentage: z.number(), gateIDs: z.array(z.string()), experimentIDs: z.array(z.string()), layerIDs: z.array(z.string()), isGlobal: z.boolean(), targetingGateID: z.nullable(z.any()).optional(), }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace HoldoutDto$ { /** @deprecated use `HoldoutDto$inboundSchema` instead. */ export const inboundSchema = HoldoutDto$inboundSchema; /** @deprecated use `HoldoutDto$outboundSchema` instead. */ export const outboundSchema = HoldoutDto$outboundSchema; /** @deprecated use `HoldoutDto$Outbound` instead. */ export type Outbound = HoldoutDto$Outbound; }