0.3.8 ā¢ Published 10 months ago
@meterio/safe-gateway-typescript-sdk v0.3.8
Safe Gateway TypeScript SDK
A TypeScript SDK for the Safe Client Gateway
š API reference
Usage policy
NB: Safe Client Gateway isn't meant for public use. Please do not use this SDK if you're building, e.g., a Safe App.
Using the SDK
Install:
yarn add @safe-global/safe-gateway-typescript-sdk
Import:
import { getChainsConfig, type ChainListResponse } from '@safe-global/safe-gateway-typescript-sdk'
Use:
const chains = await getChainsConfig()
The SDK needs no initialization unless you want to override the base URL. You can set an alternative base URL like so:
import { setBaseUrl } from '@safe-global/safe-gateway-typescript-sdk'
// Switch the SDK to dev mode
setBaseUrl('https://safe-client.staging.5afe.dev')
The full SDK reference can be found here.
Adding an endpoint
Endpoint types are defined in src/types/gateway.ts
.
Each endpoint consists of:
- a function defined in
src/index.ts
(e.g.getBalances
) - a path definition (e.g.
'/chains/{chainId}/safes/{address}/balances/{currency}/'
) - operation definition (e.g.
safes_balances_list
) - response definition
To add a new endpoint, follow the pattern set by the existing endpoints.
Eslint & prettier
This command will run before every commit:
yarn eslint:fix
Tests
To run the unit and e2e tests locally:
yarn test
N.B.: the e2e tests make actual API calls on staging.
Gateway API docs
The TypeScript types in this SDK are based on Rust types from the Gateway API.
0.3.8
10 months ago