1.0.0 • Published 5 months ago
payard-vault-sdk v1.0.0
Payard Vault SDK
A TypeScript SDK for interacting with Payard Vault and Receiver contracts.
Installation
npm install payard-vault-sdk
Usage
import { Vault, Receiver } from 'payard-vault-sdk';
import { ethers } from 'ethers';
// Initialize the SDK
const provider = new ethers.JsonRpcProvider('YOUR_RPC_URL');
const signer = new ethers.Wallet('YOUR_PRIVATE_KEY', provider);
const vault = new Vault('VAULT_CONTRACT_ADDRESS', signer);
const receiver = new Receiver('RECEIVER_CONTRACT_ADDRESS', signer);
// Example usage
async function example() {
// Get vault information
const operator = await vault.getOperator();
const limits = await vault.getTransferLimits('TOKEN_ADDRESS');
// Create a receiver
const salt = ethers.keccak256(ethers.toUtf8Bytes('unique-salt'));
await vault.createReceiver(salt);
// Execute an automated transfer
const deadline = Math.floor(Date.now() / 1000) + 3600; // 1 hour from now
const signature = await vault.signAutomatedTransfer(
'TOKEN_ADDRESS',
'RECIPIENT_ADDRESS',
ethers.parseEther('1.0'),
deadline
);
await vault.executeAutomatedTransfer({
token: 'TOKEN_ADDRESS',
to: 'RECIPIENT_ADDRESS',
amount: ethers.parseEther('1.0'),
deadline,
signature
});
// Get balances
const nativeBalance = await vault.getBalance();
const tokenBalance = await vault.getBalance('TOKEN_ADDRESS');
}
Features
- Full TypeScript support
- Comprehensive contract interaction methods
- Built-in helper functions
- Support for both ERC20 and native token operations
- Automated transfer signing and execution
- Receiver contract management
License
MIT
1.0.0
5 months ago