export interface PaymentDataOutput { id: string; date: string; country: string; status: string; amount: AmountOutput; refundedAmount: AmountOutput; currency: string; flowId: string; flowInstanceId: string; paymentGateway: PaymentGatewayOutput; paymentCore: PaymentCoreOutput; paymentDetails: PaymentDetailsOutput; paymentTimeline: PaymentTimelineOutput; paymentCustomer: PaymentCustomerOutput; metadata: JSON; paymentMethodDetails: PaymentMethodDetailsOutput; attachments: AttachmentOutput[]; } export interface AmountOutput { formattedAmount: string; rawAmount: number; currency: string; } export interface PaymentGatewayOutput { name: string; logo: string; } export interface PaymentCoreOutput { paymentMethod: string; processorStatus: string; outcome: OutcomeOutput; } export interface OutcomeOutput { networkStatus: string; riskLevel: string; riskScore: number; type: string; declineCode: string; processorDeclineCode: string; reason: string; } export interface PaymentDetailsOutput { statementDescriptor: string; localCurrency: string; localAmount: AmountOutput; exchangeRate: string; fee: AmountOutput; tax: AmountOutput; processingFee: AmountOutput; net: AmountOutput; description: string; } export interface PaymentTimelineOutput { overview: PaymentTimelineEventOutput[]; flows: FlowSummaryOutput[]; } export interface PaymentTimelineEventOutput { title: string; time: string; message: string; } export interface FlowSummaryOutput { name: string; date: string; flowId: string; flowInstanceId: string; } export interface PaymentCustomerOutput { id: string; name: string; } export interface PaymentMethodDetailsOutput { id: string; number: string; expires: string; fingerprint: string; paymentMethod: string; } export interface AttachmentOutput { id: string; fileName: string; accessUrl: string; }