diff --git a/liquidations/aave-v2/index.ts b/liquidations/aave-v2/index.ts index 270e28b66..52ac96c25 100644 --- a/liquidations/aave-v2/index.ts +++ b/liquidations/aave-v2/index.ts @@ -1,5 +1,5 @@ import { gql, request } from "graphql-request"; -import { Liq } from "../utils/binResults"; +import { Liq } from "../utils/types"; import { getPagedGql } from "../utils/gql"; const query = gql` diff --git a/liquidations/angle/index.ts b/liquidations/angle/index.ts index 9f44df05f..baecf008d 100644 --- a/liquidations/angle/index.ts +++ b/liquidations/angle/index.ts @@ -4,7 +4,7 @@ import { ethers } from "ethers"; import { providers } from "../utils/ethers"; import BigNumber from "bignumber.js"; import { getPagedGql } from "../utils/gql"; -import { Liq } from "../utils/binResults"; +import { Liq } from "../utils/types"; const subgraphUrl = "https://api.thegraph.com/subgraphs/name/picodes/borrow"; diff --git a/liquidations/benqi/index.ts b/liquidations/benqi/index.ts index 5b8ce4e54..3be47df51 100644 --- a/liquidations/benqi/index.ts +++ b/liquidations/benqi/index.ts @@ -1,7 +1,7 @@ import { gql } from "graphql-request"; import { getPagedGql } from "../utils/gql"; import BigNumber from "bignumber.js"; -import { Liq } from "../utils/binResults"; +import { Liq } from "../utils/types"; import { Account, borrowBalanceUnderlying, diff --git a/liquidations/compound/index.ts b/liquidations/compound/index.ts index 5f7ad9ddc..cc075d650 100644 --- a/liquidations/compound/index.ts +++ b/liquidations/compound/index.ts @@ -1,7 +1,7 @@ import { gql } from "graphql-request"; import { getPagedGql } from "../utils/gql"; import BigNumber from "bignumber.js"; -import { Liq } from "../utils/binResults"; +import { Liq } from "../utils/types"; import { Account, borrowBalanceUnderlying, diff --git a/liquidations/euler/index.ts b/liquidations/euler/index.ts index e86c5efdd..2b9e13875 100644 --- a/liquidations/euler/index.ts +++ b/liquidations/euler/index.ts @@ -1,7 +1,7 @@ import { gql } from "graphql-request"; import { getPagedGql } from "../utils/gql"; import BigNumber from "bignumber.js"; -import { Liq } from "../utils/binResults"; +import { Liq } from "../utils/types"; const subgraphUrl = "https://api.thegraph.com/subgraphs/name/euler-xyz/euler-mainnet"; diff --git a/liquidations/liquity/index.ts b/liquidations/liquity/index.ts index 4601adb1b..29a6650c4 100644 --- a/liquidations/liquity/index.ts +++ b/liquidations/liquity/index.ts @@ -1,7 +1,7 @@ import { gql, request } from "graphql-request"; import BigNumber from "bignumber.js"; import { getPagedGql } from "../utils/gql"; -import { Liq } from "../utils/binResults"; +import { Liq } from "../utils/types"; const subgraphUrl = "https://api.thegraph.com/subgraphs/name/liquity/liquity"; diff --git a/liquidations/maker/index.ts b/liquidations/maker/index.ts index 7494f6d41..b6d058ff6 100644 --- a/liquidations/maker/index.ts +++ b/liquidations/maker/index.ts @@ -1,7 +1,7 @@ import { ethers } from "ethers"; import { providers } from "../utils/ethers"; import BigNumber from "bignumber.js"; -import { Liq } from "../utils/binResults"; +import { Liq } from "../utils/types"; const sdk = require("@defillama/sdk"); // all maker contracts: https://chainlog.makerdao.com/api/mainnet/active.json diff --git a/liquidations/solend/index.ts b/liquidations/solend/index.ts index dd179d114..9896ddb18 100644 --- a/liquidations/solend/index.ts +++ b/liquidations/solend/index.ts @@ -1,7 +1,7 @@ import { PublicKey, Connection } from "@solana/web3.js"; import { SolendMarket, SolendObligation, parseObligation } from "@solendprotocol/solend-sdk"; import { BigNumber } from "bignumber.js"; -import { Liq } from "../utils/binResults"; +import { Liq } from "../utils/types"; const endpoint = process.env.SOLANA_RPC || "https://solana-api.projectserum.com/"; // or "https://api.mainnet-beta.solana.com" const connection = new Connection(endpoint, "confirmed"); diff --git a/liquidations/traderjoe/index.ts b/liquidations/traderjoe/index.ts index 3073a3c65..be1d3888b 100644 --- a/liquidations/traderjoe/index.ts +++ b/liquidations/traderjoe/index.ts @@ -1,7 +1,7 @@ import { gql } from "graphql-request"; import { getPagedGql } from "../utils/gql"; import BigNumber from "bignumber.js"; -import { Liq } from "../utils/binResults"; +import { Liq } from "../utils/types"; const subgraphUrl = "https://api.thegraph.com/subgraphs/name/traderjoe-xyz/lending"; diff --git a/liquidations/utils/binResults.ts b/liquidations/utils/binResults.ts index de8041f5c..167b8a6e0 100644 --- a/liquidations/utils/binResults.ts +++ b/liquidations/utils/binResults.ts @@ -1,18 +1,8 @@ import axios from "axios"; +import { Liq } from "./types"; export const TOTAL_BINS = 20; -export interface Liq { - owner: string; - liqPrice: number; - collateral: string; - collateralAmount: string; - extra?: { - displayName?: string; - url: string; - }; -} - export interface Bins { [token: string]: { bins: { diff --git a/liquidations/utils/compound-helpers.ts b/liquidations/utils/compound-helpers.ts index a200703c5..e43cd3426 100644 --- a/liquidations/utils/compound-helpers.ts +++ b/liquidations/utils/compound-helpers.ts @@ -2,6 +2,7 @@ import axios from "axios"; import BigNumber from "bignumber.js"; import { gql } from "graphql-request"; import { getPagedGql } from "./gql"; +import { Prices } from "./types"; export const bignum = (value: string | number) => new BigNumber(value); @@ -32,9 +33,6 @@ export type Account = { hasBorrowed: boolean; }; -export type Price = { decimals: number; price: number; symbol: string; timestamp: number; confidence: number }; -export type Prices = { [address: string]: Price }; - export const getUnderlyingPrices = async (markets: Market[], chainPrefix: string): Promise => { const tokens = markets.map((m) => m.underlyingAddress).map((a) => chainPrefix + a.toLowerCase()); const prices = (await axios.get("https://coins.llama.fi/prices/current/" + tokens.join(","))).data.coins as Prices; diff --git a/liquidations/utils/types.ts b/liquidations/utils/types.ts new file mode 100644 index 000000000..ce2e56a16 --- /dev/null +++ b/liquidations/utils/types.ts @@ -0,0 +1,13 @@ +export type Price = { decimals: number; price: number; symbol: string; timestamp: number; confidence: number }; +export type Prices = { [address: string]: Price }; + +export interface Liq { + owner: string; + liqPrice: number; + collateral: string; + collateralAmount: string; + extra?: { + displayName?: string; + url: string; + }; +} diff --git a/liquidations/venus/index.ts b/liquidations/venus/index.ts index 874f46754..a79daf612 100644 --- a/liquidations/venus/index.ts +++ b/liquidations/venus/index.ts @@ -1,7 +1,7 @@ import { gql } from "graphql-request"; import { getPagedGql } from "../utils/gql"; import BigNumber from "bignumber.js"; -import { Liq } from "../utils/binResults"; +import { Liq } from "../utils/types"; import { Account, borrowBalanceUnderlying,