import { CreateSubNotificationRequest, DeleteSubNotificationRequest, InAppNotificationPatchRequest, InitConfiguration, queryLogsPostBody, Region, RetractRequest, SendRequest, SetUserPreferencesRequest, User } from './interfaces.js'; import { AxiosResponse, Method } from 'axios'; declare class NotificationAPIService { private USER_AGENT; private VERSION; clientId: null | string; clientSecret: null | string; baseURL: string | Region; /** To configure and initialize the the SDK*/ init: (clientId: string, clientSecret: string, config?: InitConfiguration) => void; /** used to identify your user */ identifyUser: (user: User) => Promise; /** Used to send a notification to the specified user. */ send: (sendRequest: SendRequest) => Promise; /** Un-sending or deleting notifications: Sometimes you need older notifications to be deleted for a certain user. For example when a notification is not valid anymore. The retract function helps you do this. */ retract: (retractRequest: RetractRequest) => Promise; /** create a query on logs */ queryLogs: (params: queryLogsPostBody) => Promise; /** Used to create a subNotification of a specified notification. */ createSubNotification: (params: CreateSubNotificationRequest) => Promise; /** Used to delete a subNotification from a specified notification. */ deleteSubNotification: (params: DeleteSubNotificationRequest) => Promise; /** Used to set notification preferences from a specified user. */ setUserPreferences: (userId: string, userPreferences: SetUserPreferencesRequest[]) => Promise; /** Used to delete any stored preferences for a user and notificationId or subNotificationId. */ deleteUserPreferences: (userId: string, notificationId: string, subNotificationId?: string) => Promise; /** Used to update the opened, archived, ... of an inapp notification. */ updateInAppNotification: (userId: string, params: InAppNotificationPatchRequest) => Promise>; /** Used to update a scheduled notification. */ updateSchedule: (trackingId: string, sendRequest: Partial) => Promise>; /** Used to to delete a scheduled notification. */ deleteSchedule: (trackingId: string) => Promise>; /** A generic function for sending any requests to NotificationAPI.*/ request: (method: Method, uri: string, data?: unknown, customAuthorization?: string, queryStrings?: Record) => Promise; } declare const NotificationAPI: NotificationAPIService; export default NotificationAPI;