import { NativeEventEmitter } from 'react-native'; import type { PaywallLaunchContext, NamiCampaign, NamiError } from './types'; export declare enum NamiCampaignManagerEvents { AvailableCampaignsChanged = "AvailableCampaignsChanged", NamiPaywallEvent = "NamiPaywallEvent" } export declare const NamiCampaignManager: { emitter: NativeEventEmitter; launchSubscription: ReturnType | undefined; launch(label: string | null, withUrl: string | null, context: PaywallLaunchContext | null, resultCallback?: (success: boolean, error?: NamiError | null) => void, actionCallback?: (event: any) => void): void; allCampaigns: () => Promise<{ id?: string; rule?: string; segment?: string; paywall?: string; type: string; value?: string; }[]>; isCampaignAvailable: (campaignName: string | null) => Promise; isFlow: (label?: string | null, withUrl?: string | null) => Promise; refresh: () => Promise<{ id?: string; rule?: string; segment?: string; paywall?: string; type: string; value?: string; }[]>; registerAvailableCampaignsHandler: (callback: (campaigns: NamiCampaign[]) => void) => (() => void); getProductGroups: (label?: string | null, withUrl?: string | null) => Promise; };