UNPKG

pulsar_sdk_js

Version:

A convenient way for you to interact with Pulsar's Third Party APIs, using typified classes.

42 lines (41 loc) 1.86 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const class_transformer_1 = require("class-transformer"); const base_1 = __importDefault(require("./base")); const schema_1 = require("../data/dataclasses/schema"); class TokenRestClient extends base_1.default { async get_token_info_by_id(token_id) { const response = await this._request(`/token/${token_id}`, 'GET'); return (0, class_transformer_1.plainToInstance)(schema_1.ExtendedToken, response); } async get_token_info_by_address_and_chain(token_type, chain, address) { const response = await this._request(`/token/${token_type}/${address}`, 'GET', {}, { chain, }); return (0, class_transformer_1.plainToInstance)(schema_1.ExtendedToken, response); } async list_tokens(options = {}) { const { minimum_liquidity = 0, chains = undefined, text = undefined, sort_by = undefined, whitelisted_only = false, remove_blacklisted = false, offset = 0, limit = 10, } = options; const response = await this._request('/tokens', 'GET', {}, { minimum_liquidity, chains, text, sort_by, whitelisted_only, remove_blacklisted, offset, limit, }); return (0, class_transformer_1.plainToInstance)(schema_1.PaginatedTokens, response); } async get_token_timeseries(token_id, tier_name) { const response = await this._request(`/tokens/${token_id}/timeseries`, 'GET', {}, { tier_name, }); return (0, class_transformer_1.plainToInstance)(schema_1.TokenPriceTimeseries, response); } } exports.default = TokenRestClient;