import type { UserData, AttributionData, DeeplinkData, IntegrationData, PaymentType, PaymentStatus } from './definitions'; /** * Linkrunner SDK wrapper class */ declare class Linkrunner { private token; private plugin; private packageVersion; constructor(); /** * Get the SDK package version * @returns The current SDK version */ getPackageVersion(): string; /** * Set the SDK package version * @param version The version string to set */ setPackageVersion(version: string): void; /** * Initialize the Linkrunner SDK * @param token Required authentication token * @param secretKey Optional secret key for request signing * @param keyId Optional key ID for request signing * @param disableIdfa Optional flag to disable IDFA collection on iOS * @param debug Optional flag to enable debug logging */ init(token: string, secretKey?: string, keyId?: string, disableIdfa?: boolean, debug?: boolean): Promise; /** * Register a new user signup * @param options Signup options including user data and optional additional data */ signup(options: { data?: Record; user_data: UserData; }): Promise; /** * Update user data * @param user_data User data to update */ setUserData(user_data: UserData): Promise; /** * Capture a payment event * @param options Payment details including user ID, amount, type, and status */ capturePayment(options: { paymentId?: string; userId: string; amount: number; type?: PaymentType; status?: PaymentStatus; }): Promise; /** * Remove or refund a payment * @param options Payment removal details including user ID and optional payment ID */ removePayment(options: { paymentId?: string; userId: string; }): Promise; /** * Track a custom event * @param eventName Required event name * @param eventData Optional event data * @param eventId Optional event identifier (string or number) */ trackEvent(eventName: string, eventData?: Record, eventId?: string | number): Promise; /** * Retrieve attribution data * @returns Attribution data including campaign information and deeplink */ getAttributionData(): Promise; /** * Set additional integration data for third-party platforms * @param integrationData Integration data including platform identifiers */ setAdditionalData(integrationData: IntegrationData): Promise; /** * Enable or disable PII hashing * @param enabled Flag to enable or disable PII hashing (defaults to true) */ enablePIIHashing(enabled?: boolean): Promise; /** * Set the push notification token for the device * @param pushToken Required push token (FCM on Android, APNs on iOS) */ setPushToken(pushToken: string): Promise; setCustomerUserId(userId: string): Promise; /** * Handle a deeplink for re-engagement attribution. * Call this when the app is opened via a deeplink. * @param deeplinkUrl The full deeplink URL that opened the app * @returns Resolved DeeplinkData, or null for invalid/empty input */ handleDeeplink(deeplinkUrl: string | null): Promise; } declare const linkrunner: Linkrunner; export default linkrunner; export * from './definitions'; export { Linkrunner };