@pbgtoken/rwa-contract 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env +3 -0
- package/dist/BSCAccountProvider.d.ts +3 -0
- package/dist/BinanceAccountProvider.d.ts +3 -0
- package/dist/BitcoinWalletProvider.d.ts +7 -0
- package/dist/CoinGeckoProvider.d.ts +2 -0
- package/dist/EthereumERC20AccountProvider.d.ts +3 -0
- package/dist/PricesProvider.d.ts +17 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +866 -3
- package/dist/validators/index.d.ts +374 -1
- package/jest.config.js +12 -0
- package/package.json +9 -2
- package/tests/BSCAccountProvider.test.ts +25 -0
- package/tests/BinanceAccountProvider.test.ts +26 -0
- package/tests/BitcoinWalletProvider.test.ts +28 -0
- package/tests/EthereumERC20AccountProvider.test.ts +25 -0
- package/tests/const.ts +16 -0
package/.env
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { PricesProvider } from "./PricesProvider";
|
|
2
|
+
import { TokenizedAccountProvider } from "./TokenizedAccountProvider";
|
|
3
|
+
export declare function makeBSCAccountProvider(walletAddress: string, priceProvider: PricesProvider, alchemyApiKey: string, tokenContractAddress?: `0x${string}` | null, rpcUrl?: string): TokenizedAccountProvider;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type TokenizedAccountProvider } from "./TokenizedAccountProvider";
|
|
2
|
+
import { PricesProvider } from "./PricesProvider";
|
|
3
|
+
interface BitcoinWalletProvider extends TokenizedAccountProvider {
|
|
4
|
+
getSats(): Promise<number>;
|
|
5
|
+
}
|
|
6
|
+
export declare function makeBitcoinWalletProvider(walletAddress: string, priceProvider: PricesProvider): BitcoinWalletProvider;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { PricesProvider } from "./PricesProvider";
|
|
2
|
+
import { TokenizedAccountProvider } from "./TokenizedAccountProvider";
|
|
3
|
+
export declare function makeEthereumERC20AccountProvider(walletAddress: string, priceProvider: PricesProvider, alchemyApiKey: string, tokenContractAddress?: `0x${string}` | null, rpcUrl?: string): TokenizedAccountProvider;
|
package/dist/PricesProvider.d.ts
CHANGED
|
@@ -10,4 +10,21 @@ export interface PricesProvider {
|
|
|
10
10
|
* A number `currency` for one `asset`
|
|
11
11
|
*/
|
|
12
12
|
getSpotPrice(asset: string, currency: string): Promise<number>;
|
|
13
|
+
/**
|
|
14
|
+
* Get spot prices for multiple tokens by their CoinGecko asset symbols.
|
|
15
|
+
*
|
|
16
|
+
* @param symbols - Array of CoinGecko asset symbols (e.g., ["btc", "eth"]).
|
|
17
|
+
* @param currency - Fiat or crypto currency symbol for price (default: "usd").
|
|
18
|
+
* @returns An object mapping each asset symbol to its price data.
|
|
19
|
+
*/
|
|
20
|
+
getSpotPriceBySymbols(symbols: string[], currency?: string): Promise<Record<string, Record<string, number>>>;
|
|
21
|
+
/**
|
|
22
|
+
* Get the spot price for a token by contract address and chain (used for ERC20, BEP20, etc.).
|
|
23
|
+
*
|
|
24
|
+
* @param contract - The token contract address.
|
|
25
|
+
* @param chain - The blockchain network ("ethereum" | "binance-smart-chain").
|
|
26
|
+
* @param currency - The fiat or crypto currency symbol to convert to (default: "usd").
|
|
27
|
+
* @returns A number representing the price of one unit of the token in `currency`.
|
|
28
|
+
*/
|
|
29
|
+
getSpotPriceByTokenAddress(contract: string, chain: "ethereum" | "binance-smart-chain", currency?: string): Promise<number>;
|
|
13
30
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,3 +3,9 @@ export { type PricesProvider } from "./PricesProvider";
|
|
|
3
3
|
export { makeRWADatumProvider, type RWADatumProvider } from "./RWADatumProvider";
|
|
4
4
|
export { type TokenizedAccountProvider } from "./TokenizedAccountProvider";
|
|
5
5
|
export { filterTransfersAfter, type TransferID } from "./TransferID";
|
|
6
|
+
export { one_to_one_asset, tokenized_account } from "./validators";
|
|
7
|
+
export { makeCoinGeckoProvider } from "./CoinGeckoProvider";
|
|
8
|
+
export { makeBitcoinWalletProvider } from "./BitcoinWalletProvider";
|
|
9
|
+
export { makeEthereumERC20AccountProvider } from "./EthereumERC20AccountProvider";
|
|
10
|
+
export { makeBinanceAccountProvider } from "./BinanceAccountProvider";
|
|
11
|
+
export { makeBSCAccountProvider } from "./BSCAccountProvider";
|