import { primitive, IHit, FlagDTO, IFSFlagMetadata, CampaignDTO } from '../types'; import { StrategyAbstract } from './StrategyAbstract'; import { VisitorDelegate } from './index'; import { GetFlagMetadataParam, GetFlagValueParam, VisitorExposedParam } from '../type.local'; import { HitAbstract } from '../hit/HitAbstract'; export declare const TYPE_HIT_REQUIRED_ERROR = "property type is required and must "; export declare const HIT_NULL_ERROR = "Hit must not be null"; export declare class DefaultStrategy extends StrategyAbstract { private checkPredefinedContext; private updateContextKeyValue; private checkAndUpdateContext; updateContext(key: string, value: primitive): void; updateContext(context: Record): void; clearContext(): void; private isDeDuplicated; protected sendActivate(flagDto: FlagDTO, defaultValue?: unknown): Promise; sendHit(hit: HitAbstract): Promise; sendHit(hit: IHit): Promise; sendHits(hits: HitAbstract[]): Promise; sendHits(hits: IHit[]): Promise; private getHit; private isHitAbstract; private prepareAndSendHit; authenticate(visitorId: string): void; unauthenticate(): void; handleFetchFlagsError(error: unknown, now: number, campaigns: CampaignDTO[] | null): void; getCampaigns(now: number): Promise<{ campaigns: CampaignDTO[] | null; error?: string; isFetching?: boolean; isBuffered?: boolean; }>; protected fetchCampaignsFromCache(visitor: VisitorDelegate): CampaignDTO[] | null; handleNoCampaigns(now: number): CampaignDTO[] | null; sendVisitorAllocatedVariations(): void; private extractFlags; fetchFlags(): Promise; visitorExposed(param: VisitorExposedParam): Promise; private sendFlagTroubleshooting; getFlagValue(param: GetFlagValueParam): T extends null ? unknown : T; private SendFlagMetadataTroubleshooting; getFlagMetadata(param: GetFlagMetadataParam): IFSFlagMetadata; }