@flagship.io/js-sdk
Version:
38 lines (37 loc) • 1.52 kB
TypeScript
import { IFlagshipConfig } from '../config/index';
import { CampaignDTO, primitive } from '../types';
import { IHttpClient } from '../utils/HttpClient';
import { MurmurHash } from '../utils/MurmurHash';
import { VisitorAbstract } from '../visitor/VisitorAbstract';
import { DecisionManager } from './DecisionManager';
import { ISdkManager } from '../main/ISdkManager';
import { ITrackingManager } from '../api/ITrackingManager.ts';
type ConstructorParam = {
httpClient: IHttpClient;
config: IFlagshipConfig;
murmurHash: MurmurHash;
sdkManager: ISdkManager;
trackingManager: ITrackingManager;
flagshipInstanceId?: string;
};
export declare class BucketingManager extends DecisionManager {
private _murmurHash;
private _sdkManager;
private get _bucketingContent();
constructor({ httpClient, config, murmurHash, sdkManager, trackingManager, flagshipInstanceId }: ConstructorParam);
private sendContext;
getThirdPartySegment(visitorId: string): Promise<Record<string, primitive>>;
getCampaignsAsync(visitor: VisitorAbstract): Promise<CampaignDTO[] | null>;
private getVisitorCampaigns;
private getVariation;
private checkVisitorMatchesTargeting;
private checkAllTargetingRulesMatch;
private matchesArrayTargeting;
private matchesTargetingCriteria;
private evaluateEqualityOperator;
private evaluateStringOperator;
private evaluateExistenceOperator;
private evaluateComparisonOperator;
private evaluateOperator;
}
export {};