import { type EventSubscription, type TurboModule } from 'react-native'; import { InlineInAppMessageView } from './components'; import { NotificationInbox, type NotificationInboxSpec } from './notification-inbox'; import { type Spec as CodegenSpec } from './specs/modules/NativeCustomerIOMessagingInApp'; import type { InAppMessageEventType } from './types'; /** * Ensures all methods defined in codegen spec are implemented by the public module * * @internal */ interface NativeInAppSpec extends Omit { } /** * Helper class so that registering event listeners is easier for customers. * * @public */ declare class CustomerIOInAppMessaging implements NativeInAppSpec { private _notificationInbox?; registerEventsListener(listener: (event: InAppMessageEvent) => void): EventSubscription; /** * Dismisses any currently displayed in-app message */ dismissMessage(): void; /** * Gets the message inbox instance for managing inbox messages * * @returns NotificationInbox instance for fetching and managing inbox messages */ inbox(): NotificationInbox; } /** * Class to hold in-app event attributes. */ /** @public */ declare class InAppMessageEvent { eventType: InAppMessageEventType; messageId: string; deliveryId?: string; actionValue?: string; actionName?: string; constructor(eventType: InAppMessageEventType, messageId: string, deliveryId?: string, actionValue?: string, actionName?: string); } export type { InlineInAppMessageViewProps } from './components'; export { NotificationInbox } from './notification-inbox'; export type { InboxMessage, NotificationInboxChangeListener } from './types'; export { CustomerIOInAppMessaging, InAppMessageEvent, InlineInAppMessageView }; //# sourceMappingURL=customerio-inapp.d.ts.map