@yfi/sdk
Version:
Interaction framework for the yearn protocol
44 lines (43 loc) • 1.95 kB
TypeScript
import { CallOverrides } from "@ethersproject/contracts";
import { ChainId } from "../../chain";
import { ContractAddressId, ContractService, WrappedContract } from "../../common";
import { Address, Position, VaultDynamic, VaultStatic } from "../../types";
export interface RegistryAdapter {
assetsStatic(addresses?: Address[], overrides?: CallOverrides): Promise<VaultStatic[]>;
assetsDynamic(addresses?: Address[], overrides?: CallOverrides): Promise<VaultDynamic[]>;
positionsOf(address: Address, addresses?: Address[], overrides?: CallOverrides): Promise<Position[]>;
tokens(overrides?: CallOverrides): Promise<Address[]>;
}
export declare class RegistryV2Adapter<T extends ChainId> extends ContractService<T> implements RegistryAdapter {
static abi: string[];
static contractId: ContractAddressId;
get contract(): Promise<WrappedContract>;
/**
* Get the static part of Vault assets.
* @param addresses filter, if not provided all assets are returned
* @param overrides
* @returns static
*/
assetsStatic(addresses?: Address[], overrides?: CallOverrides): Promise<VaultStatic[]>;
/**
* Get the dynamic part of Vault assets.
* @param addresses filter, if not provided all assets are returned
* @param overrides
* @returns dynamic
*/
assetsDynamic(addresses?: Address[], overrides?: CallOverrides): Promise<VaultDynamic[]>;
/**
* Get all Vault asset positions for a particular address.
* @param address
* @param addresses filter, if not provided all positions are returned
* @param overrides
* @returns
*/
positionsOf(address: Address, addresses?: Address[], overrides?: CallOverrides): Promise<Position[]>;
/**
* Get all Vault underlying token addresses.
* @param overrides
* @returns
*/
tokens(overrides?: CallOverrides): Promise<Address[]>;
}