import { Emitter } from 'mitt'; import { default as SuprSend } from './main'; import { IFeedOptions, IInboxFetchOptions, InboxEmitterEvents, ApiResponse, IFeedData } from './interface'; export default class FeedsFactory { private config; feedInstances: Feed[]; constructor(config: SuprSend); initialize(options?: IFeedOptions): Feed; removeInstance(feedClient: Feed): void; removeAll(): void; } export declare class Feed { feedOptions: IFeedOptions; private config; private store; private socket; private expiryTimerId?; private fetchAbortController?; readonly emitter: Emitter; constructor(config: SuprSend, options: IFeedOptions); private setOptions; private validateStore; private createFeedStore; private initializeSocketEvents; private handleNewNotificationSocketEvent; private handleNoticationUpdateSocketEvent; private handleBulkNotificationUpdateSocketEvent; private notificationBelongToStore; private orderNotificationsBasedOnPinFlag; private startExpiryTimer; private removeExpiredFeed; private getUrl; private validateQueryParams; private requestInprogress; private storesQueryParamObj; private storeQueryParamObj; changeActiveStore(storeId: string): Promise; get data(): IFeedData; initializeSocketConnection(): void; fetch(options?: IInboxFetchOptions): Promise; fetchNextPage(): Promise; fetchCount(): Promise; fetchDetails(notificationId: string): Promise; markAsSeen(notificationId: string): Promise; markAsRead(notificationId: string): Promise; markAsUnread(notificationId: string): Promise; markAsInteracted(notificationId: string): Promise; markAsArchived(notificationId: string): Promise; markBulkAsSeen(notificationIds: string[]): Promise; resetBadgeCount(): Promise; markAllAsRead(): Promise; reset(): void; remove(): void; }