/
polygon.ts
39 lines (32 loc) Β· 2.01 KB
/
polygon.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import BigNumber from 'bignumber.js'
import {get, post} from '../connector/tatum'
import {EstimateGasEth, EthBlock, EthEstimateGas, EthTx, TransactionHash} from '../model'
/**
* For more details, see <a href="https://apidoc.tatum.io/#operation/PolygonBroadcast" target="_blank">Tatum API documentation</a>
*/
export const polygonBroadcast = async (txData: string, signatureId?: string): Promise<TransactionHash> =>
post(`/v3/polygon/broadcast`, {txData, signatureId})
/**
* For more details, see <a href="https://apidoc.tatum.io/#operation/PolygonGetTransactionCount" target="_blank">Tatum API documentation</a>
*/
export const polygonGetTransactionsCount = async (address: string): Promise<number> => get(`/v3/polygon/transaction/count/${address}`)
/**
* For more details, see <a href="https://apidoc.tatum.io/#operation/PolygonGetCurrentBlock" target="_blank">Tatum API documentation</a>
*/
export const polygonGetCurrentBlock = async (): Promise<number> => get(`/v3/polygon/block/current`)
/**
* For more details, see <a href="https://apidoc.tatum.io/#operation/PolygonGetBlock" target="_blank">Tatum API documentation</a>
*/
export const polygonGetBlock = async (hash: string): Promise<EthBlock> => get(`/v3/polygon/block/${hash}`)
/**
* For more details, see <a href="https://apidoc.tatum.io/#operation/PolygonGetBalance" target="_blank">Tatum API documentation</a>
*/
export const polygonGetAccountBalance = async (address: string): Promise<BigNumber> => get(`/v3/polygon/account/balance/${address}`)
/**
* For more details, see <a href="https://apidoc.tatum.io/#operation/PolygonGetTransaction" target="_blank">Tatum API documentation</a>
*/
export const polygonGetTransaction = async (hash: string): Promise<EthTx> => get(`/v3/polygon/transaction/${hash}`)
/**
* For more details, see <a href="https://apidoc.tatum.io/#operation/PolygonEstimateGas" target="_blank">Tatum API documentation</a>
*/
export const polygonEstimateGas = (body: EstimateGasEth): Promise<EthEstimateGas> => post('/v3/polygon/gas', body, EstimateGasEth)