import Echo from "laravel-echo";
import { NotificationEvent } from "../../types/NotificationEvent";
declare type NewNotificationCb = (payload: {
    notification: NotificationEvent;
}) => void;
declare type CloseNotificationCb = (payload: {
    notification: NotificationEvent;
}) => void;
declare type CloseNotificationsCb = () => void;
declare class NotificationWebsocketService {
    client: Echo;
    clientUid: string;
    init(params: {
        authToken: string;
        clientUid: string;
    }): this;
    onNewNotification(fn: NewNotificationCb): this;
    onCloseNotification(fn: CloseNotificationCb): this;
    onCloseAllNotifications(fn: CloseNotificationsCb): this;
    onDisconnect(fn: any): this;
    onConnect(fn: any): this;
    connect(): void;
    disconnect(): void;
    private getPrivateChannel;
}
declare const _default: NotificationWebsocketService;
export default _default;
