import type { Alert, BatchDismissAlertsResponse, FeedbackResponse, GetAlertsParams, UpdateAlertsOwnershipParams } from '@bringg/types';
import StoreEntity from '../../Core/StoreEntity';
import type Session from '../../Services/Identity/Session';
export default class AlertsEntity extends StoreEntity<Alert> {
    private isSubscriptionsAttached;
    private _onUpdateOwnership;
    constructor(session: Session);
    attachSubscriptions(): void;
    getAlertsKeySetPagination(queryParams?: GetAlertsParams): Promise<Alert[]>;
    dismiss(uuid: string): Promise<FeedbackResponse>;
    batchDismiss(uuids: string[]): Promise<BatchDismissAlertsResponse>;
    updateOwnership(params: UpdateAlertsOwnershipParams): Promise<void>;
    onUpdateOwnership: (entity: Alert[]) => void;
    registerOnUpdateOwnership: (fn: (entity: Alert[]) => void) => () => ((entity: Alert[]) => void)[];
}
