UNPKG

splitwise-solana-client

Version:

Client SDK for Splitwise Solana Settlement

38 lines (37 loc) 1.03 kB
import { PublicKey } from '@solana/web3.js'; import { BN } from '@project-serum/anchor'; export interface OracleData { splitwiseAmount: number; splitwiseCurrency: string; exchangeRate: number; timestamp: number; signatures: string[]; verificationHash: string; } export interface Settlement { splitwiseId: string; amount: BN; from: PublicKey; to: PublicKey; tokenMint: PublicKey; status: SettlementStatus; remainingAmount: BN; minPaymentAmount: BN; expiryTimestamp: BN; isInitialized: boolean; frontRunningProtection: Buffer; } export type SettlementStatus = 'pending' | 'active' | 'completed' | 'cancelled' | 'expired'; export interface SettlementEvent { eventType: 'initialized' | 'payment' | 'completed' | 'cancelled' | 'expired'; data: any; } export interface TokenAccount { mint: PublicKey; owner: PublicKey; amount: BN; delegate: PublicKey | null; delegatedAmount: BN; isNative: boolean; closeAuthority: PublicKey | null; }