/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { ClosedEnum } from "../../types/enums.js"; import * as z from "zod"; /** * Allowed: count┃sum┃mean┃daily_participation┃ratio┃funnel┃count_distinct┃percentile */ export const MetricsUpdateContractDtoAggregation = { Count: "count", Sum: "sum", Mean: "mean", DailyParticipation: "daily_participation", Ratio: "ratio", Funnel: "funnel", CountDistinct: "count_distinct", Percentile: "percentile", Unknown: "", } as const; /** * Allowed: count┃sum┃mean┃daily_participation┃ratio┃funnel┃count_distinct┃percentile */ export type MetricsUpdateContractDtoAggregation = ClosedEnum< typeof MetricsUpdateContractDtoAggregation >; /** * Type of event criterion for filtering metrics. Options include `value`, `metadata`, `user`, and `user_custom`. */ export const MetricsUpdateContractDtoType = { Value: "value", Metadata: "metadata", User: "user", UserCustom: "user_custom", } as const; /** * Type of event criterion for filtering metrics. Options include `value`, `metadata`, `user`, and `user_custom`. */ export type MetricsUpdateContractDtoType = ClosedEnum; /** * sql_filter, start_withs, ends_with, and after_exposure are only applicable in Warehouse Native */ export const MetricsUpdateContractDtoCondition = { In: "in", NotIn: "not_in", Equal: "=", GreaterThan: ">", LessThan: "<", GreaterThanEqual: ">=", LessThanEqual: "<=", IsNull: "is_null", NonNull: "non_null", Contains: "contains", NotContains: "not_contains", SqlFilter: "sql_filter", StartsWith: "starts_with", EndsWith: "ends_with", AfterExposure: "after_exposure", } as const; /** * sql_filter, start_withs, ends_with, and after_exposure are only applicable in Warehouse Native */ export type MetricsUpdateContractDtoCondition = ClosedEnum< typeof MetricsUpdateContractDtoCondition >; export type MetricsUpdateContractDtoCriteria = { /** * Type of event criterion for filtering metrics. Options include `value`, `metadata`, `user`, and `user_custom`. */ type: MetricsUpdateContractDtoType; /** * Optional column specifying which data attribute to filter on. */ column?: string | undefined; /** * sql_filter, start_withs, ends_with, and after_exposure are only applicable in Warehouse Native */ condition: MetricsUpdateContractDtoCondition; /** * Optional array of values for the criterion to match against. */ values?: Array | undefined; /** * If true, overrides null values in criterion evaluation. */ nullVacuousOverride?: boolean | undefined; }; /** * Type of event criterion for filtering metrics. Options include `value`, `metadata`, `user`, and `user_custom`. */ export const MetricsUpdateContractDtoWarehouseNativeType = { Value: "value", Metadata: "metadata", User: "user", UserCustom: "user_custom", } as const; /** * Type of event criterion for filtering metrics. Options include `value`, `metadata`, `user`, and `user_custom`. */ export type MetricsUpdateContractDtoWarehouseNativeType = ClosedEnum< typeof MetricsUpdateContractDtoWarehouseNativeType >; /** * sql_filter, start_withs, ends_with, and after_exposure are only applicable in Warehouse Native */ export const MetricsUpdateContractDtoWarehouseNativeCondition = { In: "in", NotIn: "not_in", Equal: "=", GreaterThan: ">", LessThan: "<", GreaterThanEqual: ">=", LessThanEqual: "<=", IsNull: "is_null", NonNull: "non_null", Contains: "contains", NotContains: "not_contains", SqlFilter: "sql_filter", StartsWith: "starts_with", EndsWith: "ends_with", AfterExposure: "after_exposure", } as const; /** * sql_filter, start_withs, ends_with, and after_exposure are only applicable in Warehouse Native */ export type MetricsUpdateContractDtoWarehouseNativeCondition = ClosedEnum< typeof MetricsUpdateContractDtoWarehouseNativeCondition >; export type MetricsUpdateContractDtoDenominatorCriteria = { /** * Type of event criterion for filtering metrics. Options include `value`, `metadata`, `user`, and `user_custom`. */ type: MetricsUpdateContractDtoWarehouseNativeType; /** * Optional column specifying which data attribute to filter on. */ column?: string | undefined; /** * sql_filter, start_withs, ends_with, and after_exposure are only applicable in Warehouse Native */ condition: MetricsUpdateContractDtoWarehouseNativeCondition; /** * Optional array of values for the criterion to match against. */ values?: Array | undefined; /** * If true, overrides null values in criterion evaluation. */ nullVacuousOverride?: boolean | undefined; }; /** * Allowed: count┃sum┃mean┃daily_participation┃ratio┃funnel┃count_distinct┃percentile */ export const MetricsUpdateContractDtoDenominatorAggregation = { Count: "count", Sum: "sum", Mean: "mean", DailyParticipation: "daily_participation", Ratio: "ratio", Funnel: "funnel", CountDistinct: "count_distinct", Percentile: "percentile", Unknown: "", } as const; /** * Allowed: count┃sum┃mean┃daily_participation┃ratio┃funnel┃count_distinct┃percentile */ export type MetricsUpdateContractDtoDenominatorAggregation = ClosedEnum< typeof MetricsUpdateContractDtoDenominatorAggregation >; /** * Allowed: users┃sessions for distinct count method in funnel events. */ export const MetricsUpdateContractDtoFunnelCountDistinct = { Sessions: "sessions", Users: "users", } as const; /** * Allowed: users┃sessions for distinct count method in funnel events. */ export type MetricsUpdateContractDtoFunnelCountDistinct = ClosedEnum< typeof MetricsUpdateContractDtoFunnelCountDistinct >; /** * Type of event criterion for filtering metrics. Options include `value`, `metadata`, `user`, and `user_custom`. */ export const MetricsUpdateContractDtoWarehouseNativeFunnelEventsType = { Value: "value", Metadata: "metadata", User: "user", UserCustom: "user_custom", } as const; /** * Type of event criterion for filtering metrics. Options include `value`, `metadata`, `user`, and `user_custom`. */ export type MetricsUpdateContractDtoWarehouseNativeFunnelEventsType = ClosedEnum< typeof MetricsUpdateContractDtoWarehouseNativeFunnelEventsType >; /** * sql_filter, start_withs, ends_with, and after_exposure are only applicable in Warehouse Native */ export const MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition = { In: "in", NotIn: "not_in", Equal: "=", GreaterThan: ">", LessThan: "<", GreaterThanEqual: ">=", LessThanEqual: "<=", IsNull: "is_null", NonNull: "non_null", Contains: "contains", NotContains: "not_contains", SqlFilter: "sql_filter", StartsWith: "starts_with", EndsWith: "ends_with", AfterExposure: "after_exposure", } as const; /** * sql_filter, start_withs, ends_with, and after_exposure are only applicable in Warehouse Native */ export type MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition = ClosedEnum< typeof MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition >; export type MetricsUpdateContractDtoWarehouseNativeCriteria = { /** * Type of event criterion for filtering metrics. Options include `value`, `metadata`, `user`, and `user_custom`. */ type: MetricsUpdateContractDtoWarehouseNativeFunnelEventsType; /** * Optional column specifying which data attribute to filter on. */ column?: string | undefined; /** * sql_filter, start_withs, ends_with, and after_exposure are only applicable in Warehouse Native */ condition: MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition; /** * Optional array of values for the criterion to match against. */ values?: Array | undefined; /** * If true, overrides null values in criterion evaluation. */ nullVacuousOverride?: boolean | undefined; }; export type MetricsUpdateContractDtoFunnelEvents = { /** * Optional array of criteria to filter the funnel events, defined by various types and conditions. */ criteria?: Array | undefined; /** * Optional name of the metric source associated with the funnel event. */ metricSourceName?: string | undefined; /** * Optional step name for the funnel event, can be null if not specified. */ name?: any | null | undefined; /** * Name of column which being used as session identifier. Funnel event with the same metric source */ sessionIdentifierField?: any | null | undefined; }; /** * Allowed: start_event┃exposure to determine funnel start criteria. */ export const MetricsUpdateContractDtoFunnelStartCriteria = { StartEvent: "start_event", Exposure: "exposure", } as const; /** * Allowed: start_event┃exposure to determine funnel start criteria. */ export type MetricsUpdateContractDtoFunnelStartCriteria = ClosedEnum< typeof MetricsUpdateContractDtoFunnelStartCriteria >; /** * Aggregation type for numerator; Allowed: count┃sum┃mean┃daily_participation┃ratio┃funnel┃count_distinct┃percentile. */ export const MetricsUpdateContractDtoNumeratorAggregation = { Count: "count", Sum: "sum", Mean: "mean", DailyParticipation: "daily_participation", Ratio: "ratio", Funnel: "funnel", CountDistinct: "count_distinct", Percentile: "percentile", Unknown: "", } as const; /** * Aggregation type for numerator; Allowed: count┃sum┃mean┃daily_participation┃ratio┃funnel┃count_distinct┃percentile. */ export type MetricsUpdateContractDtoNumeratorAggregation = ClosedEnum< typeof MetricsUpdateContractDtoNumeratorAggregation >; /** * Optional configuration for metrics utilizing Warehouse Native features, defining specific behaviors and criteria. */ export type MetricsUpdateContractDtoWarehouseNative = { /** * Allowed: count┃sum┃mean┃daily_participation┃ratio┃funnel┃count_distinct┃percentile */ aggregation?: MetricsUpdateContractDtoAggregation | undefined; /** * For Count, Sum, Mean, User Count aggregation types: the name of metric source */ metricSourceName?: string | undefined; /** * MetricEventCrtieria */ criteria?: Array | undefined; waitForCohortWindow?: boolean | undefined; /** * MetricEventCriteria */ denominatorCriteria?: Array | undefined; /** * Allowed: count┃sum┃mean┃daily_participation┃ratio┃funnel┃count_distinct┃percentile */ denominatorAggregation?: MetricsUpdateContractDtoDenominatorAggregation | undefined; /** * Custom end date for rollup in days since exposure. */ denominatorCustomRollupEnd?: number | undefined; /** * Custom start date for rollup in days since exposure. */ denominatorCustomRollupStart?: number | undefined; /** * Name of the metric source for the denominator. */ denominatorMetricSourceName?: string | undefined; /** * Time window for the denominator metric. Specify "custom" for a custom window. */ denominatorRollupTimeWindow?: string | undefined; /** * Column name for the denominator’s value. */ denominatorValueColumn?: string | undefined; /** * Duration for counting funnel events in days. */ funnelCalculationWindow?: number | undefined; /** * Allowed: users┃sessions for distinct count method in funnel events. */ funnelCountDistinct?: MetricsUpdateContractDtoFunnelCountDistinct | undefined; /** * List of funnel events with associated criteria and identifiers. */ funnelEvents?: Array | undefined; /** * Allowed: start_event┃exposure to determine funnel start criteria. */ funnelStartCriteria?: MetricsUpdateContractDtoFunnelStartCriteria | undefined; /** * Specify metadata columns for breaking down metric analysis. */ metricDimensionColumns?: Array | undefined; /** * Number of days for metric baking; specify duration for analysis. */ metricBakeDays?: number | undefined; /** * Aggregation type for numerator; Allowed: count┃sum┃mean┃daily_participation┃ratio┃funnel┃count_distinct┃percentile. */ numeratorAggregation?: MetricsUpdateContractDtoNumeratorAggregation | undefined; /** * Column name representing the metric’s value. */ valueColumn?: string | undefined; /** * High threshold for winsorization; must be between 0 and 1. */ winsorizationHigh?: number | undefined; /** * Low threshold for winsorization; must be between 0 and 1. */ winsorizationLow?: number | undefined; /** * Attribution window for CUPED adjustments in days. */ cupedAttributionWindow?: any | null | undefined; /** * Flag to include only users with a conversion event in the metric. */ onlyIncludeUsersWithConversionEvent?: boolean | undefined; /** * Percentile value for statistical calculations. */ percentile?: number | undefined; /** * Threshold value for filtering metrics. */ valueThreshold?: number | undefined; /** * Maximum cap for metric values. */ cap?: number | undefined; /** * General time window for rollup; can specify custom settings. */ rollupTimeWindow?: string | undefined; /** * Custom start date for rollup in days since exposure. */ customRollUpStart?: number | undefined; /** * Custom end date for rollup in days since exposure. */ customRollUpEnd?: number | undefined; }; export type MetricsUpdateContractDto = { /** * A detailed description of the metric, providing insights into its purpose and application. */ description?: string | undefined; /** * An array of tags associated with the metric, used for categorization and easier retrieval. */ tags?: Array | undefined; /** * Indicates whether the metric is hidden from general view, useful for internal metrics. */ isHidden?: boolean | undefined; /** * Flag to mark the metric as verified, ensuring it is deemed trustworthy within the organization. */ isVerified?: boolean | undefined; /** * Specifies if the metric definition can only be edited via the Console API, enhancing control over modifications. */ isReadOnly?: boolean | undefined; /** * Determines if the metric is permanent, preventing it from being deleted or modified inadvertently. */ isPermanent?: boolean | undefined; /** * Optional configuration for metrics utilizing Warehouse Native features, defining specific behaviors and criteria. */ warehouseNative?: MetricsUpdateContractDtoWarehouseNative | undefined; /** * Array of unit types that the metric can utilize, such as stableID, userID, or other custom identifiers. */ unitTypes?: Array | undefined; /** * Optional field indicating the team responsible for the metric, aiding in accountability and management. */ team?: any | null | undefined; }; /** @internal */ export const MetricsUpdateContractDtoAggregation$inboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoAggregation > = z.nativeEnum(MetricsUpdateContractDtoAggregation); /** @internal */ export const MetricsUpdateContractDtoAggregation$outboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoAggregation > = MetricsUpdateContractDtoAggregation$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoAggregation$ { /** @deprecated use `MetricsUpdateContractDtoAggregation$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoAggregation$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoAggregation$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoAggregation$outboundSchema; } /** @internal */ export const MetricsUpdateContractDtoType$inboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoType > = z.nativeEnum(MetricsUpdateContractDtoType); /** @internal */ export const MetricsUpdateContractDtoType$outboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoType > = MetricsUpdateContractDtoType$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoType$ { /** @deprecated use `MetricsUpdateContractDtoType$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoType$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoType$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoType$outboundSchema; } /** @internal */ export const MetricsUpdateContractDtoCondition$inboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoCondition > = z.nativeEnum(MetricsUpdateContractDtoCondition); /** @internal */ export const MetricsUpdateContractDtoCondition$outboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoCondition > = MetricsUpdateContractDtoCondition$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoCondition$ { /** @deprecated use `MetricsUpdateContractDtoCondition$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoCondition$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoCondition$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoCondition$outboundSchema; } /** @internal */ export const MetricsUpdateContractDtoCriteria$inboundSchema: z.ZodType< MetricsUpdateContractDtoCriteria, z.ZodTypeDef, unknown > = z.object({ type: MetricsUpdateContractDtoType$inboundSchema, column: z.string().optional(), condition: MetricsUpdateContractDtoCondition$inboundSchema, values: z.array(z.string()).optional(), nullVacuousOverride: z.boolean().optional(), }); /** @internal */ export type MetricsUpdateContractDtoCriteria$Outbound = { type: string; column?: string | undefined; condition: string; values?: Array | undefined; nullVacuousOverride?: boolean | undefined; }; /** @internal */ export const MetricsUpdateContractDtoCriteria$outboundSchema: z.ZodType< MetricsUpdateContractDtoCriteria$Outbound, z.ZodTypeDef, MetricsUpdateContractDtoCriteria > = z.object({ type: MetricsUpdateContractDtoType$outboundSchema, column: z.string().optional(), condition: MetricsUpdateContractDtoCondition$outboundSchema, values: z.array(z.string()).optional(), nullVacuousOverride: z.boolean().optional(), }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoCriteria$ { /** @deprecated use `MetricsUpdateContractDtoCriteria$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoCriteria$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoCriteria$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoCriteria$outboundSchema; /** @deprecated use `MetricsUpdateContractDtoCriteria$Outbound` instead. */ export type Outbound = MetricsUpdateContractDtoCriteria$Outbound; } /** @internal */ export const MetricsUpdateContractDtoWarehouseNativeType$inboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoWarehouseNativeType > = z.nativeEnum(MetricsUpdateContractDtoWarehouseNativeType); /** @internal */ export const MetricsUpdateContractDtoWarehouseNativeType$outboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoWarehouseNativeType > = MetricsUpdateContractDtoWarehouseNativeType$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoWarehouseNativeType$ { /** @deprecated use `MetricsUpdateContractDtoWarehouseNativeType$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoWarehouseNativeType$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoWarehouseNativeType$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoWarehouseNativeType$outboundSchema; } /** @internal */ export const MetricsUpdateContractDtoWarehouseNativeCondition$inboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoWarehouseNativeCondition > = z.nativeEnum(MetricsUpdateContractDtoWarehouseNativeCondition); /** @internal */ export const MetricsUpdateContractDtoWarehouseNativeCondition$outboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoWarehouseNativeCondition > = MetricsUpdateContractDtoWarehouseNativeCondition$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoWarehouseNativeCondition$ { /** @deprecated use `MetricsUpdateContractDtoWarehouseNativeCondition$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoWarehouseNativeCondition$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoWarehouseNativeCondition$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoWarehouseNativeCondition$outboundSchema; } /** @internal */ export const MetricsUpdateContractDtoDenominatorCriteria$inboundSchema: z.ZodType< MetricsUpdateContractDtoDenominatorCriteria, z.ZodTypeDef, unknown > = z.object({ type: MetricsUpdateContractDtoWarehouseNativeType$inboundSchema, column: z.string().optional(), condition: MetricsUpdateContractDtoWarehouseNativeCondition$inboundSchema, values: z.array(z.string()).optional(), nullVacuousOverride: z.boolean().optional(), }); /** @internal */ export type MetricsUpdateContractDtoDenominatorCriteria$Outbound = { type: string; column?: string | undefined; condition: string; values?: Array | undefined; nullVacuousOverride?: boolean | undefined; }; /** @internal */ export const MetricsUpdateContractDtoDenominatorCriteria$outboundSchema: z.ZodType< MetricsUpdateContractDtoDenominatorCriteria$Outbound, z.ZodTypeDef, MetricsUpdateContractDtoDenominatorCriteria > = z.object({ type: MetricsUpdateContractDtoWarehouseNativeType$outboundSchema, column: z.string().optional(), condition: MetricsUpdateContractDtoWarehouseNativeCondition$outboundSchema, values: z.array(z.string()).optional(), nullVacuousOverride: z.boolean().optional(), }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoDenominatorCriteria$ { /** @deprecated use `MetricsUpdateContractDtoDenominatorCriteria$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoDenominatorCriteria$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoDenominatorCriteria$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoDenominatorCriteria$outboundSchema; /** @deprecated use `MetricsUpdateContractDtoDenominatorCriteria$Outbound` instead. */ export type Outbound = MetricsUpdateContractDtoDenominatorCriteria$Outbound; } /** @internal */ export const MetricsUpdateContractDtoDenominatorAggregation$inboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoDenominatorAggregation > = z.nativeEnum(MetricsUpdateContractDtoDenominatorAggregation); /** @internal */ export const MetricsUpdateContractDtoDenominatorAggregation$outboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoDenominatorAggregation > = MetricsUpdateContractDtoDenominatorAggregation$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoDenominatorAggregation$ { /** @deprecated use `MetricsUpdateContractDtoDenominatorAggregation$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoDenominatorAggregation$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoDenominatorAggregation$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoDenominatorAggregation$outboundSchema; } /** @internal */ export const MetricsUpdateContractDtoFunnelCountDistinct$inboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoFunnelCountDistinct > = z.nativeEnum(MetricsUpdateContractDtoFunnelCountDistinct); /** @internal */ export const MetricsUpdateContractDtoFunnelCountDistinct$outboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoFunnelCountDistinct > = MetricsUpdateContractDtoFunnelCountDistinct$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoFunnelCountDistinct$ { /** @deprecated use `MetricsUpdateContractDtoFunnelCountDistinct$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoFunnelCountDistinct$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoFunnelCountDistinct$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoFunnelCountDistinct$outboundSchema; } /** @internal */ export const MetricsUpdateContractDtoWarehouseNativeFunnelEventsType$inboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoWarehouseNativeFunnelEventsType > = z.nativeEnum(MetricsUpdateContractDtoWarehouseNativeFunnelEventsType); /** @internal */ export const MetricsUpdateContractDtoWarehouseNativeFunnelEventsType$outboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoWarehouseNativeFunnelEventsType > = MetricsUpdateContractDtoWarehouseNativeFunnelEventsType$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoWarehouseNativeFunnelEventsType$ { /** @deprecated use `MetricsUpdateContractDtoWarehouseNativeFunnelEventsType$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoWarehouseNativeFunnelEventsType$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoWarehouseNativeFunnelEventsType$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoWarehouseNativeFunnelEventsType$outboundSchema; } /** @internal */ export const MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition$inboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition > = z.nativeEnum(MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition); /** @internal */ export const MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition$outboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition > = MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition$ { /** @deprecated use `MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition$outboundSchema; } /** @internal */ export const MetricsUpdateContractDtoWarehouseNativeCriteria$inboundSchema: z.ZodType< MetricsUpdateContractDtoWarehouseNativeCriteria, z.ZodTypeDef, unknown > = z.object({ type: MetricsUpdateContractDtoWarehouseNativeFunnelEventsType$inboundSchema, column: z.string().optional(), condition: MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition$inboundSchema, values: z.array(z.string()).optional(), nullVacuousOverride: z.boolean().optional(), }); /** @internal */ export type MetricsUpdateContractDtoWarehouseNativeCriteria$Outbound = { type: string; column?: string | undefined; condition: string; values?: Array | undefined; nullVacuousOverride?: boolean | undefined; }; /** @internal */ export const MetricsUpdateContractDtoWarehouseNativeCriteria$outboundSchema: z.ZodType< MetricsUpdateContractDtoWarehouseNativeCriteria$Outbound, z.ZodTypeDef, MetricsUpdateContractDtoWarehouseNativeCriteria > = z.object({ type: MetricsUpdateContractDtoWarehouseNativeFunnelEventsType$outboundSchema, column: z.string().optional(), condition: MetricsUpdateContractDtoWarehouseNativeFunnelEventsCondition$outboundSchema, values: z.array(z.string()).optional(), nullVacuousOverride: z.boolean().optional(), }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoWarehouseNativeCriteria$ { /** @deprecated use `MetricsUpdateContractDtoWarehouseNativeCriteria$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoWarehouseNativeCriteria$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoWarehouseNativeCriteria$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoWarehouseNativeCriteria$outboundSchema; /** @deprecated use `MetricsUpdateContractDtoWarehouseNativeCriteria$Outbound` instead. */ export type Outbound = MetricsUpdateContractDtoWarehouseNativeCriteria$Outbound; } /** @internal */ export const MetricsUpdateContractDtoFunnelEvents$inboundSchema: z.ZodType< MetricsUpdateContractDtoFunnelEvents, z.ZodTypeDef, unknown > = z.object({ criteria: z .array(z.lazy(() => MetricsUpdateContractDtoWarehouseNativeCriteria$inboundSchema)) .optional(), metricSourceName: z.string().optional(), name: z.nullable(z.any()).optional(), sessionIdentifierField: z.nullable(z.any()).optional(), }); /** @internal */ export type MetricsUpdateContractDtoFunnelEvents$Outbound = { criteria?: Array | undefined; metricSourceName?: string | undefined; name?: any | null | undefined; sessionIdentifierField?: any | null | undefined; }; /** @internal */ export const MetricsUpdateContractDtoFunnelEvents$outboundSchema: z.ZodType< MetricsUpdateContractDtoFunnelEvents$Outbound, z.ZodTypeDef, MetricsUpdateContractDtoFunnelEvents > = z.object({ criteria: z .array(z.lazy(() => MetricsUpdateContractDtoWarehouseNativeCriteria$outboundSchema)) .optional(), metricSourceName: z.string().optional(), name: z.nullable(z.any()).optional(), sessionIdentifierField: 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 MetricsUpdateContractDtoFunnelEvents$ { /** @deprecated use `MetricsUpdateContractDtoFunnelEvents$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoFunnelEvents$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoFunnelEvents$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoFunnelEvents$outboundSchema; /** @deprecated use `MetricsUpdateContractDtoFunnelEvents$Outbound` instead. */ export type Outbound = MetricsUpdateContractDtoFunnelEvents$Outbound; } /** @internal */ export const MetricsUpdateContractDtoFunnelStartCriteria$inboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoFunnelStartCriteria > = z.nativeEnum(MetricsUpdateContractDtoFunnelStartCriteria); /** @internal */ export const MetricsUpdateContractDtoFunnelStartCriteria$outboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoFunnelStartCriteria > = MetricsUpdateContractDtoFunnelStartCriteria$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoFunnelStartCriteria$ { /** @deprecated use `MetricsUpdateContractDtoFunnelStartCriteria$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoFunnelStartCriteria$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoFunnelStartCriteria$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoFunnelStartCriteria$outboundSchema; } /** @internal */ export const MetricsUpdateContractDtoNumeratorAggregation$inboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoNumeratorAggregation > = z.nativeEnum(MetricsUpdateContractDtoNumeratorAggregation); /** @internal */ export const MetricsUpdateContractDtoNumeratorAggregation$outboundSchema: z.ZodNativeEnum< typeof MetricsUpdateContractDtoNumeratorAggregation > = MetricsUpdateContractDtoNumeratorAggregation$inboundSchema; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoNumeratorAggregation$ { /** @deprecated use `MetricsUpdateContractDtoNumeratorAggregation$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoNumeratorAggregation$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoNumeratorAggregation$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoNumeratorAggregation$outboundSchema; } /** @internal */ export const MetricsUpdateContractDtoWarehouseNative$inboundSchema: z.ZodType< MetricsUpdateContractDtoWarehouseNative, z.ZodTypeDef, unknown > = z.object({ aggregation: MetricsUpdateContractDtoAggregation$inboundSchema.optional(), metricSourceName: z.string().optional(), criteria: z.array(z.lazy(() => MetricsUpdateContractDtoCriteria$inboundSchema)).optional(), waitForCohortWindow: z.boolean().optional(), denominatorCriteria: z .array(z.lazy(() => MetricsUpdateContractDtoDenominatorCriteria$inboundSchema)) .optional(), denominatorAggregation: MetricsUpdateContractDtoDenominatorAggregation$inboundSchema.optional(), denominatorCustomRollupEnd: z.number().optional(), denominatorCustomRollupStart: z.number().optional(), denominatorMetricSourceName: z.string().optional(), denominatorRollupTimeWindow: z.string().optional(), denominatorValueColumn: z.string().optional(), funnelCalculationWindow: z.number().optional(), funnelCountDistinct: MetricsUpdateContractDtoFunnelCountDistinct$inboundSchema.optional(), funnelEvents: z .array(z.lazy(() => MetricsUpdateContractDtoFunnelEvents$inboundSchema)) .optional(), funnelStartCriteria: MetricsUpdateContractDtoFunnelStartCriteria$inboundSchema.optional(), metricDimensionColumns: z.array(z.string()).optional(), metricBakeDays: z.number().optional(), numeratorAggregation: MetricsUpdateContractDtoNumeratorAggregation$inboundSchema.optional(), valueColumn: z.string().optional(), winsorizationHigh: z.number().optional(), winsorizationLow: z.number().optional(), cupedAttributionWindow: z.nullable(z.any()).optional(), onlyIncludeUsersWithConversionEvent: z.boolean().optional(), percentile: z.number().optional(), valueThreshold: z.number().optional(), cap: z.number().optional(), rollupTimeWindow: z.string().optional(), customRollUpStart: z.number().optional(), customRollUpEnd: z.number().optional(), }); /** @internal */ export type MetricsUpdateContractDtoWarehouseNative$Outbound = { aggregation?: string | undefined; metricSourceName?: string | undefined; criteria?: Array | undefined; waitForCohortWindow?: boolean | undefined; denominatorCriteria?: Array | undefined; denominatorAggregation?: string | undefined; denominatorCustomRollupEnd?: number | undefined; denominatorCustomRollupStart?: number | undefined; denominatorMetricSourceName?: string | undefined; denominatorRollupTimeWindow?: string | undefined; denominatorValueColumn?: string | undefined; funnelCalculationWindow?: number | undefined; funnelCountDistinct?: string | undefined; funnelEvents?: Array | undefined; funnelStartCriteria?: string | undefined; metricDimensionColumns?: Array | undefined; metricBakeDays?: number | undefined; numeratorAggregation?: string | undefined; valueColumn?: string | undefined; winsorizationHigh?: number | undefined; winsorizationLow?: number | undefined; cupedAttributionWindow?: any | null | undefined; onlyIncludeUsersWithConversionEvent?: boolean | undefined; percentile?: number | undefined; valueThreshold?: number | undefined; cap?: number | undefined; rollupTimeWindow?: string | undefined; customRollUpStart?: number | undefined; customRollUpEnd?: number | undefined; }; /** @internal */ export const MetricsUpdateContractDtoWarehouseNative$outboundSchema: z.ZodType< MetricsUpdateContractDtoWarehouseNative$Outbound, z.ZodTypeDef, MetricsUpdateContractDtoWarehouseNative > = z.object({ aggregation: MetricsUpdateContractDtoAggregation$outboundSchema.optional(), metricSourceName: z.string().optional(), criteria: z.array(z.lazy(() => MetricsUpdateContractDtoCriteria$outboundSchema)).optional(), waitForCohortWindow: z.boolean().optional(), denominatorCriteria: z .array(z.lazy(() => MetricsUpdateContractDtoDenominatorCriteria$outboundSchema)) .optional(), denominatorAggregation: MetricsUpdateContractDtoDenominatorAggregation$outboundSchema.optional(), denominatorCustomRollupEnd: z.number().optional(), denominatorCustomRollupStart: z.number().optional(), denominatorMetricSourceName: z.string().optional(), denominatorRollupTimeWindow: z.string().optional(), denominatorValueColumn: z.string().optional(), funnelCalculationWindow: z.number().optional(), funnelCountDistinct: MetricsUpdateContractDtoFunnelCountDistinct$outboundSchema.optional(), funnelEvents: z .array(z.lazy(() => MetricsUpdateContractDtoFunnelEvents$outboundSchema)) .optional(), funnelStartCriteria: MetricsUpdateContractDtoFunnelStartCriteria$outboundSchema.optional(), metricDimensionColumns: z.array(z.string()).optional(), metricBakeDays: z.number().optional(), numeratorAggregation: MetricsUpdateContractDtoNumeratorAggregation$outboundSchema.optional(), valueColumn: z.string().optional(), winsorizationHigh: z.number().optional(), winsorizationLow: z.number().optional(), cupedAttributionWindow: z.nullable(z.any()).optional(), onlyIncludeUsersWithConversionEvent: z.boolean().optional(), percentile: z.number().optional(), valueThreshold: z.number().optional(), cap: z.number().optional(), rollupTimeWindow: z.string().optional(), customRollUpStart: z.number().optional(), customRollUpEnd: z.number().optional(), }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace MetricsUpdateContractDtoWarehouseNative$ { /** @deprecated use `MetricsUpdateContractDtoWarehouseNative$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDtoWarehouseNative$inboundSchema; /** @deprecated use `MetricsUpdateContractDtoWarehouseNative$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDtoWarehouseNative$outboundSchema; /** @deprecated use `MetricsUpdateContractDtoWarehouseNative$Outbound` instead. */ export type Outbound = MetricsUpdateContractDtoWarehouseNative$Outbound; } /** @internal */ export const MetricsUpdateContractDto$inboundSchema: z.ZodType< MetricsUpdateContractDto, z.ZodTypeDef, unknown > = z.object({ description: z.string().optional(), tags: z.array(z.string()).optional(), isHidden: z.boolean().optional(), isVerified: z.boolean().optional(), isReadOnly: z.boolean().optional(), isPermanent: z.boolean().optional(), warehouseNative: z.lazy(() => MetricsUpdateContractDtoWarehouseNative$inboundSchema).optional(), unitTypes: z.array(z.string()).optional(), team: z.nullable(z.any()).optional(), }); /** @internal */ export type MetricsUpdateContractDto$Outbound = { description?: string | undefined; tags?: Array | undefined; isHidden?: boolean | undefined; isVerified?: boolean | undefined; isReadOnly?: boolean | undefined; isPermanent?: boolean | undefined; warehouseNative?: MetricsUpdateContractDtoWarehouseNative$Outbound | undefined; unitTypes?: Array | undefined; team?: any | null | undefined; }; /** @internal */ export const MetricsUpdateContractDto$outboundSchema: z.ZodType< MetricsUpdateContractDto$Outbound, z.ZodTypeDef, MetricsUpdateContractDto > = z.object({ description: z.string().optional(), tags: z.array(z.string()).optional(), isHidden: z.boolean().optional(), isVerified: z.boolean().optional(), isReadOnly: z.boolean().optional(), isPermanent: z.boolean().optional(), warehouseNative: z .lazy(() => MetricsUpdateContractDtoWarehouseNative$outboundSchema) .optional(), unitTypes: z.array(z.string()).optional(), team: 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 MetricsUpdateContractDto$ { /** @deprecated use `MetricsUpdateContractDto$inboundSchema` instead. */ export const inboundSchema = MetricsUpdateContractDto$inboundSchema; /** @deprecated use `MetricsUpdateContractDto$outboundSchema` instead. */ export const outboundSchema = MetricsUpdateContractDto$outboundSchema; /** @deprecated use `MetricsUpdateContractDto$Outbound` instead. */ export type Outbound = MetricsUpdateContractDto$Outbound; }