import { type AuthProvider } from './updateUserSubscription.js';
/**
 * Cancel user subscription at period end
 *
 * @version 0.1.0
 * @since 0.0.1
 * @author AMBROISE PARK Consulting
 */
export declare function cancelUserSubscription(userId: string, authProvider: AuthProvider): Promise<{
    success: boolean;
    endsAt: string;
}>;
/**
 * Change user subscription plan
 *
 * @version 0.1.0
 * @since 0.0.1
 * @author AMBROISE PARK Consulting
 */
export declare function changeUserPlan(userId: string, newPriceId: string, billingConfigKey: string, billingConfig: Record<string, any>, authProvider: AuthProvider): Promise<{
    success: boolean;
    newTier: string;
    newPrice: number;
}>;
/**
 * Create Stripe Customer Portal session
 *
 * @version 0.1.0
 * @since 0.0.1
 * @author AMBROISE PARK Consulting
 */
export declare function createCustomerPortalSession(userId: string, authProvider: AuthProvider, returnUrl?: string): Promise<{
    url: string;
}>;
