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.
52 lines • 3.09 kB
TypeScript
import { Notification, PushNotificationPayload, LocalNotificationPayload, ScheduleOptions, InAppOptions, Platform, FormattedNotification, FormattedPushPayload, FormattedLocalPayload, FormattedInAppPayload, FormattedScheduleOptions, FormattedInAppOptions } from '../types';
export declare class FormattingUtils {
static formatNotification(notification: Notification): FormattedNotification;
static formatPushPayload(payload: PushNotificationPayload): FormattedPushPayload;
static formatLocalPayload(payload: LocalNotificationPayload): FormattedLocalPayload;
static formatInAppPayload(options: InAppOptions): FormattedInAppPayload;
static formatScheduleOptions(options: ScheduleOptions): FormattedScheduleOptions;
static formatInAppOptions(options: InAppOptions): FormattedInAppOptions;
static formatTitle(title: string | undefined): string;
static formatBody(body: string | undefined): string;
static formatTimestamp(timestamp: Date | string | number): Date;
static formatDuration(duration: number): string;
static formatFileSize(bytes: number): string;
static formatPlatform(platform: Platform): string;
static formatNotificationType(type: string): string;
static truncateText(text: string, maxLength: number): string;
static capitalize(text: string): string;
static toTitleCase(text: string): string;
static formatRelativeTime(date: Date): string;
static formatAbsoluteTime(date: Date): string;
static formatNotificationCount(count: number): string;
static formatBadgeCount(count: number): string;
static stripHtml(html: string): string;
static formatNotificationData(data: Record<string, any>): Record<string, string>;
static formatErrorMessage(error: Error | string): string;
}
export declare const format: {
notification: (notification: Notification) => FormattedNotification;
pushPayload: (payload: PushNotificationPayload) => FormattedPushPayload;
localPayload: (payload: LocalNotificationPayload) => FormattedLocalPayload;
inAppPayload: (options: InAppOptions) => FormattedInAppPayload;
scheduleOptions: (options: ScheduleOptions) => FormattedScheduleOptions;
inAppOptions: (options: InAppOptions) => FormattedInAppOptions;
title: (title: string) => string;
body: (body: string) => string;
timestamp: (timestamp: Date | string | number) => Date;
duration: (duration: number) => string;
fileSize: (bytes: number) => string;
platform: (platform: Platform) => string;
notificationType: (type: string) => string;
truncate: (text: string, maxLength: number) => string;
capitalize: (text: string) => string;
titleCase: (text: string) => string;
relativeTime: (date: Date) => string;
absoluteTime: (date: Date) => string;
notificationCount: (count: number) => string;
badgeCount: (count: number) => string;
stripHtml: (html: string) => string;
notificationData: (data: Record<string, any>) => Record<string, string>;
errorMessage: (error: Error | string) => string;
};
//# sourceMappingURL=formatting.d.ts.map