@runbandit/sdk 3.4.0 → 3.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/{decision-cookie-CNIp56yQ.d.ts → decision-cookie-g9aDdSx9.d.ts} +11 -4
- package/dist/index.d.ts +60 -4
- package/dist/index.js +302 -9
- package/dist/index.js.map +1 -1
- package/dist/server.d.ts +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -19,7 +19,7 @@ const client = new BanditsClient({
|
|
|
19
19
|
})
|
|
20
20
|
|
|
21
21
|
const assignment = await client.getAssignment('experiment-id', 'user-id')
|
|
22
|
-
showTreatment(assignment.
|
|
22
|
+
showTreatment(assignment.config)
|
|
23
23
|
|
|
24
24
|
// Track a conversion. Pass { immediate: true } for events right before navigation.
|
|
25
25
|
client.trackNamedEvent({ name: 'conversion', value: 29.99 })
|
|
@@ -62,7 +62,7 @@ declare function serializeTreatmentConfig(content: TreatmentContent): {
|
|
|
62
62
|
content: unknown;
|
|
63
63
|
};
|
|
64
64
|
|
|
65
|
-
declare const SITE_TARGET_KINDS: readonly ["text", "image"];
|
|
65
|
+
declare const SITE_TARGET_KINDS: readonly ["text", "image", "order"];
|
|
66
66
|
type SiteTargetKind = (typeof SITE_TARGET_KINDS)[number];
|
|
67
67
|
interface SiteTarget {
|
|
68
68
|
page: string;
|
|
@@ -89,6 +89,12 @@ declare function goalMatchesPage(goal: Pick<FunnelGoal, 'page'>, pathname: strin
|
|
|
89
89
|
declare const MAX_ALTERNATIVES = 5;
|
|
90
90
|
declare const MAX_TEXT_ALTERNATIVE_LENGTH = 300;
|
|
91
91
|
declare const MAX_IMAGE_URL_LENGTH = 2048;
|
|
92
|
+
declare const MIN_ORDER_ITEMS = 2;
|
|
93
|
+
declare const MAX_ORDER_ITEMS = 24;
|
|
94
|
+
declare const MAX_ORDER_KEY_LENGTH = 160;
|
|
95
|
+
declare function formatOrder(keys: readonly string[]): string;
|
|
96
|
+
declare function parseOrder(raw: string): string[];
|
|
97
|
+
declare function isReorderOf(original: readonly string[], order: readonly string[]): boolean;
|
|
92
98
|
interface PickDraft {
|
|
93
99
|
target?: SiteTarget;
|
|
94
100
|
alternatives: string[];
|
|
@@ -110,9 +116,9 @@ declare function pickStep(state: Pick<PickState, 'draft' | 'funnelGoal' | 'exper
|
|
|
110
116
|
declare function parseAlternative(kind: SiteTargetKind, raw: string): string;
|
|
111
117
|
declare const PICK_CHANNEL = "bandit-pick";
|
|
112
118
|
declare const PICK_PROTOCOL_VERSION = 1;
|
|
113
|
-
declare const PICK_MODES: readonly ["idle", "target", "goal-click"];
|
|
119
|
+
declare const PICK_MODES: readonly ["idle", "target", "order", "goal-click"];
|
|
114
120
|
type PickMode = (typeof PICK_MODES)[number];
|
|
115
|
-
declare const PICK_REJECTIONS: readonly ["not-text-or-image", "has-markup", "not-clickable", "no-selector"];
|
|
121
|
+
declare const PICK_REJECTIONS: readonly ["not-text-or-image", "has-markup", "not-a-list", "not-clickable", "no-selector"];
|
|
116
122
|
type PickRejection = (typeof PICK_REJECTIONS)[number];
|
|
117
123
|
type ClickFunnelGoal = Extract<FunnelGoal, {
|
|
118
124
|
kind: 'click';
|
|
@@ -479,6 +485,7 @@ interface SnapshotExperiment {
|
|
|
479
485
|
treatments: SnapshotTreatment[];
|
|
480
486
|
target?: SiteTarget;
|
|
481
487
|
funnelId?: string;
|
|
488
|
+
trialOn?: 'served' | 'exposure';
|
|
482
489
|
}
|
|
483
490
|
interface CompanySnapshot {
|
|
484
491
|
ttl: number;
|
|
@@ -500,4 +507,4 @@ declare function readCookie(header: string | null | undefined, name: string): st
|
|
|
500
507
|
declare function parseDecisions(value: string | null | undefined, now: number): CookieDecisions;
|
|
501
508
|
declare function serializeDecisions(decisions: CookieDecisions): string;
|
|
502
509
|
|
|
503
|
-
export { type BundleMode as $, type Account as A, type BundleAssignmentResponse as B, type ContextualFeatures as C, DECISIONS_COOKIE as D, type Experiment as E, ForgettingMode as F, type TreatmentStats as G, type APIResponse as H, type CreateExperimentRequest as I, type AssignmentRequest as J, type TrackNamedEventRequest as K, FunnelStatus as L, type Funnel as M, type FunnelRewardRequest as N, type OrderLineItem as O, Posterior as P, type ApiKey as Q, type CreateApiKeyRequest as R, type SnapshotTreatment as S, type Treatment as T, type User as U, VISITOR_COOKIE as V, type CreateApiKeyResponse as W, type IdentifyMergeReason as X, type IdentifyUserRequest as Y, type IdentifyUserResponse as Z, type ResolvedIdentity as _, type CompanySnapshot as a, type Bundle as a0, type BundleAssignmentRequest as a1, type BundleSlotAssignment as a2, STOREFRONT_KINDS as a3, type StorefrontKind as a4, PLACEMENTS_BY_KIND as a5, type Placement as a6, PLACEMENTS as a7, isPlacement as a8, kindOfPlacement as a9,
|
|
510
|
+
export { type BundleMode as $, type Account as A, type BundleAssignmentResponse as B, type ContextualFeatures as C, DECISIONS_COOKIE as D, type Experiment as E, ForgettingMode as F, type TreatmentStats as G, type APIResponse as H, type CreateExperimentRequest as I, type AssignmentRequest as J, type TrackNamedEventRequest as K, FunnelStatus as L, type Funnel as M, type FunnelRewardRequest as N, type OrderLineItem as O, Posterior as P, type ApiKey as Q, type CreateApiKeyRequest as R, type SnapshotTreatment as S, type Treatment as T, type User as U, VISITOR_COOKIE as V, type CreateApiKeyResponse as W, type IdentifyMergeReason as X, type IdentifyUserRequest as Y, type IdentifyUserResponse as Z, type ResolvedIdentity as _, type CompanySnapshot as a, type Bundle as a0, type BundleAssignmentRequest as a1, type BundleSlotAssignment as a2, STOREFRONT_KINDS as a3, type StorefrontKind as a4, PLACEMENTS_BY_KIND as a5, type Placement as a6, PLACEMENTS as a7, isPlacement as a8, kindOfPlacement as a9, isReorderOf as aA, type PickDraft as aB, type PickState as aC, SUGGESTED_SITE_EXPERIMENTS as aD, moreExperimentsSentence as aE, type PickStep as aF, pickStep as aG, parseAlternative as aH, PICK_CHANNEL as aI, PICK_PROTOCOL_VERSION as aJ, PICK_MODES as aK, type PickMode as aL, PICK_REJECTIONS as aM, type PickRejection as aN, type ClickFunnelGoal as aO, type PickerToPanel as aP, type PanelToPicker as aQ, PICK_TOKEN_PREFIX as aR, type PickEnvelope as aS, pickEnvelope as aT, parsePickerMessage as aU, parsePanelMessage as aV, type OrderAmounts as aW, CONTENT_TYPE_BY_KIND as aa, MIN_ORDERING_ITEMS as ab, MAX_ORDERING_ITEMS as ac, type ImageContent as ad, type OfferContent as ae, type TreatmentContent as af, isShopifyCdnUrl as ag, parseTreatmentContent as ah, serializeTreatmentConfig as ai, SITE_TARGET_KINDS as aj, type SiteTargetKind as ak, type SiteTarget as al, type FunnelGoal as am, parseSiteContent as an, normalizeSiteTarget as ao, normalizeFunnelGoal as ap, targetMatchesPage as aq, goalMatchesPage as ar, MAX_ALTERNATIVES as as, MAX_TEXT_ALTERNATIVE_LENGTH as at, MAX_IMAGE_URL_LENGTH as au, MIN_ORDER_ITEMS as av, MAX_ORDER_ITEMS as aw, MAX_ORDER_KEY_LENGTH as ax, formatOrder as ay, parseOrder as az, type SnapshotExperiment as b, type CookieDecision as c, type CookieDecisions as d, type Company as e, type Session as f, type AlgorithmResult as g, type BanditResult as h, ExperimentStatus as i, type TreatmentMetadata as j, type VariantConfig as k, BanditAlgorithm as l, type ForgettingConfig as m, normalizePosterior as n, DEFAULT_HALF_LIFE_MS as o, parseDecisions as p, DEFAULT_WINDOW_MS as q, readCookie as r, serializeDecisions as s, STATIONARY as t, resolveForgetting as u, normalizeAlgorithm as v, ContentType as w, getContentTypeCategory as x, type BanditConfig as y, type ExperimentStats as z };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { T as Treatment, C as ContextualFeatures, O as OrderLineItem, B as BundleAssignmentResponse, a as CompanySnapshot, S as SnapshotTreatment } from './decision-cookie-
|
|
2
|
-
export { H as APIResponse, A as Account, g as AlgorithmResult, Q as ApiKey, J as AssignmentRequest, l as BanditAlgorithm, y as BanditConfig, h as BanditResult, a0 as Bundle, a1 as BundleAssignmentRequest, $ as BundleMode, a2 as BundleSlotAssignment, aa as CONTENT_TYPE_BY_KIND,
|
|
1
|
+
import { T as Treatment, C as ContextualFeatures, O as OrderLineItem, B as BundleAssignmentResponse, a as CompanySnapshot, S as SnapshotTreatment } from './decision-cookie-g9aDdSx9.js';
|
|
2
|
+
export { H as APIResponse, A as Account, g as AlgorithmResult, Q as ApiKey, J as AssignmentRequest, l as BanditAlgorithm, y as BanditConfig, h as BanditResult, a0 as Bundle, a1 as BundleAssignmentRequest, $ as BundleMode, a2 as BundleSlotAssignment, aa as CONTENT_TYPE_BY_KIND, aO as ClickFunnelGoal, e as Company, w as ContentType, c as CookieDecision, d as CookieDecisions, R as CreateApiKeyRequest, W as CreateApiKeyResponse, I as CreateExperimentRequest, D as DECISIONS_COOKIE, o as DEFAULT_HALF_LIFE_MS, q as DEFAULT_WINDOW_MS, E as Experiment, z as ExperimentStats, i as ExperimentStatus, m as ForgettingConfig, F as ForgettingMode, M as Funnel, am as FunnelGoal, N as FunnelRewardRequest, L as FunnelStatus, X as IdentifyMergeReason, Y as IdentifyUserRequest, Z as IdentifyUserResponse, ad as ImageContent, as as MAX_ALTERNATIVES, au as MAX_IMAGE_URL_LENGTH, ac as MAX_ORDERING_ITEMS, aw as MAX_ORDER_ITEMS, ax as MAX_ORDER_KEY_LENGTH, at as MAX_TEXT_ALTERNATIVE_LENGTH, ab as MIN_ORDERING_ITEMS, av as MIN_ORDER_ITEMS, ae as OfferContent, aW as OrderAmounts, aI as PICK_CHANNEL, aK as PICK_MODES, aJ as PICK_PROTOCOL_VERSION, aM as PICK_REJECTIONS, aR as PICK_TOKEN_PREFIX, a7 as PLACEMENTS, a5 as PLACEMENTS_BY_KIND, aQ as PanelToPicker, aB as PickDraft, aS as PickEnvelope, aL as PickMode, aN as PickRejection, aC as PickState, aF as PickStep, aP as PickerToPanel, a6 as Placement, P as Posterior, _ as ResolvedIdentity, aj as SITE_TARGET_KINDS, t as STATIONARY, a3 as STOREFRONT_KINDS, aD as SUGGESTED_SITE_EXPERIMENTS, f as Session, al as SiteTarget, ak as SiteTargetKind, b as SnapshotExperiment, a4 as StorefrontKind, K as TrackNamedEventRequest, af as TreatmentContent, j as TreatmentMetadata, G as TreatmentStats, U as User, V as VISITOR_COOKIE, k as VariantConfig, ay as formatOrder, x as getContentTypeCategory, ar as goalMatchesPage, a8 as isPlacement, aA as isReorderOf, ag as isShopifyCdnUrl, a9 as kindOfPlacement, aE as moreExperimentsSentence, v as normalizeAlgorithm, ap as normalizeFunnelGoal, n as normalizePosterior, ao as normalizeSiteTarget, aH as parseAlternative, p as parseDecisions, az as parseOrder, aV as parsePanelMessage, aU as parsePickerMessage, an as parseSiteContent, ah as parseTreatmentContent, aT as pickEnvelope, aG as pickStep, r as readCookie, u as resolveForgetting, s as serializeDecisions, ai as serializeTreatmentConfig, aq as targetMatchesPage } from './decision-cookie-g9aDdSx9.js';
|
|
3
3
|
|
|
4
4
|
declare function validateTreatmentWeights(treatments: Treatment[]): boolean;
|
|
5
5
|
declare function normalizeTreatmentWeights(treatments: Treatment[]): Treatment[];
|
|
@@ -145,6 +145,12 @@ declare const SITE_PLATFORMS: readonly [{
|
|
|
145
145
|
readonly path: "shopify";
|
|
146
146
|
readonly codeBox: "";
|
|
147
147
|
readonly steps: readonly [];
|
|
148
|
+
}, {
|
|
149
|
+
readonly id: "shopify_theme";
|
|
150
|
+
readonly label: "Shopify";
|
|
151
|
+
readonly path: "script";
|
|
152
|
+
readonly codeBox: "Online Store, Themes, Edit code, layout/theme.liquid, just before </head>.";
|
|
153
|
+
readonly steps: readonly ["In your Shopify admin open Online Store, then Themes.", "On your live theme click the three dots, then Edit code.", "Open layout/theme.liquid.", "Paste the script on the line just before </head>.", "Click Save.", "Then add the purchase pixel below, so Bandit learns from orders."];
|
|
148
154
|
}, {
|
|
149
155
|
readonly id: "webflow";
|
|
150
156
|
readonly label: "Webflow";
|
|
@@ -229,6 +235,7 @@ type ArrivalTouch = {
|
|
|
229
235
|
utmCampaign?: string;
|
|
230
236
|
utmContent?: string;
|
|
231
237
|
trackingParam?: string;
|
|
238
|
+
klaviyoExchangeId?: string;
|
|
232
239
|
referrerHost?: string;
|
|
233
240
|
};
|
|
234
241
|
type Arrival = {
|
|
@@ -278,6 +285,26 @@ type ArrivalSource = {
|
|
|
278
285
|
};
|
|
279
286
|
declare function sourceOf(arrival: Arrival | undefined): ArrivalSource;
|
|
280
287
|
|
|
288
|
+
declare const CDP_SOURCES: readonly ["segment", "rudderstack", "posthog"];
|
|
289
|
+
type CdpSource = (typeof CDP_SOURCES)[number];
|
|
290
|
+
interface CdpAlias {
|
|
291
|
+
source: CdpSource;
|
|
292
|
+
externalId: string;
|
|
293
|
+
}
|
|
294
|
+
declare const MAX_CDP_EXTERNAL_ID_LENGTH = 256;
|
|
295
|
+
interface CdpStorage {
|
|
296
|
+
readonly length: number;
|
|
297
|
+
key(index: number): string | null;
|
|
298
|
+
getItem(key: string): string | null;
|
|
299
|
+
}
|
|
300
|
+
interface CdpSourceEntry {
|
|
301
|
+
source: CdpSource;
|
|
302
|
+
key: RegExp;
|
|
303
|
+
parse: (raw: string) => string | null;
|
|
304
|
+
}
|
|
305
|
+
declare const CDP_SOURCE_REGISTRY: readonly CdpSourceEntry[];
|
|
306
|
+
declare function readCdpAliases(cookieHeader: string, storage: CdpStorage | null): CdpAlias[];
|
|
307
|
+
|
|
281
308
|
type PayoutUnit = 'count' | 'revenue' | 'margin';
|
|
282
309
|
declare const PAYOUT_UNITS: readonly PayoutUnit[];
|
|
283
310
|
declare const NEW_PAYOUT_UNIT: PayoutUnit;
|
|
@@ -294,6 +321,18 @@ declare const PAYOUT_UNIT_COPY: Record<PayoutUnit, {
|
|
|
294
321
|
}>;
|
|
295
322
|
declare function formatPayout(unit: PayoutUnit, value: number): string;
|
|
296
323
|
|
|
324
|
+
type TrialRule = 'served' | 'exposure';
|
|
325
|
+
declare const TRIAL_RULES: readonly TrialRule[];
|
|
326
|
+
declare function isTrialRule(value: unknown): value is TrialRule;
|
|
327
|
+
declare function trialRuleFor({ target, requested, }: {
|
|
328
|
+
target?: unknown;
|
|
329
|
+
requested?: TrialRule;
|
|
330
|
+
}): TrialRule;
|
|
331
|
+
declare function trialRuleOf(experiment: {
|
|
332
|
+
trialOn?: TrialRule;
|
|
333
|
+
}): TrialRule;
|
|
334
|
+
declare const TRIAL_RULE_COPY: Record<TrialRule, string>;
|
|
335
|
+
|
|
297
336
|
interface BanditsClientConfig {
|
|
298
337
|
apiUrl: string;
|
|
299
338
|
apiKey: string;
|
|
@@ -303,6 +342,7 @@ interface BanditsClientConfig {
|
|
|
303
342
|
sessionTtl?: number;
|
|
304
343
|
visitorId?: string;
|
|
305
344
|
captureArrival?: boolean;
|
|
345
|
+
captureCdpAliases?: boolean;
|
|
306
346
|
}
|
|
307
347
|
declare class BanditsRequestError extends Error {
|
|
308
348
|
readonly status: number | undefined;
|
|
@@ -315,14 +355,19 @@ interface Assignment {
|
|
|
315
355
|
userId: string;
|
|
316
356
|
config: any;
|
|
317
357
|
funnelId?: string;
|
|
358
|
+
trialOn?: 'served' | 'exposure';
|
|
318
359
|
}
|
|
319
360
|
declare class BanditsClient {
|
|
320
361
|
private config;
|
|
321
362
|
private namedEventQueue;
|
|
322
363
|
readonly sessionId: string;
|
|
323
364
|
readonly visitorId: string;
|
|
365
|
+
private exposureQueue;
|
|
366
|
+
private exposedIds;
|
|
324
367
|
private flushTimer?;
|
|
325
368
|
constructor(config: BanditsClientConfig);
|
|
369
|
+
reportCdpAliases(): Promise<boolean>;
|
|
370
|
+
aliasVisitor(aliases: CdpAlias[]): Promise<void>;
|
|
326
371
|
reportArrival(): Promise<boolean>;
|
|
327
372
|
getAssignment(experimentId: string, userId?: string, context?: ContextualFeatures): Promise<Assignment>;
|
|
328
373
|
trackNamedEvent(event: {
|
|
@@ -338,7 +383,18 @@ declare class BanditsClient {
|
|
|
338
383
|
assignmentId?: string;
|
|
339
384
|
}): void;
|
|
340
385
|
flush(): Promise<void>;
|
|
341
|
-
|
|
386
|
+
private flushNamedEvents;
|
|
387
|
+
private flushExposures;
|
|
388
|
+
exposed(assignmentId: string, opts?: {
|
|
389
|
+
immediate?: boolean;
|
|
390
|
+
}): void;
|
|
391
|
+
observeExposure(assignmentId: string, element: Element, opts?: {
|
|
392
|
+
threshold?: number;
|
|
393
|
+
dwellMs?: number;
|
|
394
|
+
}): () => void;
|
|
395
|
+
identify(anonymousId: string, identifiedUserId: string, mergeReason?: 'user_signup' | 'email_verification' | 'social_login' | 'account_recovery' | 'manual', options?: {
|
|
396
|
+
email?: string;
|
|
397
|
+
}): Promise<void>;
|
|
342
398
|
label(userId: string, labels: Record<string, string | boolean>): Promise<void>;
|
|
343
399
|
trackFunnelReward(funnelId: string, userId: string, value: number): Promise<void>;
|
|
344
400
|
convert(funnelId: string, value?: number): Promise<void>;
|
|
@@ -448,4 +504,4 @@ declare function reportPlanImpressions(plan: EmailPlan, recipientIds: string[],
|
|
|
448
504
|
alreadyRecorded: boolean;
|
|
449
505
|
}>;
|
|
450
506
|
|
|
451
|
-
export { ARRIVAL_CHANNELS, ARRIVAL_TTL_MS, type Arrival, type ArrivalChannel, type ArrivalSource, type ArrivalTouch, type Assignment, BanditsClient as BanditClient, BanditsClient, type BanditsClientConfig, BanditsRequestError, type Bound, BundleAssignmentResponse, type ButtonBlock, CHANNEL_LABELS, CHANNEL_RULES, CompanySnapshot, ContextualFeatures, DEFAULT_SESSION_TTL_MS, type DividerBlock, EMAIL_TOKEN_PARAM, type EmailBlock, type EmailDocument, type EmailPlan, type EmailTokenPayload, type HeadingBlock, type ImageBlock, MAX_ARRIVAL_VALUE_LENGTH, MAX_RAW_TOUCH_VALUE_LENGTH, MAX_REFERRER_HOST_LENGTH, NEW_PAYOUT_UNIT, OrderLineItem, PASS_THROUGH_HOSTS, PAYOUT_UNITS, PAYOUT_UNIT_COPY, type PayoutUnit, type PlanArm, type PlanRenderResult, type PlanSlot, type RenderEmailOptions, type RenderedDocument, type RenderedEmail, type RewriteOptions, type RewriteResult, SCRIPT_PLATFORMS, SESSION_CREATED_AT_KEY, SESSION_ID_KEY, SITE_PLATFORMS, SITE_PLATFORM_IDS, type ScriptPlatform, type SessionOptions, type SigningKey, type SitePlatform, type SitePlatformId, type SitePlatformPath, type SlotBinding, SnapshotClient, type SnapshotClientConfig, SnapshotTreatment, type SpacerBlock, type StoredArrival, type SyncAssignment, TRACKING_PARAM_SOURCES, type TextBlock, Treatment, UNKNOWN_SOURCE_KEY, UTM_PARAMS, VISITOR_ID_KEY, type VerifiedToken, appendEmailToken, arrivalFromTouch, buildSubdomainUrl, calculateConfidenceInterval, channelOf, extractDocumentSlots, extractEmailLinks, extractSlotNames, extractSubdomain, formatPayout, generateId, generateSubdomain, getOrCreateSessionId, getOrCreateVisitorId, hashRecipient, impressionManifest, isArrivalActive, isCurrencyUnit, isDirectTouch, isPassThroughHost, isPayoutUnit, isSlotBinding, isValidEmail, isValidSubdomain, matchesConversionPath, mintEmailToken, normalizeArrivalValue, normalizeConversionPath, normalizeHost, normalizeTreatmentWeights, payoutUnitOfRewardBasis, pickArm, pickTreatment, platformById, renderEmail, renderEmailDocument, renderFromPlan, reportPlanImpressions, rewardValue, rewriteEmailLinks, sampleCombination, sanitizeMetadata, shouldRefreshPlan, shouldReportTouch, sourceOf, touchFromPage, touchSignature, uniformFor, validateTreatmentWeights, verifyEmailToken };
|
|
507
|
+
export { ARRIVAL_CHANNELS, ARRIVAL_TTL_MS, type Arrival, type ArrivalChannel, type ArrivalSource, type ArrivalTouch, type Assignment, BanditsClient as BanditClient, BanditsClient, type BanditsClientConfig, BanditsRequestError, type Bound, BundleAssignmentResponse, type ButtonBlock, CDP_SOURCES, CDP_SOURCE_REGISTRY, CHANNEL_LABELS, CHANNEL_RULES, type CdpAlias, type CdpSource, type CdpStorage, CompanySnapshot, ContextualFeatures, DEFAULT_SESSION_TTL_MS, type DividerBlock, EMAIL_TOKEN_PARAM, type EmailBlock, type EmailDocument, type EmailPlan, type EmailTokenPayload, type HeadingBlock, type ImageBlock, MAX_ARRIVAL_VALUE_LENGTH, MAX_CDP_EXTERNAL_ID_LENGTH, MAX_RAW_TOUCH_VALUE_LENGTH, MAX_REFERRER_HOST_LENGTH, NEW_PAYOUT_UNIT, OrderLineItem, PASS_THROUGH_HOSTS, PAYOUT_UNITS, PAYOUT_UNIT_COPY, type PayoutUnit, type PlanArm, type PlanRenderResult, type PlanSlot, type RenderEmailOptions, type RenderedDocument, type RenderedEmail, type RewriteOptions, type RewriteResult, SCRIPT_PLATFORMS, SESSION_CREATED_AT_KEY, SESSION_ID_KEY, SITE_PLATFORMS, SITE_PLATFORM_IDS, type ScriptPlatform, type SessionOptions, type SigningKey, type SitePlatform, type SitePlatformId, type SitePlatformPath, type SlotBinding, SnapshotClient, type SnapshotClientConfig, SnapshotTreatment, type SpacerBlock, type StoredArrival, type SyncAssignment, TRACKING_PARAM_SOURCES, TRIAL_RULES, TRIAL_RULE_COPY, type TextBlock, Treatment, type TrialRule, UNKNOWN_SOURCE_KEY, UTM_PARAMS, VISITOR_ID_KEY, type VerifiedToken, appendEmailToken, arrivalFromTouch, buildSubdomainUrl, calculateConfidenceInterval, channelOf, extractDocumentSlots, extractEmailLinks, extractSlotNames, extractSubdomain, formatPayout, generateId, generateSubdomain, getOrCreateSessionId, getOrCreateVisitorId, hashRecipient, impressionManifest, isArrivalActive, isCurrencyUnit, isDirectTouch, isPassThroughHost, isPayoutUnit, isSlotBinding, isTrialRule, isValidEmail, isValidSubdomain, matchesConversionPath, mintEmailToken, normalizeArrivalValue, normalizeConversionPath, normalizeHost, normalizeTreatmentWeights, payoutUnitOfRewardBasis, pickArm, pickTreatment, platformById, readCdpAliases, renderEmail, renderEmailDocument, renderFromPlan, reportPlanImpressions, rewardValue, rewriteEmailLinks, sampleCombination, sanitizeMetadata, shouldRefreshPlan, shouldReportTouch, sourceOf, touchFromPage, touchSignature, trialRuleFor, trialRuleOf, uniformFor, validateTreatmentWeights, verifyEmailToken };
|