Skip to content

Latest commit

 

History

History
166 lines (141 loc) · 7.15 KB

js-client-sdk.api.md

File metadata and controls

166 lines (141 loc) · 7.15 KB

API Report File for "@eppo/js-client-sdk"

Do not edit this file. It is a report generated by API Extractor.

/// <reference types="chrome" />

import { AsyncMap } from '@eppo/js-client-sdk-common';
import { AttributeType } from '@eppo/js-client-sdk-common';
import { BanditActions } from '@eppo/js-client-sdk-common';
import { BanditSubjectAttributes } from '@eppo/js-client-sdk-common';
import { EppoClient } from '@eppo/js-client-sdk-common';
import { EppoPrecomputedClient } from '@eppo/js-client-sdk-common';
import { Flag } from '@eppo/js-client-sdk-common';
import { IAssignmentDetails } from '@eppo/js-client-sdk-common';
import { IAssignmentEvent } from '@eppo/js-client-sdk-common';
import { IAssignmentLogger } from '@eppo/js-client-sdk-common';
import { IAsyncStore } from '@eppo/js-client-sdk-common';
import { IContainerExperiment } from '@eppo/js-client-sdk-common';
import { ObfuscatedFlag } from '@eppo/js-client-sdk-common';

// @public
export function buildStorageKeySuffix(apiKey: string): string;

// Warning: (ae-forgotten-export) The symbol "IStringStorageEngine" needs to be exported by the entry point index.d.ts
//
// @public
export class ChromeStorageEngine implements IStringStorageEngine {
    // Warning: (ae-forgotten-export) The symbol "ChromeStorageAsyncMap" needs to be exported by the entry point index.d.ts
    constructor(storageMap: ChromeStorageAsyncMap<string>, storageKeySuffix: string);
    // (undocumented)
    getContentsJsonString: () => Promise<string | null>;
    // (undocumented)
    getMetaJsonString: () => Promise<string | null>;
    // (undocumented)
    setContentsJsonString: (configurationJsonString: string) => Promise<void>;
    // (undocumented)
    setMetaJsonString: (metaJsonString: string) => Promise<void>;
}

// @public
export class EppoJSClient extends EppoClient {
    // (undocumented)
    getBanditAction(flagKey: string, subjectKey: string, subjectAttributes: BanditSubjectAttributes, actions: BanditActions, defaultValue: string): Omit<IAssignmentDetails<string>, 'evaluationDetails'>;
    // (undocumented)
    getBanditActionDetails(flagKey: string, subjectKey: string, subjectAttributes: BanditSubjectAttributes, actions: BanditActions, defaultValue: string): IAssignmentDetails<string>;
    // @deprecated (undocumented)
    getBoolAssignment(flagKey: string, subjectKey: string, subjectAttributes: Record<string, AttributeType>, defaultValue: boolean): boolean;
    // (undocumented)
    getBooleanAssignment(flagKey: string, subjectKey: string, subjectAttributes: Record<string, AttributeType>, defaultValue: boolean): boolean;
    // (undocumented)
    getBooleanAssignmentDetails(flagKey: string, subjectKey: string, subjectAttributes: Record<string, AttributeType>, defaultValue: boolean): IAssignmentDetails<boolean>;
    // (undocumented)
    getExperimentContainerEntry<T>(flagExperiment: IContainerExperiment<T>, subjectKey: string, subjectAttributes: Record<string, AttributeType>): T;
    // (undocumented)
    getIntegerAssignment(flagKey: string, subjectKey: string, subjectAttributes: Record<string, AttributeType>, defaultValue: number): number;
    // (undocumented)
    getIntegerAssignmentDetails(flagKey: string, subjectKey: string, subjectAttributes: Record<string, AttributeType>, defaultValue: number): IAssignmentDetails<number>;
    // (undocumented)
    getJSONAssignment(flagKey: string, subjectKey: string, subjectAttributes: Record<string, AttributeType>, defaultValue: object): object;
    // (undocumented)
    getJSONAssignmentDetails(flagKey: string, subjectKey: string, subjectAttributes: Record<string, AttributeType>, defaultValue: object): IAssignmentDetails<object>;
    // (undocumented)
    getNumericAssignment(flagKey: string, subjectKey: string, subjectAttributes: Record<string, AttributeType>, defaultValue: number): number;
    // (undocumented)
    getNumericAssignmentDetails(flagKey: string, subjectKey: string, subjectAttributes: Record<string, AttributeType>, defaultValue: number): IAssignmentDetails<number>;
    // (undocumented)
    getStringAssignment(flagKey: string, subjectKey: string, subjectAttributes: Record<string, AttributeType>, defaultValue: string): string;
    // (undocumented)
    getStringAssignmentDetails(flagKey: string, subjectKey: string, subjectAttributes: Record<string, AttributeType>, defaultValue: string): IAssignmentDetails<string>;
    // (undocumented)
    static initialized: boolean;
    // (undocumented)
    static instance: EppoJSClient;
}

// @public
export class EppoPrecomputedJSClient extends EppoPrecomputedClient {
    // (undocumented)
    getBooleanAssignment(flagKey: string, defaultValue: boolean): boolean;
    // (undocumented)
    getIntegerAssignment(flagKey: string, defaultValue: number): number;
    // (undocumented)
    getJSONAssignment(flagKey: string, defaultValue: object): object;
    // (undocumented)
    getNumericAssignment(flagKey: string, defaultValue: number): number;
    // (undocumented)
    getStringAssignment(flagKey: string, defaultValue: string): string;
    // (undocumented)
    static initialized: boolean;
    // (undocumented)
    static instance: EppoPrecomputedJSClient;
}

export { Flag }

// @public
export function getConfigUrl(apiKey: string, baseUrl?: string): URL;

// @public
export function getInstance(): EppoClient;

// @public
export function getPrecomputedInstance(): EppoPrecomputedClient;

export { IAssignmentDetails }

export { IAssignmentEvent }

export { IAssignmentLogger }

export { IAsyncStore }

// Warning: (ae-forgotten-export) The symbol "IBaseRequestConfig" needs to be exported by the entry point index.d.ts
//
// @public
export interface IClientConfig extends IBaseRequestConfig {
    eventIngestionConfig?: {
        deliveryIntervalMs?: number;
        retryIntervalMs?: number;
        maxRetryDelayMs?: number;
        maxRetries?: number;
        batchSize?: number;
    };
    forceReinitialize?: boolean;
    maxCacheAgeSeconds?: number;
    persistentStore?: IAsyncStore<Flag>;
    throwOnFailedInitialization?: boolean;
    // Warning: (ae-forgotten-export) The symbol "ServingStoreUpdateStrategy" needs to be exported by the entry point index.d.ts
    updateOnFetch?: ServingStoreUpdateStrategy;
    useExpiredCache?: boolean;
}

// @public
export interface IClientConfigSync {
    // (undocumented)
    assignmentLogger?: IAssignmentLogger;
    // (undocumented)
    flagsConfiguration: Record<string, Flag | ObfuscatedFlag>;
    // (undocumented)
    isObfuscated?: boolean;
    // (undocumented)
    throwOnFailedInitialization?: boolean;
}

// @public
export function init(config: IClientConfig): Promise<EppoClient>;

// @public
export interface IPrecomputedClientConfig extends IBaseRequestConfig {
    subjectAttributes?: Record<string, AttributeType>;
    subjectKey: string;
}

export { ObfuscatedFlag }

// @public
export function offlineInit(config: IClientConfigSync): EppoClient;

// @public
export function precomputedInit(config: IPrecomputedClientConfig): Promise<EppoPrecomputedClient>;

// (No @packageDocumentation comment for this package)