@mimicry/sdk
Version:
A node SDK designed to simplify interaction with the Mimicry Protocol smart contracts.
28 lines (27 loc) • 1.33 kB
TypeScript
import { Contract, Signer, ContractTransactionResponse } from 'ethers';
import { IOHLCV } from 'candlestick-convert';
import { CurrencyInfo, MarketInfo, Skew, Value } from '../types';
import { CurrencySymbol, Direction, Timeframe } from '../enums';
import { Currency } from './currency';
import { Oracle } from './oracle';
export declare class Market {
private contract;
private signer;
private metadata?;
private oracle?;
constructor(_contract: Contract, _signer: Signer);
static initialize(_address: string, _signer: Signer): Promise<Market>;
getInfo(): Promise<MarketInfo>;
getMetadata(force?: boolean): Promise<any>;
getAddress(): Promise<string>;
getSkew(): Promise<Skew>;
getReferenceValue(_currencyInfo: CurrencyInfo): Promise<Value>;
getOracle(): Promise<Oracle>;
getTicks(): Promise<any>;
getOHLCV(_timeframe: Timeframe): Promise<IOHLCV[]>;
getCurrencyInfo(_address: string | CurrencySymbol): Promise<CurrencyInfo>;
getPositionValue(_positionId: number): Promise<Value>;
closePosition(_positionId: number): Promise<ContractTransactionResponse>;
openPosition(_direction: Direction, _currency: Currency, _amount: number): Promise<ContractTransactionResponse[]>;
commitValueTransfer(): Promise<ContractTransactionResponse>;
}