@maxosllc/smart-order-router
Version:
BlockDAG Smart Order Router
54 lines (53 loc) • 1.56 kB
TypeScript
import { ChainId } from '../../../src/util/chains';
import { Token } from '@uniswap/sdk-core';
import { ProviderConfig } from '../provider';
export interface V2SubgraphPool {
id: string;
token0: {
id: string;
};
token1: {
id: string;
};
supply: number;
reserve: number;
reserveUSD: number;
}
declare type RawV2SubgraphPool = {
id: string;
token0: {
symbol: string;
id: string;
};
token1: {
symbol: string;
id: string;
};
totalSupply: string;
trackedReserveETH: string;
reserveUSD: string;
};
/**
* Provider for getting V2 pools from the Subgraph
*
* @export
* @interface IV2SubgraphProvider
*/
export interface IV2SubgraphProvider {
getPools(tokenIn?: Token, tokenOut?: Token, providerConfig?: ProviderConfig): Promise<V2SubgraphPool[]>;
}
export declare class V2SubgraphProvider implements IV2SubgraphProvider {
private chainId;
private retries;
private timeout;
private rollback;
private pageSize;
private trackedEthThreshold;
private untrackedUsdThreshold;
private subgraphUrlOverride?;
private client;
constructor(chainId: ChainId, retries?: number, timeout?: number, rollback?: boolean, pageSize?: number, trackedEthThreshold?: number, untrackedUsdThreshold?: number, subgraphUrlOverride?: string | undefined);
getPools(_tokenIn?: Token, _tokenOut?: Token, providerConfig?: ProviderConfig): Promise<V2SubgraphPool[]>;
isVirtualPairBaseV2Pool(pool: RawV2SubgraphPool): boolean;
}
export {};