@amplitude/analytics-browser
Version:
Official Amplitude SDK for Web
53 lines • 2.72 kB
TypeScript
import { AmplitudeCore, Event, EventOptions, IIdentify, IRevenue, TransportType, Result, BrowserOptions, BrowserConfig, BrowserClient, AnalyticsClient } from '@amplitude/analytics-core';
import { WebAttribution } from './attribution/web-attribution';
/**
* Exported for `@amplitude/unified` or integration with blade plugins.
* If you only use `@amplitude/analytics-browser`, use `amplitude.init()` or `amplitude.createInstance()` instead.
*/
export declare class AmplitudeBrowser extends AmplitudeCore implements BrowserClient, AnalyticsClient {
config: BrowserConfig;
previousSessionDeviceId: string | undefined;
previousSessionUserId: string | undefined;
webAttribution: WebAttribution | undefined;
userProperties: {
[key: string]: any;
} | undefined;
_diagnosticsSampleRate: number;
init(apiKey?: string, userIdOrOptions?: string | BrowserOptions, maybeOptions?: BrowserOptions): import("@amplitude/analytics-core").AmplitudeReturn<void>;
protected _init(options: BrowserOptions & {
apiKey: string;
}): Promise<void>;
getUserId(): string | undefined;
setUserId(userId: string | undefined): void;
getDeviceId(): string | undefined;
setDeviceId(deviceId: string): void;
reset(): void;
getIdentity(): {
deviceId: string | undefined;
userId: string | undefined;
userProperties: {
[key: string]: any;
} | undefined;
};
getOptOut(): boolean | undefined;
getSessionId(): number | undefined;
setSessionId(sessionId: number): import("@amplitude/analytics-core").AmplitudeReturn<void> | import("@amplitude/analytics-core").AmplitudeReturn<Result[]>;
extendSession(): void;
setTransport(transport: TransportType): void;
identify(identify: IIdentify, eventOptions?: EventOptions): import("@amplitude/analytics-core").AmplitudeReturn<Result>;
groupIdentify(groupType: string, groupName: string | string[], identify: IIdentify, eventOptions?: EventOptions): import("@amplitude/analytics-core").AmplitudeReturn<Result>;
revenue(revenue: IRevenue, eventOptions?: EventOptions): import("@amplitude/analytics-core").AmplitudeReturn<Result>;
private trackCampaignEventIfNeeded;
process(event: Event): Promise<Result>;
private logBrowserOptions;
/**
* @experimental
* WARNING: This method is for internal testing only and is not part of the public API.
* It may be changed or removed at any time without notice.
*
* Sets the diagnostics sample rate before amplitude.init()
* @param sampleRate - The sample rate to set
*/
_setDiagnosticsSampleRate(sampleRate: number): void;
}
//# sourceMappingURL=browser-client.d.ts.map