import { Repository } from 'typeorm';
import { OutlookWebhookSubscription } from '../entities/outlook-webhook-subscription.entity';
export declare class OutlookWebhookSubscriptionRepository {
    private readonly repository;
    constructor(repository: Repository<OutlookWebhookSubscription>);
    saveSubscription(subscription: Partial<OutlookWebhookSubscription>): Promise<OutlookWebhookSubscription>;
    findBySubscriptionId(subscriptionId: string): Promise<OutlookWebhookSubscription | null>;
    updateSubscriptionExpiration(subscriptionId: string, expirationDateTime: Date): Promise<void>;
    deactivateSubscription(subscriptionId: string): Promise<void>;
    findSubscriptionsNeedingRenewal(hoursUntilExpiration: number): Promise<OutlookWebhookSubscription[]>;
    findActiveSubscriptions(): Promise<OutlookWebhookSubscription[]>;
    findActiveByUserId(userId: number): Promise<OutlookWebhookSubscription | null>;
    count(options: Parameters<Repository<OutlookWebhookSubscription>['count']>[0]): Promise<number>;
}
