import {
OnchainDBError,
TransactionError,
ValidationError,
PaymentRequiredError,
PaymentVerificationError,
} from '@onchaindb/sdk';
try {
await client.store(
{ collection: 'test', data: [{ test: 'data' }] },
paymentCallback
);
} catch (error) {
if (error instanceof ValidationError) {
console.log('Validation failed:', error.message);
console.log('Details:', error.details);
} else if (error instanceof TransactionError) {
console.log('Transaction failed:', error.transactionId);
} else if (error instanceof PaymentRequiredError) {
console.log('Payment required');
console.log('Amount:', error.quote.totalCostTia, 'TIA');
console.log('Pay to:', error.quote.brokerAddress);
} else if (error instanceof PaymentVerificationError) {
console.log('Payment verification failed:', error.txHash);
} else if (error instanceof OnchainDBError) {
console.log('OnchainDB error:', error.code, error.statusCode);
}
}