import { PaymentStatus, Currency, PaymentMethod, MobileOperator, BankOperator } from '../types/payment.types'; export interface PaymentRequest { amount: number; currency: Currency; phoneNumber?: string | undefined; email?: string | undefined; fullName?: string | undefined; reference: string; description?: string | undefined; callbackUrl?: string | undefined; metadata?: Record; paymentMethod?: PaymentMethod | undefined; operator?: MobileOperator | BankOperator | undefined; accountNumber?: string | undefined; otp?: string | undefined; } export interface PaymentResponse { success: boolean; status: PaymentStatus; transactionId: string; providerTransactionId?: string; amount: number; currency: Currency; phoneNumber?: string | undefined; email?: string | undefined; fullName?: string | undefined; reference: string; message?: string; timestamp: string; paymentMethod?: PaymentMethod | undefined; operator?: MobileOperator | undefined; providerData?: Record; } export interface PaymentStatusRequest { transactionId: string; [key: string]: any; } export interface PaymentStatusResponse { transactionId: string; providerTransactionId?: string; status: PaymentStatus; amount?: number; currency?: Currency; reference: string; completedAt?: string | undefined; failureReason?: string | undefined; providerData?: Record; }