UNPKG

notification-kit

Version:

A unified notification library for React + Capacitor apps. One API for push notifications, in-app notifications, and local notifications across Web, iOS, and Android.

49 lines 2.43 kB
import { InAppNotificationInstance } from '../../utils/inApp'; import { InAppOptions, InAppConfig } from '../../types'; export interface UseInAppNotificationState { activeNotifications: InAppNotificationInstance[]; isConfigured: boolean; config: InAppConfig | null; } export interface UseInAppNotificationReturn extends UseInAppNotificationState { configure: (config: InAppConfig) => void; show: (options: InAppOptions) => Promise<string>; success: (title: string, message?: string, options?: Partial<InAppOptions>) => Promise<string>; error: (title: string, message?: string, options?: Partial<InAppOptions>) => Promise<string>; warning: (title: string, message?: string, options?: Partial<InAppOptions>) => Promise<string>; info: (title: string, message?: string, options?: Partial<InAppOptions>) => Promise<string>; dismiss: (id: string) => Promise<void>; dismissAll: () => Promise<void>; getActive: () => InAppNotificationInstance[]; hasActive: boolean; activeCount: number; onShow: (callback: (notification: InAppNotificationInstance) => void) => () => void; onDismiss: (callback: (id: string) => void) => () => void; } export declare function useInAppNotification(): UseInAppNotificationReturn; export declare function useInAppNotificationSimple(): { show: (options: InAppOptions) => Promise<string>; success: (title: string, message?: string, options?: Partial<InAppOptions>) => Promise<string>; error: (title: string, message?: string, options?: Partial<InAppOptions>) => Promise<string>; warning: (title: string, message?: string, options?: Partial<InAppOptions>) => Promise<string>; info: (title: string, message?: string, options?: Partial<InAppOptions>) => Promise<string>; dismiss: (id: string) => Promise<void>; dismissAll: () => Promise<void>; hasActive: boolean; activeCount: number; }; export declare function useInAppNotificationQueue(): { queue: InAppOptions[]; queueLength: number; isProcessing: boolean; enqueue: (options: InAppOptions) => void; processQueue: () => Promise<void>; clearQueue: () => void; }; export declare function useInAppNotificationPersistence(): { persistedNotifications: InAppNotificationInstance[]; saveNotifications: () => void; loadNotifications: () => void; clearPersistence: () => void; }; //# sourceMappingURL=useInAppNotification.d.ts.map