UNPKG

react-native-appodeal

Version:

React Native Module created to support Appodeal SDK for iOS and Android platforms

87 lines (71 loc) 3.11 kB
import type { TurboModule } from 'react-native'; import { TurboModuleRegistry } from 'react-native'; import type { UnsafeObject } from 'react-native/Libraries/Types/CodegenTypes'; import type { AppodealPurchaseValidationResult } from '../types/AppodealPurchaseValidationResult'; export interface Spec extends TurboModule { // Basic initialization initialize(appKey: string, adTypes: number, pluginVersion: string): void; isInitialized(adTypes: number): boolean; // Ad display and management show(adTypes: number, placement: string): void; isLoaded(adTypes: number): boolean; canShow(adTypes: number, placement: string): boolean; hide(adTypes: number): void; // Caching cache(adTypes: number): void; setAutoCache(adTypes: number, value: boolean): void; isPrecache(adTypes: number): boolean; // Banner settings setTabletBanners(value: boolean): void; setSmartBanners(value: boolean): void; setBannerAnimation(value: boolean): void; // Consent management consentStatus(): number; revokeConsent(): void; requestConsentInfoUpdateWithAppKey( appKey: string ): Promise<{ status: number }>; showConsentFormIfNeeded(): Promise<{ status: number }>; showConsentForm(): Promise<{ status: number }>; // Configuration setChildDirectedTreatment(value: boolean): void; setTesting(value: boolean): void; setLogLevel(value: string): void; setTriggerPrecacheCallbacks(adTypes: number, value: boolean): void; disableNetwork(network: string, adTypes: number): void; // SDK info getPlatformSdkVersion(): string; // User management setUserId(id: string): void; // Extras and custom state setExtrasStringValue(key: string, value: string): void; setExtrasIntegerValue(key: string, value: number): void; setExtrasDoubleValue(key: string, value: number): void; setExtrasBooleanValue(key: string, value: boolean): void; setExtrasMapValue(key: string, value: UnsafeObject): void; removeExtrasValue(key: string): void; setCustomStateStringValue(key: string, value: string): void; setCustomStateIntegerValue(key: string, value: number): void; setCustomStateDoubleValue(key: string, value: number): void; setCustomStateBooleanValue(key: string, value: boolean): void; setCustomStateMapValue(key: string, value: UnsafeObject): void; removeCustomStateValue(key: string): void; // Rewards getRewardParameters(placement: string): { name: string; amount: string }; // Analytics predictedEcpm(adType: number): number; trackInAppPurchase(amount: number, currency: string): void; validateAndTrackInAppPurchase( purchase: UnsafeObject ): Promise<AppodealPurchaseValidationResult>; trackEvent(name: string, parameters: UnsafeObject): void; // Bidon setBidonEndpoint(endpoint: string): void; getBidonEndpoint(): string | null; // Event management eventsNotifyReady(ready: boolean): void; eventsAddListener(eventName: string): void; eventsRemoveListener(eventName: string, all: boolean): void; eventsGetListeners(): Promise<UnsafeObject>; } export default TurboModuleRegistry.getEnforcing<Spec>('RNAppodeal');