@tryinhouse/react-native-inhouse-sdk
Version:
A React Native module for tracking SDK functionality
45 lines • 2.18 kB
TypeScript
import { EmitterSubscription } from "react-native";
export interface TrackingSDKCallback {
callbackType: string;
data: string;
}
export interface TrackingSDKInterface {
initialize(tokenId: string, projectToken: string, shortLinkDomain: string, serverUrl?: string, enableDebugLogging?: boolean): Promise<string>;
onAppResume(): Promise<void>;
onNewURL(url: string): Promise<void>;
trackAppOpen(shortLink?: string): Promise<string>;
trackSessionStart(shortLink?: string): Promise<string>;
trackShortLinkClick(shortLink: string, deepLink?: string): Promise<string>;
getInstallReferrer(): Promise<string>;
fetchInstallReferrer(): Promise<string>;
resetFirstInstall(): Promise<void>;
addCallbackListener(callback: (data: TrackingSDKCallback) => void): EmitterSubscription;
removeCallbackListener(subscription: EmitterSubscription): void;
removeAllListeners(): void;
getFingerprint(): Promise<string>;
getFingerprintId(algorithm?: string): Promise<string>;
}
declare class TrackingSDKManager implements TrackingSDKInterface {
private eventEmitter;
private listeners;
private isAvailable;
constructor();
private checkAvailability;
initialize(projectToken: string, tokenId: string, shortLinkDomain: string, serverUrl?: string, enableDebugLogging?: boolean): Promise<string>;
onAppResume(): Promise<void>;
onNewURL(url: string): Promise<void>;
trackAppOpen(shortLink?: string): Promise<string>;
trackSessionStart(shortLink?: string): Promise<string>;
trackShortLinkClick(shortLink: string, deepLink?: string): Promise<string>;
getInstallReferrer(): Promise<string>;
fetchInstallReferrer(): Promise<string>;
resetFirstInstall(): Promise<void>;
addCallbackListener(callback: (data: TrackingSDKCallback) => void): EmitterSubscription;
removeCallbackListener(subscription: EmitterSubscription): void;
removeAllListeners(): void;
getFingerprint(): Promise<string>;
getFingerprintId(algorithm?: string): Promise<string>;
}
declare let trackingSDKInstance: TrackingSDKManager | null;
export default trackingSDKInstance;
//# sourceMappingURL=index.d.ts.map