import { ISplitStatus } from './types'; export declare function getSplitClient(factory: SplitIO.IBrowserSDK, key?: SplitIO.SplitKey): SplitIO.IBrowserClient; export declare function getStatus(client?: SplitIO.IBrowserClient): ISplitStatus; export declare function initAttributes(client?: SplitIO.IBrowserClient, attributes?: SplitIO.Attributes): void; export declare function getTreatment(flagName: string, withConfig: true, factory?: SplitIO.IBrowserSDK): SplitIO.TreatmentWithConfig; export declare function getTreatment(flagName: string, withConfig: false, factory?: SplitIO.IBrowserSDK): SplitIO.Treatment; export declare function getTreatment(flagName: string, withConfig: boolean, factory?: SplitIO.IBrowserSDK): SplitIO.Treatment | SplitIO.TreatmentWithConfig; export declare function getTreatments(featureFlagNames: unknown, withConfig: true, factory?: SplitIO.IBrowserSDK): SplitIO.TreatmentsWithConfig; export declare function getTreatments(featureFlagNames: unknown, withConfig: false, factory?: SplitIO.IBrowserSDK): SplitIO.Treatments; /** * Utils to memoize `client.getTreatments*` method calls to avoid duplicated impressions. * The result treatments are the same given the same `client` instance, `lastUpdate` timestamp, and list of feature flag names and attributes. */ export declare function argsAreEqual(newArgs: any[], lastArgs: any[]): boolean;