Rovenue React Native SDK
    Preparing search index...

    Variable RovenueConst

    Rovenue: {
        addChangeListener: (cb: (event: ChangeEvent) => void) => () => void;
        addFunnelClaimListener: (
            cb: (result: FunnelClaimResult) => void,
        ) => () => void;
        claimFromClipboard: () => Promise<FunnelClaimResult | null>;
        claimFromUrl: (url: string) => Promise<FunnelClaimResult | null>;
        claimFunnelToken: (token: string) => Promise<FunnelClaimResult>;
        claimInstall: (
            params?: Partial<ClaimInstallParams>,
        ) => Promise<FunnelClaimResult | null>;
        claimViaEmail: (email: string) => Promise<void>;
        configure: (opts: RovenueConfig) => void;
        currentUser: () => Promise<User>;
        entitlement: (id: string) => Promise<Entitlement | null>;
        entitlementsAll: () => Promise<Entitlement[]>;
        flushAttributes: () => Promise<number>;
        getAppAccountToken: () => Promise<string>;
        getExperiment: (key: string) => Promise<ExperimentAssignment | null>;
        getExperiments: () => Promise<ExperimentAssignment[]>;
        getFlag: <T>(key: string, fallback: T) => Promise<T>;
        getOfferings: () => Promise<Offerings>;
        getRemoteConfig: () => Promise<RemoteConfig>;
        getVersion: () => string;
        identify: (appUserId: string) => Promise<void>;
        installId: () => Promise<string>;
        logOut: () => Promise<void>;
        purchase: (
            target: StoreProduct | Package,
            options?: {
                promotionalOfferId?: string;
                subscriptionOption?: SubscriptionOption;
            },
        ) => Promise<PurchaseResult>;
        refreshEntitlements: () => Promise<void>;
        refreshRemoteConfig: () => Promise<void>;
        refreshVirtualCurrencies: () => Promise<void>;
        resolveFunnelClaim: (
            opts?: { url?: string },
        ) => Promise<FunnelClaimResult | null>;
        restorePurchases: () => Promise<PurchaseResult>;
        setAttributes: (attributes: Record<string, string | null>) => Promise<void>;
        setDisplayName: (name: string | null) => Promise<void>;
        setEmail: (email: string | null) => Promise<void>;
        setFallbackPlacements: (json: string) => Promise<number>;
        setForeground: (foreground: boolean) => void;
        setLogHandler: (fn: ((entry: LogEntry) => void) | null) => void;
        setPhoneNumber: (phone: string | null) => Promise<void>;
        setPushToken: (token: string | null) => Promise<void>;
        shutdown: () => void;
        track: (eventType: string, params?: TrackParams) => Promise<void>;
        virtualCurrencies: () => Promise<Record<string, number>>;
        virtualCurrency: (code: string) => Promise<number>;
    } = ...

    Type Declaration

    • ReadonlyaddChangeListener: (cb: (event: ChangeEvent) => void) => () => void

      Subscribe to the raw native change stream — ENTITLEMENTS_CHANGED, IDENTITY_CHANGED, VIRTUAL_CURRENCIES_CHANGED, REMOTE_CONFIG_CHANGED. Returns an unsubscribe function; call it on unmount to avoid leaking the native listener. Most apps should prefer the reactive hooks (useCurrentUser, useEntitlements, useRemoteConfig, ...), which already listen on this stream — reach for this only for imperative, non-component code. Never call the matching refreshX() (e.g. refreshEntitlements() on ENTITLEMENTS_CHANGED) from inside this callback: the refresh re-emits the same event, which re-invokes the callback, forever.

    • addFunnelClaimListener: (cb: (result: FunnelClaimResult) => void) => () => void
    • claimFromClipboard: () => Promise<FunnelClaimResult | null>
    • claimFromUrl: (url: string) => Promise<FunnelClaimResult | null>
    • claimFunnelToken: (token: string) => Promise<FunnelClaimResult>
    • claimInstall: (params?: Partial<ClaimInstallParams>) => Promise<FunnelClaimResult | null>
    • claimViaEmail: (email: string) => Promise<void>
    • configure: (opts: RovenueConfig) => void
    • currentUser: () => Promise<User>
    • entitlement: (id: string) => Promise<Entitlement | null>
    • entitlementsAll: () => Promise<Entitlement[]>
    • flushAttributes: () => Promise<number>
    • getAppAccountToken: () => Promise<string>
    • getExperiment: (key: string) => Promise<ExperimentAssignment | null>
    • getExperiments: () => Promise<ExperimentAssignment[]>
    • getFlag: <T>(key: string, fallback: T) => Promise<T>
    • getOfferings: () => Promise<Offerings>
    • getRemoteConfig: () => Promise<RemoteConfig>
    • ReadonlygetVersion: () => string

      This JS package's own semantic version — a plain constant read, not the native module's or Rust core's version, and not network-derived.

    • identify: (appUserId: string) => Promise<void>
    • installId: () => Promise<string>
    • logOut: () => Promise<void>
    • purchase: (
          target: StoreProduct | Package,
          options?: {
              promotionalOfferId?: string;
              subscriptionOption?: SubscriptionOption;
          },
      ) => Promise<PurchaseResult>
    • refreshEntitlements: () => Promise<void>
    • refreshRemoteConfig: () => Promise<void>
    • refreshVirtualCurrencies: () => Promise<void>
    • resolveFunnelClaim: (opts?: { url?: string }) => Promise<FunnelClaimResult | null>
    • restorePurchases: () => Promise<PurchaseResult>
    • setAttributes: (attributes: Record<string, string | null>) => Promise<void>
    • setDisplayName: (name: string | null) => Promise<void>
    • setEmail: (email: string | null) => Promise<void>
    • setFallbackPlacements: (json: string) => Promise<number>
    • setForeground: (foreground: boolean) => void
    • setLogHandler: (fn: ((entry: LogEntry) => void) | null) => void
    • setPhoneNumber: (phone: string | null) => Promise<void>
    • setPushToken: (token: string | null) => Promise<void>
    • shutdown: () => void
    • track: (eventType: string, params?: TrackParams) => Promise<void>
    • virtualCurrencies: () => Promise<Record<string, number>>
    • virtualCurrency: (code: string) => Promise<number>