Official TypeScript SDK for sw4p
npm install @sw4p/bridge
import { Sw4pBridge } from '@sw4p/bridge' const bridge = new Sw4pBridge({ apiKey: 'sk_...', debug: true })
const result = await bridge.transfer({ from: 'BASE', to: 'SOLANA', amount: '100.00', recipient: '5abc123...', permit: signedPermit })
const estimate = await bridge.estimateFee({ from: 'BASE', to: 'SOLANA', amount: '100.00' })
const status = await bridge.getStatus('int_abc123')
const { transaction, intentId } = await bridge.createSolanaTransfer({ to: 'BASE', amount: '100.00', fromWallet: publicKey.toBase58(), recipient: '0x...' })
const result = await bridge.submitSolanaTransfer({ intentId, signedTransaction: Buffer.from(signed.serialize()).toString('base64') })
const permitData = bridge.createPermitTypedData({ chain: 'BASE', owner: '0x...', spender: '0x...', value: parseUnits('100', 6), nonce: 0n })
import { ApiError, AuthError, RateLimitError } from '@sw4p/bridge' try { await bridge.transfer(params) } catch (error) { if (error instanceof AuthError) { console.log('Invalid API key') } else if (error instanceof RateLimitError) { console.log(`Retry in ${error.retryAfterMs}ms`) } }