import * as signalR from '@microsoft/signalr';
export interface NotificationDto {
    id: string;
    type: string;
    title: string;
    message: string;
    relatedEntityType: string | null;
    relatedEntityId: string | null;
    actionUrl: string | null;
    isRead: boolean;
    readAt: string | null;
    createdAt: string;
}
interface UseSignalROptions {
    onNotification?: (notification: NotificationDto) => void;
    onUnreadCountUpdate?: (count: number) => void;
    onPermissionsChanged?: () => void;
    onConnectionStateChange?: (state: signalR.HubConnectionState) => void;
}
export declare function useSignalR(options?: UseSignalROptions): {
    connectionState: signalR.HubConnectionState;
    isConnected: boolean;
    connect: () => Promise<void>;
    disconnect: () => Promise<void>;
};
export {};
//# sourceMappingURL=useSignalR.d.ts.map