@klevu/core
Version:
Typescript SDK that simplifies development on Klevu backend. Klevu provides advanced AI-powered search and discovery solutions for online retailers.
97 lines (96 loc) • 2.52 kB
TypeScript
import type { AxiosInstance, AxiosStatic } from "axios";
type KlevuConfiguration = {
/**
* Your Klevu url
*/
url: string;
/**
* Your Klevu apiKey
*/
apiKey: string;
/**
* Max request caching time in milliseconds. Default 10 minutes. Set to 0 to disable
*/
cacheMaxTTL?: number;
/**
* Events API v1 url
*/
eventsApiV1Url?: string;
/**
* Events API v2 url
*/
eventsApiV2Url?: string;
/**
* Recommendations API url
*/
recommendationsApiUrl?: string;
/**
* MOI API url
*/
moiApiUrl?: string;
/**
* VisitorServiceUrl for session creation
*/
visitorServiceUrl?: string;
/**
* Ipv6 ServiceUrl for ipv6 retrieval used in analytics
*/
ipv6ServiceUrl?: string;
/**
* Ipv4 ServiceUrl for ipv4 retrieval used in analytics
*/
ipv4ServiceUrl?: string;
/**
*
*/
axios?: AxiosStatic;
/**
* Prevent clicks being tracked in memory or stored in local storage. This will break personalisation and recommendations.
*/
disableClickTrackStoring?: boolean;
/**
* Set true if using klaviyo connector
*/
enableKlaviyoConnector?: boolean;
/**
* Enable data protection, pass true if data protection should be enabled
*/
useConsent?: boolean;
/**
* True when user provides consent for reading protected data
*/
consentGiven?: boolean;
/**
* Set to true to disable user session generation.
*/
disableUserSession?: boolean;
};
export declare class KlevuConfig {
static default: KlevuConfig | undefined;
apiKey: string;
url: string;
cacheMaxTTL: number;
eventsApiV1Url: string;
eventsApiV2Url: string;
recommendationsApiUrl: string;
visitorServiceUrl: string;
ipv6ServiceUrl: string;
ipv4ServiceUrl: string;
axios?: AxiosInstance;
moiApiUrl: string;
disableClickTracking: boolean;
enableKlaviyoConnector: boolean;
useConsent: boolean;
consentGiven: boolean;
disableUserSession: boolean;
constructor(config: KlevuConfiguration);
static init(config: KlevuConfiguration): void;
static initializeIPResolver(): void;
static initializeUserSession(): void;
static getDefault(): KlevuConfig;
isConsentDisallowed(): boolean;
setUseConsent(useConsent: boolean): void;
setEnableKlaviyoConnector(val: boolean): void;
setConsentGiven(userConsent: boolean): void;
}
export {};