react-native-grovs-wrapper
Version:
Grovs react native SDK
61 lines • 2.25 kB
TypeScript
import type { TurboModule } from 'react-native';
export type LogLevel = 'info' | 'error';
export type AnyPrimitive = string | number | boolean;
export type Any = string | number | boolean | Array<AnyPrimitive>;
export interface DeeplinkResponse {
link: string;
data?: {
[key: string]: Any;
};
}
export interface CustomLinkRedirect {
link: string;
open_if_app_installed: boolean;
}
export interface CustomRedirects {
ios: CustomLinkRedirect;
android: CustomLinkRedirect;
desktop: CustomLinkRedirect;
}
export interface Tracking {
utm_medium?: string;
utm_source?: string;
utm_campaign?: string;
}
export interface Spec extends TurboModule {
setIdentifier(identifier?: string): void;
setPushToken(pushToken?: string): void;
setAttributes(attributes?: {
[key: string]: Any;
}): void;
setSDK(enabled: boolean): void;
setDebug(level: LogLevel): void;
generateLink(title?: string, subtitle?: string, imageURL?: string, data?: {
[key: string]: Any;
}, tags?: Array<Any>, customRedirects?: CustomRedirects, showPreviewIos?: boolean, showPreviewAndroid?: boolean, tracking?: Tracking): Promise<string>;
displayMessages(): Promise<void>;
numberOfUnreadMessages(): Promise<number>;
addListener(eventName: string): void;
removeListeners(count: number): void;
markReadyToHandleDeeplinks(): void;
}
export declare class TurboModuleGrovs {
setIdentifier(identifier?: string): void;
setPushToken(pushToken?: string): void;
setAttributes(attributes?: {
[key: string]: Any;
}): void;
setSDK(enabled: boolean): void;
setDebug(level: LogLevel): void;
generateLink(title?: string, subtitle?: string, imageURL?: string, data?: {
[key: string]: Any;
}, tags?: Array<Any>, customRedirects?: CustomRedirects, showPreviewIos?: boolean, showPreviewAndroid?: boolean, tracking?: Tracking): Promise<string>;
displayMessages(): Promise<void>;
numberOfUnreadMessages(): Promise<number>;
onDeeplinkReceived(callback: (data: DeeplinkResponse) => void): {
remove: () => void;
};
}
declare const _default: TurboModuleGrovs;
export default _default;
//# sourceMappingURL=NativeGrovsWrapper.d.ts.map