import {z} from 'zod' export type GetApiV2510BetaAnalyticsResourceExperienceIdArgs = {experienceId: string, graphs?: string | undefined, graphOutput?: ('png' | 'base64') | undefined, view?: ('overview' | 'audience' | 'post_test') | undefined, audience?: ('device_type' | 'visitor_type' | 'source_channel' | 'source_site' | 'country_code' | 'landing_page_full_path' | 'purchase_likelihood') | undefined, analyticsViewType?: ('test_orders_only' | 'sitewide_orders' | 'none') | undefined, end?: string | undefined, start?: string | undefined}; export type GetApiV2510BetaAnalyticsResourceExperienceIdOptions = {baseUrl?: string | undefined, intelligemsAccessToken?: string | undefined, fetch?: typeof fetch | undefined}; export const schema0: z.ZodType = z.object({discountType: z.enum(["none", "percentage", "fixed"]), discountValue: z.number().nullable().optional(), compareAtPriceDisplay: z.enum(["none", "compareAtPrice", "regularPrice"]), expression: z.array(z.object({query: z.object({key: z.enum(["shopifyRecommendations", "productId", "collection", "tag"]), type: z.enum(["shopifyRecommendations", "productId", "collection", "tag"]), filter: z.enum(["includes", "doesNotInclude"]).optional(), value: z.union([z.string(), z.number(), z.array(z.object({order: z.number(), productId: z.string(), productTitle: z.string(), handle: z.string().nullable().optional(), productImage: z.string().nullable().optional(), description: z.string().nullable().optional(), options: z.array(z.object({name: z.string(), values: z.array(z.string())})).optional(), variants: z.array(z.object({variantId: z.string(), variantTitle: z.string(), variantImage: z.string().nullable().optional(), price: z.number(), compareAtPrice: z.number().nullable().optional(), currencyCode: z.string().optional(), availableForSale: z.boolean().optional(), sig: z.string().nullable().optional(), inclusionType: z.enum(["include", "exclude"]), variantOptions: z.array(z.object({name: z.string(), value: z.string()})).optional()})), defaultVariantId: z.string().nullable().optional()}))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()})), onAccept: z.lazy(() => schema0.nullable().optional()), onDecline: z.lazy(() => schema0.nullable().optional())}); export const getApiV2510BetaAnalyticsResourceExperienceIdResponse = z.object({datasetId: z.enum(["order_line_items", "orders", "aiProfit", "variation_overview", "variation_audience", "variation_timeseries_discrete", "variation_timeseries_cumulative", "experience_countries", "variation_shipping_method", "variation_histogram", "variation_products", "variation_product_groups", "variation_order_unit_mix", "custom_events_plugin", "custom_events_server", "order_reconciliation", "order_reconciliation_export", "experience_session_order", "timeseries", "country_codes", "snapshots", "experience_shipping_methods", "timeseries_audience", "snapshots_audience", "holiday_benchmarking_single_day", "holiday_benchmarking_multiple_days", "order_distribution_histogram", "order_distribution_unit_mix", "conversion_snapshots", "conversion_funnel", "conversion_timeseries", "variation_post_metrics", "variation_post_metrics_audience"]), latestRunTs: z.number(), cogsConfigured: z.boolean().optional(), cogsCoveragePct: z.number().optional(), metrics: z.array(z.unknown()), audienceOrder: z.unknown(), histogram: z.unknown(), kde: z.unknown(), cdf: z.unknown(), variations: z.array(z.object({id: z.string(), experienceId: z.string(), name: z.string(), percentage: z.number(), isControl: z.boolean(), order: z.number().int().gte(-9007199254740991).lte(9007199254740991), priceChange: z.string().nullable().optional(), priceChangeUnit: z.enum(["percent", "dollar"]).nullable().optional(), priceRoundingType: z.enum(["none", "nearest", "up", "down"]).nullable().optional(), priceRoundingAmount: z.string().nullable().optional(), onsiteEdits: z.array(z.object({id: z.string(), onsiteEditType: z.enum(["html", "text", "image", "hide"]).nullable().optional(), variationId: z.string(), find: z.string().nullable(), title: z.string().nullable().optional(), isRegex: z.boolean(), replace: z.string(), querySelectors: z.array(z.string()), skip: z.boolean(), remove: z.boolean(), groupId: z.string().optional(), isHtml: z.boolean(), isImage: z.boolean(), insertType: z.enum(["beforebegin", "afterbegin", "beforeend", "afterend"]).nullable(), createdAtUrl: z.string().nullable().optional(), createdAtTs: z.number().nullable().optional(), imageSearchUrl: z.string().nullable().optional(), source: z.literal("ai").nullable().optional()})), onsiteInjections: z.object({id: z.string(), variationId: z.string(), customCss: z.string().nullable().optional(), customJs: z.string().nullable().optional(), jsInjectionMode: z.object({type: z.enum(["immediately", "onWindowLoad", "timeout"]), timeout: z.union([z.number(), z.string()]).optional()}), source: z.literal("ai").nullable().optional()}).nullable().optional(), offer: z.object({id: z.string(), variationId: z.string(), enabled: z.boolean(), isTest: z.boolean(), isArchived: z.boolean(), name: z.string(), unitType: z.enum(["unit", "dollar"]), discountType: z.enum(["percentage", "dollar"]), tiers: z.array(z.object({id: z.string(), minimumUnits: z.number(), maximumUnits: z.number(), unitDiscount: z.number(), bxgyGetQuantity: z.number().int().gte(0).lte(9007199254740991), discountTitle: z.string().nullable(), giftWithPurchaseTitle: z.string().nullable(), isFreeShipping: z.boolean(), isGiftWithPurchase: z.boolean(), giftWithPurchaseProductId: z.string().nullable().optional(), giftWithPurchaseVariantId: z.string().nullable().optional(), giftWithPurchaseVariantIds: z.array(z.string()), autoAddGiftWithPurchase: z.boolean(), giftWithPurchaseHandle: z.string().nullable().optional()})), maximumDollarDiscount: z.number().nullable().optional(), discountApplicationType: z.enum(["tieredDiscount", "cartDiscount", "freeGift", "freeShipping", "buyXGetY", ""]), discountApplicationMethod: z.enum(["perItem", "perOrder"]), combinesWithIntelligems: z.boolean(), combinesWithShopify: z.boolean(), shouldRejectCodes: z.boolean(), shippingDiscount: z.object({id: z.string(), discountType: z.enum(["percentage", "dollar"]), unitDiscount: z.number().gt(0).lte(100), rateFilter: z.union([z.object({type: z.literal("amount"), amount: z.number().optional()}), z.object({type: z.literal("name"), rules: z.array(z.object({id: z.string(), operator: z.enum(["is", "contains", "isNot", "doesNotContain", "startsWith", "doesNotStartWith"]), name: z.string()}))})]).nullable(), countryFilter: z.object({allow: z.array(z.string()).optional(), exclude: z.array(z.string()).optional()}).nullable(), discountLabel: z.string().nullable()}).nullable(), requireSameItem: z.boolean(), bxgyGetProductScope: z.enum(["all", "list"]).nullable().optional(), subscriptionApplicationType: z.enum(["oneTime", "firstSub", "oneTimeAndFirstSub"])}).nullable().optional(), offerId: z.string().nullable().optional(), shippingRateGroups: z.array(z.object({id: z.string(), groupType: z.enum(["flatRate", "flatRateWithThreshold", "thresholdOnly", "tieredByPriceOrWeight", "custom"]), position: z.number(), rates: z.array(z.object({id: z.string().optional(), name: z.string(), amount: z.number(), rateCode: z.string().nullable().optional(), rateType: z.enum(["amount", "threshold", "tier"]), currency: z.enum(["AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BWP", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "ISK", "JMD", "JPY", "KES", "KGS", "KHR", "KMF", "KRW", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SEK", "SGD", "SHP", "SLL", "SRD", "STD", "SZL", "THB", "TJS", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW"]), condition: z.object({id: z.string().optional(), min: z.union([z.number(), z.string()]).nullable(), max: z.union([z.number(), z.string()]).nullable().optional(), conditionType: z.enum(["currency", "weight"]), unit: z.enum(["g", "kg", "lb", "oz"]).nullable().optional()}).nullable().optional(), description: z.string().nullable().optional()})), variationId: z.string(), scopes: z.array(z.object({marketId: z.string().min(1), collectionIds: z.array(z.string().min(1)).nullable(), originLocationIds: z.array(z.string().min(1))})).nullable().optional()})).optional(), excludeProducts: z.boolean().optional(), includeProducts: z.boolean().optional(), testExperienceId: z.string().nullable().optional(), functionSyncError: z.boolean(), redirects: z.array(z.object({id: z.string(), group: z.number(), variationId: z.string(), originUrl: z.string(), destinationUrl: z.string().nullable().optional(), queryParams: z.array(z.object({key: z.string(), value: z.string()})), skip: z.boolean(), isThemeTest: z.boolean(), isTemplateTest: z.boolean(), templateType: z.enum(["404", "", "article", "blog", "cart", "collection", "index", "list-collections", "page", "password", "product", "search"]).nullable().optional(), templateSuffixes: z.array(z.string()).nullable(), redirectOnce: z.boolean(), filter: z.enum(["matchesExactly", "contains", "endsWith", "matchesRegex", "none"]), find: z.string().nullable().optional(), redirectType: z.enum(["fullReplacement", "partialReplacement"])})).optional(), userInterfaces: z.array(z.object({id: z.string(), isEnabled: z.boolean().optional(), isArchived: z.boolean(), widget: z.object({id: z.string(), name: z.string(), enabledSitewide: z.boolean(), parentId: z.string().nullable().optional(), widgetType: z.enum(["messageBoxPopup", "messageBoxSlideOut", "quantityButtons", "discountProgressBar", "shippingProgressBar", "gwpVariantPicker"]), config: z.object({desktop: z.unknown(), mobile: z.unknown()})}).optional(), widgetId: z.string().min(1), category: z.enum(["quantityButtons", "progressBar", "messageBox", "gwpVariantPicker"]).optional(), variationId: z.string().nullable().optional(), desktopVariables: z.unknown(), mobileVariables: z.unknown(), styleOverrides: z.unknown()})).optional(), checkoutBlocks: z.array(z.union([z.object({id: z.string(), variationId: z.string(), locationId: z.string(), blockType: z.literal("trustBadge"), blockTemplate: z.enum(["badgeList", "badgeTiles", "callOut", "grid", "header", "images", "brandLogo", "textOnly"]).nullable().optional(), name: z.string(), displayConditions: z.object({id: z.string(), expression: z.array(z.object({query: z.object({key: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), type: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan", "equalTo", "greaterThanOrEqual", "lessThanOrEqual", "between"]), value: z.union([z.string(), z.number(), z.record(z.string(), z.array(z.object({variantId: z.string(), inclusionType: z.enum(["include", "exclude"])})))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))}).optional(), variables: z.object({headerText: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]), items: z.array(z.object({order: z.number(), title: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]).nullable().optional(), subtitle: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]).nullable().optional(), type: z.string(), icon: z.string().nullable().optional(), iconColor: z.string().nullable().optional(), iconSize: z.string().nullable().optional(), imageSize: z.number().gte(1).lte(500).nullable(), imageSizeUnit: z.enum(["pixels", "percentage"]), imageAspectRatio: z.string().nullable().optional(), image: z.string().nullable().optional(), mediaSpacing: z.string()}))}), styles: z.object({typography: z.object({header: z.object({fontSize: z.string(), fontStyle: z.string()}), itemTitle: z.object({fontSize: z.string(), fontStyle: z.string()}), itemSubtitle: z.object({fontSize: z.string(), fontStyle: z.string()})}), backgroundColors: z.object({header: z.string(), item: z.string(), block: z.string()}), colors: z.object({headerText: z.string(), itemTitleText: z.string(), itemSubtitleText: z.string()}), layout: z.object({headerTextAlign: z.string(), bodyAlign: z.string(), itemTextAlign: z.string(), itemPositionAlign: z.string(), rowCount: z.number().int().gte(-9007199254740991).lte(9007199254740991), columnCount: z.number().int().gte(-9007199254740991).lte(9007199254740991)}), appearance: z.object({headerBorderThickness: z.string(), headerBorderStyle: z.string(), headerCornerRadius: z.string(), headerPadding: z.string(), bodySpacing: z.string(), headingToBodySpacing: z.string(), blockBorderThickness: z.string(), blockBorderStyle: z.string(), blockPadding: z.string(), blockCornerRadius: z.string(), itemBorderThickness: z.string(), itemBorderStyle: z.string(), itemCornerRadius: z.string(), itemTextSpacing: z.string()})})}), z.object({id: z.string(), variationId: z.string(), locationId: z.string(), blockType: z.literal("upsell"), blockTemplate: z.enum(["productTiles", "productList", "singleProduct", "singleProductCheckbox"]).nullable().optional(), name: z.string(), displayConditions: z.object({id: z.string(), expression: z.array(z.object({query: z.object({key: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), type: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan", "equalTo", "greaterThanOrEqual", "lessThanOrEqual", "between"]), value: z.union([z.string(), z.number(), z.record(z.string(), z.array(z.object({variantId: z.string(), inclusionType: z.enum(["include", "exclude"])})))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))}).optional(), variables: z.object({headerText: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]), maxProductLimit: z.number().int().gte(1).lte(10), excludeItemsInCart: z.boolean(), excludeOutOfStock: z.boolean(), buttonText: z.string(), imageSize: z.number().gte(1).lte(500), imageSizeUnit: z.enum(["pixels", "percentage"]), imageAspectRatio: z.string(), mediaSpacing: z.string(), discount: z.object({discountType: z.enum(["none", "percentage", "fixed"]), discountValue: z.number().nullable().optional(), compareAtPriceDisplay: z.enum(["none", "compareAtPrice", "regularPrice"])}).optional()}), styles: z.object({typography: z.object({header: z.object({fontSize: z.string(), fontStyle: z.string()}), productTitle: z.object({fontSize: z.string(), fontStyle: z.string()}), variantTitle: z.object({fontSize: z.string(), fontStyle: z.string()}), price: z.object({fontSize: z.string(), fontStyle: z.string()}), button: z.object({fontSize: z.string(), fontStyle: z.string()})}), backgroundColors: z.object({header: z.string(), item: z.string(), block: z.string(), button: z.string(), productUnit: z.string()}), colors: z.object({headerText: z.string(), productText: z.string(), variantText: z.string(), priceText: z.string(), carouselArrowColor: z.string(), carouselArrowStyle: z.string()}), layout: z.object({headerTextAlign: z.string(), bodyAlign: z.string(), itemTextAlign: z.string(), itemPositionAlign: z.string(), mobile: z.object({rowCount: z.number().int().gte(-9007199254740991).lte(9007199254740991), columnCount: z.number().int().gte(-9007199254740991).lte(9007199254740991)}), desktop: z.object({rowCount: z.number().int().gte(-9007199254740991).lte(9007199254740991), columnCount: z.number().int().gte(-9007199254740991).lte(9007199254740991)})}), appearance: z.object({headerBorderThickness: z.string(), headerBorderStyle: z.string(), headerCornerRadius: z.string(), headerPadding: z.string(), bodySpacing: z.string(), headingToBodySpacing: z.string(), blockBorderThickness: z.string(), blockBorderStyle: z.string(), blockPadding: z.string(), blockCornerRadius: z.string(), productBorderThickness: z.string(), productBorderStyle: z.string(), productCornerRadius: z.string(), productTextSpacing: z.string()})}), upsellProductRules: z.array(z.object({id: z.string(), checkoutBlockId: z.string(), priority: z.number().int().gte(0).lte(9007199254740991), cartTargeting: z.object({id: z.string(), expression: z.array(z.object({query: z.object({key: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), type: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan", "equalTo", "greaterThanOrEqual", "lessThanOrEqual", "between"]), value: z.union([z.string(), z.number(), z.record(z.string(), z.array(z.object({variantId: z.string(), inclusionType: z.enum(["include", "exclude"])})))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))}), action: schema0, variationId: z.string()})), agenticLogicPlacementId: z.string().nullable().optional(), agenticLogicRuleId: z.string().nullable().optional()}), z.object({id: z.string(), variationId: z.string(), locationId: z.string(), blockType: z.literal("shippingProgressBar"), blockTemplate: z.enum(["minimal", "milestones"]).nullable().optional(), name: z.string(), displayConditions: z.object({id: z.string(), expression: z.array(z.object({query: z.object({key: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), type: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan", "equalTo", "greaterThanOrEqual", "lessThanOrEqual", "between"]), value: z.union([z.string(), z.number(), z.record(z.string(), z.array(z.object({variantId: z.string(), inclusionType: z.enum(["include", "exclude"])})))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))}).optional(), variables: z.object({headerText: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]).optional(), currency: z.string(), template: z.enum(["minimal", "milestones"]), tiers: z.array(z.object({threshold: z.number().gt(0), message: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]), messageComplete: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]), activeIconId: z.string().optional(), inactiveIconId: z.string().optional(), breakpointText: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]).optional()}))}), styles: z.object({typography: z.object({header: z.object({fontSize: z.string(), fontStyle: z.string()}), label: z.object({fontSize: z.string(), fontStyle: z.string()})}), backgroundColors: z.object({header: z.string(), item: z.string(), block: z.string(), milestoneIcon: z.string()}), colors: z.object({headerText: z.string(), labelText: z.string(), barTone: z.string()}), layout: z.object({headerTextAlign: z.string(), bodyAlign: z.string(), itemTextAlign: z.string(), itemPositionAlign: z.string(), messageTextAlign: z.string()}), appearance: z.object({headerBorderThickness: z.string(), headerBorderStyle: z.string(), headerCornerRadius: z.string(), headerPadding: z.string(), bodySpacing: z.string(), headingToBodySpacing: z.string(), blockBorderThickness: z.string(), blockBorderStyle: z.string(), blockPadding: z.string(), blockCornerRadius: z.string(), milestoneIconCornerRadius: z.string(), milestoneIconSize: z.string(), milestoneIconPadding: z.string()})})}), z.object({id: z.string(), variationId: z.string(), locationId: z.string(), blockType: z.literal("timer"), blockTemplate: z.enum(["textCountdown", "digitalClock", "inlinePill"]).nullable().optional(), name: z.string(), displayConditions: z.object({id: z.string(), expression: z.array(z.object({query: z.object({key: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), type: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan", "equalTo", "greaterThanOrEqual", "lessThanOrEqual", "between"]), value: z.union([z.string(), z.number(), z.record(z.string(), z.array(z.object({variantId: z.string(), inclusionType: z.enum(["include", "exclude"])})))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))}).optional(), variables: z.object({timerMode: z.enum(["fixedDate", "perVisitor", "recurring"]), endDateTime: z.string().nullable().optional(), durationMinutes: z.number().int().gte(1).lte(9007199254740991), resetIntervalUnit: z.enum(["hour", "day", "week"]).nullable().optional(), resetTimeOfDay: z.string().nullable().optional(), resetDayOfWeek: z.union([z.literal(1), z.literal(2), z.literal(3), z.literal(4), z.literal(5), z.literal(6), z.literal(7)]).nullable().optional(), resetMinuteOfHour: z.number().int().gte(0).lte(59).nullable().optional(), resetTimezone: z.string().nullable().optional(), expiredBehavior: z.enum(["remove", "showText"]), timerTemplate: z.enum(["textCountdown", "digitalClock", "inlinePill"]), showDays: z.boolean(), showHours: z.boolean(), showMinutes: z.boolean(), showSeconds: z.boolean(), countdownText: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]), expiredText: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]), headline: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))])}), styles: z.object({typography: z.object({text: z.object({fontSize: z.string(), fontStyle: z.string()})}), backgroundColors: z.object({block: z.string(), expired: z.string()}), colors: z.object({text: z.string(), expiredText: z.string(), digit: z.string()}), layout: z.object({textAlign: z.string()}), appearance: z.object({blockBorderStyle: z.string(), blockBorderThickness: z.string(), blockCornerRadius: z.string(), blockPadding: z.string()}), digits: z.object({separator: z.enum(["colon", "dot", "units"]), size: z.enum(["small", "base"])})})}), z.object({id: z.string(), variationId: z.string(), locationId: z.string(), blockType: z.literal("faqs"), blockTemplate: z.literal("faqsAccordion").nullable().optional(), name: z.string(), displayConditions: z.object({id: z.string(), expression: z.array(z.object({query: z.object({key: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), type: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan", "equalTo", "greaterThanOrEqual", "lessThanOrEqual", "between"]), value: z.union([z.string(), z.number(), z.record(z.string(), z.array(z.object({variantId: z.string(), inclusionType: z.enum(["include", "exclude"])})))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))}).optional(), variables: z.object({headerText: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]).optional(), showDivider: z.boolean(), allowMultipleOpen: z.boolean(), questions: z.array(z.object({id: z.string().min(1), question: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]), answer: z.union([z.string(), z.array(z.object({text: z.string().min(1), bold: z.boolean().optional(), italic: z.boolean().optional(), strike: z.boolean().optional(), link: z.object({href: z.string()}).optional()}))]), openByDefault: z.boolean()}))}), styles: z.object({typography: z.object({header: z.object({fontSize: z.string(), fontStyle: z.string()}), question: z.object({fontSize: z.string(), fontStyle: z.string()}), answer: z.object({fontSize: z.string(), fontStyle: z.string()})}), backgroundColors: z.object({header: z.string(), item: z.string(), block: z.string()}), colors: z.object({headerText: z.string(), questionText: z.string(), answerText: z.string()}), layout: z.object({headerTextAlign: z.string(), bodyAlign: z.string(), itemTextAlign: z.string(), itemPositionAlign: z.string()}), appearance: z.object({headerBorderThickness: z.string(), headerBorderStyle: z.string(), headerCornerRadius: z.string(), headerPadding: z.string(), bodySpacing: z.string(), headingToBodySpacing: z.string(), blockBorderThickness: z.string(), blockBorderStyle: z.string(), blockPadding: z.string(), blockCornerRadius: z.string()})})}), z.object({id: z.string(), variationId: z.string(), locationId: z.string(), blockType: z.literal("postPurchaseUpsell"), blockTemplate: z.unknown(), name: z.string(), displayConditions: z.object({id: z.string(), expression: z.array(z.object({query: z.object({key: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), type: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan", "equalTo", "greaterThanOrEqual", "lessThanOrEqual", "between"]), value: z.union([z.string(), z.number(), z.record(z.string(), z.array(z.object({variantId: z.string(), inclusionType: z.enum(["include", "exclude"])})))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))}).optional(), variables: z.object({headerText: z.string(), discountType: z.enum(["none", "percentage", "fixed"]), discountValue: z.number().nullable().optional(), compareAtPriceDisplay: z.enum(["none", "compareAtPrice", "regularPrice"]), imageAspectRatio: z.string(), excludeOutOfStock: z.boolean(), excludeItemsInCart: z.boolean(), maxProductLimit: z.number().int().gte(-9007199254740991).lte(9007199254740991), bannerEnabled: z.boolean(), bannerTitle: z.string().optional(), bannerSubtitle: z.string().optional(), customerFirstNameFallback: z.string().optional(), compareAtPriceEnabled: z.boolean(), descriptionEnabled: z.boolean(), quantitySelectorEnabled: z.boolean(), quantityLabel: z.string().optional(), maxQuantityType: z.string().optional(), maxQuantity: z.number().int().gte(-9007199254740991).lte(9007199254740991).optional(), moneyLineEnabled: z.boolean(), moneyLineSubtotal: z.boolean(), moneyLineShipping: z.boolean(), moneyLineTaxes: z.boolean(), primaryButtonText: z.string(), secondaryButtonEnabled: z.boolean(), secondaryButtonText: z.string(), headingLevel: z.string(), countdownTimerEnabled: z.boolean().optional(), timerCheckout: z.object({timerMode: z.enum(["fixedDate", "perVisitor", "recurring"]), endDateTime: z.string().nullable().optional(), durationMinutes: z.number().int().gte(1).lte(9007199254740991), resetIntervalUnit: z.enum(["hour", "day", "week"]).nullable().optional(), resetTimeOfDay: z.string().nullable().optional(), resetDayOfWeek: z.union([z.literal(1), z.literal(2), z.literal(3), z.literal(4), z.literal(5), z.literal(6), z.literal(7)]).nullable().optional(), resetMinuteOfHour: z.number().int().gte(0).lte(59).nullable().optional(), resetTimezone: z.string().nullable().optional(), expiredBehavior: z.enum(["remove", "showText"]), timerTemplate: z.enum(["textCountdown", "digitalClock", "inlinePill"]), showDays: z.boolean(), showHours: z.boolean(), showMinutes: z.boolean(), showSeconds: z.boolean(), countdownText: z.string(), expiredText: z.string(), headline: z.string()}).optional(), offerTimeout: z.number().optional(), discount: z.object({discountType: z.enum(["none", "percentage", "fixed"]), discountValue: z.number().nullable().optional(), compareAtPriceDisplay: z.enum(["none", "compareAtPrice", "regularPrice"])}).optional()}), styles: z.object({typography: z.object({banner: z.object({fontSize: z.string(), fontStyle: z.string()}).optional(), productTitle: z.object({fontSize: z.string(), fontStyle: z.string()}), price: z.object({fontSize: z.string(), fontStyle: z.string()}), description: z.object({fontSize: z.string(), fontStyle: z.string()}).optional(), primaryButton: z.object({fontSize: z.string(), fontStyle: z.string()}), secondaryButton: z.object({fontSize: z.string(), fontStyle: z.string()}).optional()}), backgroundColors: z.object({banner: z.string(), primaryButton: z.string(), secondaryButton: z.string().optional(), countdown: z.string().optional(), expired: z.string().optional()}), colors: z.object({bannerText: z.string().optional(), productText: z.string(), priceText: z.string(), descriptionText: z.string().optional(), primaryButtonText: z.string(), secondaryButtonText: z.string().optional(), expiredText: z.string().optional()}), appearance: z.object({bannerBorderStyle: z.string(), bannerSpacing: z.string(), bannerTextAlign: z.string(), separatorWidth: z.string(), imageFit: z.string(), imageBorder: z.boolean(), pricingAppearance: z.string().optional(), pricingEmphasized: z.boolean(), pricingSubduedStyle: z.boolean().optional(), descriptionSubdued: z.boolean(), secondaryButtonStyle: z.string(), countdownTextAlign: z.string().optional(), countdownBorderStyle: z.string().optional(), countdownSpacing: z.string().optional()})}), upsellProductRules: z.array(z.object({id: z.string(), checkoutBlockId: z.string(), priority: z.number().int().gte(0).lte(9007199254740991), cartTargeting: z.object({id: z.string(), expression: z.array(z.object({query: z.object({key: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), type: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan", "equalTo", "greaterThanOrEqual", "lessThanOrEqual", "between"]), value: z.union([z.string(), z.number(), z.record(z.string(), z.array(z.object({variantId: z.string(), inclusionType: z.enum(["include", "exclude"])})))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))}), action: schema0, variationId: z.string()})), agenticLogicPlacementId: z.string().nullable().optional(), agenticLogicRuleId: z.string().nullable().optional()})])).optional(), cartTargeting: z.array(z.object({id: z.string(), expression: z.array(z.object({query: z.object({key: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), type: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan", "equalTo", "greaterThanOrEqual", "lessThanOrEqual", "between"]), value: z.union([z.string(), z.number(), z.record(z.string(), z.array(z.object({variantId: z.string(), inclusionType: z.enum(["include", "exclude"])})))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))})).optional(), components: z.array(z.object({id: z.string(), variationId: z.string(), config: z.union([z.object({type: z.literal("onsiteUpsell"), placement: z.object({selector: z.string().optional(), insertType: z.enum(["beforebegin", "afterbegin", "beforeend", "afterend"]).optional(), anchorKey: z.string().optional(), location: z.enum(["pdp", "cart"])}), template: z.string(), maxProductLimit: z.number().int().gte(-9007199254740991).lte(9007199254740991), excludeOutOfStock: z.boolean(), excludeItemsInCart: z.boolean(), excludePdpProduct: z.boolean(), discount: z.object({discountType: z.enum(["none", "percentage", "fixed"]), discountValue: z.number().nullable().optional(), compareAtPriceDisplay: z.enum(["none", "compareAtPrice", "regularPrice"])}).optional(), rules: z.array(z.object({id: z.string(), priority: z.number().int().gte(-9007199254740991).lte(9007199254740991), action: z.array(z.object({query: z.object({key: z.enum(["shopifyRecommendations", "productId", "collection", "tag"]), type: z.enum(["shopifyRecommendations", "productId", "collection", "tag"]), filter: z.enum(["includes", "doesNotInclude"]).optional(), value: z.union([z.string(), z.number(), z.array(z.object({order: z.number(), productId: z.string(), productTitle: z.string(), handle: z.string().nullable().optional(), productImage: z.string().nullable().optional(), description: z.string().nullable().optional(), options: z.array(z.object({name: z.string(), values: z.array(z.string())})).optional(), variants: z.array(z.object({variantId: z.string(), variantTitle: z.string(), variantImage: z.string().nullable().optional(), price: z.number(), compareAtPrice: z.number().nullable().optional(), currencyCode: z.string().optional(), availableForSale: z.boolean().optional(), sig: z.string().nullable().optional(), inclusionType: z.enum(["include", "exclude"]), variantOptions: z.array(z.object({name: z.string(), value: z.string()})).optional()})), defaultVariantId: z.string().nullable().optional()}))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()})), targeting: z.union([z.object({type: z.literal("cart"), expression: z.array(z.object({query: z.object({key: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), type: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan", "equalTo", "greaterThanOrEqual", "lessThanOrEqual", "between"]), value: z.union([z.string(), z.number(), z.record(z.string(), z.array(z.object({variantId: z.string(), inclusionType: z.enum(["include", "exclude"])})))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))}), z.object({type: z.literal("product"), expression: z.array(z.object({query: z.object({key: z.enum(["productId", "collection", "tag", "price", "inventory"]), value: z.union([z.string(), z.number()]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan"]), type: z.enum(["productId", "collection", "tag", "price", "inventory"])}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))})])})), agenticLogicPlacementId: z.string().nullable().optional(), agenticLogicRuleId: z.string().nullable().optional()}), z.object({type: z.literal("bundleOnsiteUpsell"), placement: z.object({selector: z.string().optional(), insertType: z.enum(["beforebegin", "afterbegin", "beforeend", "afterend"]).optional(), anchorKey: z.string().optional(), location: z.enum(["pdp", "cart"])}), template: z.string(), copy: z.object({heading: z.string(), subheading: z.string().optional(), buttonText: z.string(), rowBadgeLabel: z.string().optional(), savedLabel: z.string().optional(), sublineToNextTier: z.string().optional(), sublineAtTopTier: z.string().optional()}), maxProductLimit: z.number().int().gte(-9007199254740991).lte(9007199254740991), allowItemSelection: z.boolean(), excludeOutOfStock: z.boolean(), excludeItemsInCart: z.boolean(), excludePdpProduct: z.boolean(), discount: z.object({discountType: z.enum(["none", "percentage", "fixed"]), discountTiers: z.array(z.object({minimumProducts: z.number().int().gte(1).lte(9007199254740991), value: z.number()})), compareAtPriceDisplay: z.enum(["none", "compareAtPrice", "regularPrice"])}).optional(), rules: z.array(z.object({id: z.string(), priority: z.number().int().gte(-9007199254740991).lte(9007199254740991), action: z.array(z.object({query: z.object({key: z.enum(["shopifyRecommendations", "productId", "collection", "tag"]), type: z.enum(["shopifyRecommendations", "productId", "collection", "tag"]), filter: z.enum(["includes", "doesNotInclude"]).optional(), value: z.union([z.string(), z.number(), z.array(z.object({order: z.number(), productId: z.string(), productTitle: z.string(), handle: z.string().nullable().optional(), productImage: z.string().nullable().optional(), description: z.string().nullable().optional(), options: z.array(z.object({name: z.string(), values: z.array(z.string())})).optional(), variants: z.array(z.object({variantId: z.string(), variantTitle: z.string(), variantImage: z.string().nullable().optional(), price: z.number(), compareAtPrice: z.number().nullable().optional(), currencyCode: z.string().optional(), availableForSale: z.boolean().optional(), sig: z.string().nullable().optional(), inclusionType: z.enum(["include", "exclude"]), variantOptions: z.array(z.object({name: z.string(), value: z.string()})).optional()})), defaultVariantId: z.string().nullable().optional()}))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()})), targeting: z.union([z.object({type: z.literal("cart"), expression: z.array(z.object({query: z.object({key: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), type: z.enum(["anything", "productId", "collection", "tag", "cartSubtotal", "cartItemCount", "subscription"]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan", "equalTo", "greaterThanOrEqual", "lessThanOrEqual", "between"]), value: z.union([z.string(), z.number(), z.record(z.string(), z.array(z.object({variantId: z.string(), inclusionType: z.enum(["include", "exclude"])})))]).optional()}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))}), z.object({type: z.literal("product"), expression: z.array(z.object({query: z.object({key: z.enum(["productId", "collection", "tag", "price", "inventory"]), value: z.union([z.string(), z.number()]), filter: z.enum(["includes", "doesNotInclude", "greaterThan", "lessThan"]), type: z.enum(["productId", "collection", "tag", "price", "inventory"])}).optional(), operator: z.enum(["and", "or", "start_paren", "end_paren"]).optional()}))})])})), agenticLogicPlacementId: z.string().nullable().optional(), agenticLogicRuleId: z.string().nullable().optional()})])})).optional()})).optional(), graphs: z.array(z.object({id: z.string(), key: z.string().optional(), url: z.string().optional(), data: z.string().optional(), type: z.string(), title: z.string()})).optional(), experienceId: z.string().optional(), experienceName: z.string().optional(), downsample: z.object({from: z.enum(["HOUR", "DAY", "WEEK"]), to: z.enum(["HOUR", "DAY", "WEEK"])}).optional(), impact: z.object({est_monthly_revenue_increase: z.number().nullable()}).optional(), testResult: z.union([z.object({verdict: z.enum(["strong_win", "directional_win", "directional_loss", "strong_loss", "mixed_signals"]), action_to_take: z.string(), runtime_days: z.number(), orders_per_variant: z.record(z.string(), z.number()), primary_metric: z.object({key: z.string(), best_challenger: z.object({variant: z.string(), p2bb: z.number().nullable(), uplift: z.number().nullable(), uplift_ci_width: z.number().nullable(), stability: z.object({days_held: z.number().nullable(), p2bb_stable: z.boolean(), uplift_ci_converged: z.boolean()})})}), conflicting_metrics: z.array(z.object({key: z.string(), uplift: z.number().nullable(), p2bb: z.number().nullable()}))}), z.object({verdict: z.enum(["filtered_strong_win", "filtered_directional_win", "filtered_directional_loss", "filtered_strong_loss", "filtered_mixed_signals"]), action_to_take: z.string(), runtime_days: z.number(), orders_per_variant: z.record(z.string(), z.number()), primary_metric: z.object({key: z.string(), best_challenger: z.object({variant: z.string(), p2bb: z.number().nullable(), uplift: z.number().nullable(), uplift_ci_width: z.number().nullable(), stability: z.object({days_held: z.number().nullable(), p2bb_stable: z.boolean(), uplift_ci_converged: z.boolean()})})}), conflicting_metrics: z.array(z.object({key: z.string(), uplift: z.number().nullable(), p2bb: z.number().nullable()}))}), z.object({verdict: z.enum(["not_ready", "filtered_not_ready"]), runtime_days: z.number(), orders_per_variant: z.record(z.string(), z.number())}), z.object({verdict: z.literal("error"), reason: z.string()})]).optional()}); export const validateResponse = async ( schema: { readonly '~standard': { readonly validate: (value: unknown) => ({ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }) | Promise<{ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }> } }, value: unknown ): Promise => { const result = await schema['~standard'].validate(value) if (result.issues !== undefined) { const detail = result.issues .map(({ message, path }) => path?.length ? `${path.map((segment) => String(typeof segment === 'object' ? segment.key : segment)).join('.')}: ${message}` : message ) .join('; ') throw new Error(`Response does not match the schema: ${detail}`, { cause: { issues: result.issues } }) } return result.value }; /** * Analyze experience (legacy GET) * * GET /v25-10-beta/analytics/resource/{experienceId} */ export const getApiV2510BetaAnalyticsResourceExperienceId = async (args: GetApiV2510BetaAnalyticsResourceExperienceIdArgs, options?: GetApiV2510BetaAnalyticsResourceExperienceIdOptions) => { const {baseUrl = "https://api.intelligems.io", fetch: fetchFn = fetch, intelligemsAccessToken} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('accept', "application/json") if (args.graphs != null) query.append("graphs", String(args.graphs)) if (args.graphOutput != null) query.append("graphOutput", String(args.graphOutput)) if (args.view != null) query.append("view", String(args.view)) if (args.audience != null) query.append("audience", String(args.audience)) if (args.analyticsViewType != null) query.append("analyticsViewType", String(args.analyticsViewType)) if (args.end != null) query.append("end", String(args.end)) if (args.start != null) query.append("start", String(args.start)) if (intelligemsAccessToken !== undefined) headers.set("intelligems-access-token", intelligemsAccessToken) const url = `${baseUrl.replace(/\/+$/, '')}/v25-10-beta/analytics/resource/${encodeURIComponent(String(args.experienceId))}${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "GET", headers}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return validateResponse(getApiV2510BetaAnalyticsResourceExperienceIdResponse, await res.json()) };