UNPKG

@kameleoon/javascript-sdk-core

Version:
29 lines (28 loc) 1.57 kB
import { Result } from 'ts-res'; import { KameleoonError } from '../kameleoonError'; import { JSONType } from '../clientConfiguration'; import { RequesterParamsType, GetVisitorDataResultType, GetVisitorDataParamsType } from './types'; import { ResultConfigurationDataType } from '../clientConfiguration/types'; export interface IRequester { getClientConfiguration: () => Promise<Result<ResultConfigurationDataType, KameleoonError>>; getRemoteData: (key: string) => Promise<Result<JSONType, KameleoonError>>; track: (body: string, isBodyUserAgent: boolean) => Promise<Result<void, void>>; } export declare class Requester implements IRequester { private externalRequester; private urlProvider; private packageInfo; private trackRetryDelay; private useAbortController; private timeout; constructor({ urlProvider, packageInfo, externalRequester, requestTimeout, trackRetryDelay, useAbortController, }: RequesterParamsType); getClientConfiguration(timeStamp?: number, modifiedSince?: string): Promise<Result<ResultConfigurationDataType, KameleoonError>>; getRemoteData(key: string): Promise<Result<JSONType, KameleoonError>>; getVisitorData({ visitorCode, filters, isMappingIdentifier, }: GetVisitorDataParamsType): Promise<Result<GetVisitorDataResultType, KameleoonError>>; track(body: string, isBodyUserAgent: boolean): Promise<Result<void, void>>; private sendRequest; private logRequestError; private parseResponse; private getLastModifiedHeader; private logReceivedConfigurationResponse; }