import { type Address } from 'viem'; import type { WalletStore } from '../connectors/index.js'; import { type SubscriptionInfo, type UserSubscription, type SubscriptionPlan } from '../types/subscription.js'; import type { SubscriptionNetworkConfig } from '../types/subscription-config.js'; export declare class SubscriptionService { private walletStore; private networkConfig; private publicClient; private bufferPercentage; constructor(walletStore: WalletStore, networkConfig: SubscriptionNetworkConfig, bufferPercentage?: number); getSubscriptionInfo(userAddress: Address): Promise; hasActiveSubscription(userAddress: Address): Promise; getUserSubscription(userAddress: Address): Promise; getAllPlans(): Promise; getPlan(tier: number): Promise; subscribe(tier: number, period: number, referrer?: Address): Promise; renew(period: number): Promise; upgrade(newTier?: number, period?: number): Promise; downgrade(newTier?: number, period?: number): Promise; }