nitroping
Version:
JavaScript/TypeScript SDK for NitroPing push notification service
59 lines (58 loc) • 1.49 kB
TypeScript
import { DeviceRegistration, NitroPingConfig, SubscriptionOptions, SubscriptionStatus } from "./types.js";
//#region src/client.d.ts
declare class NitroPingClient {
private config;
private storageKey;
constructor(config: NitroPingConfig);
/**
* Checks if push notifications are supported in the current environment
*/
isSupported(): boolean;
/**
* Gets the current notification permission status
*/
getPermissionStatus(): NotificationPermission;
/**
* Requests notification permission from the user
*/
requestPermission(): Promise<NotificationPermission>;
/**
* Subscribes to push notifications
*/
subscribe(options?: SubscriptionOptions): Promise<DeviceRegistration>;
/**
* Unsubscribes from push notifications
*/
unsubscribe(): Promise<boolean>;
/**
* Checks if the user is currently subscribed
*/
isSubscribed(): Promise<boolean>;
/**
* Gets the current subscription status and details
*/
getSubscriptionStatus(): Promise<SubscriptionStatus>;
/**
* Registers a device with the NitroPing backend
*/
private registerDevice;
/**
* Gets or generates a user ID
*/
private getUserId;
/**
* Stores subscription data locally
*/
private storeSubscription;
/**
* Gets stored subscription data
*/
private getStoredSubscription;
/**
* Clears stored subscription data
*/
private clearSubscription;
}
//#endregion
export { NitroPingClient };
//# sourceMappingURL=client.d.ts.map