@parifi/synthetix-sdk-ts
Version:
A Typescript SDK for interactions with the Synthetix protocol
62 lines (59 loc) • 1.62 kB
text/typescript
import { Side } from '../../spot/interface.mjs';
import { MarketIdOrName } from '../commonTypes.mjs';
import 'viem';
import '../contractTypes.mjs';
type CommitOrderSpot = {
side: Side;
size: number;
slippageTolerance: number;
minAmountReceived?: number;
settlementStrategyId?: number;
marketIdOrName: MarketIdOrName;
};
type Approve = {
targetAddress: string;
amount?: number;
marketIdOrName: MarketIdOrName;
};
type GetOrder = {
asyncOrderId: number;
marketIdOrName: MarketIdOrName;
fetchSettlementStrategy?: boolean;
};
type GetSettlementStrategy = {
settlementStrategyId: number;
marketIdOrName: MarketIdOrName;
};
type GetSettlementStrategies = {
settlementStrategyId: number;
marketIds: number[];
};
interface SettlementStrategyResponse {
strategyType?: number;
settlementDelay?: bigint;
settlementWindowDuration?: bigint;
priceVerificationContract?: string;
feedId?: string;
url?: string;
settlementReward?: bigint;
priceDeviationTolerance?: bigint;
minimumUsdExchangeAmount?: bigint;
maxRoundingLoss?: bigint;
disabled?: boolean;
}
type AtomicOrder = {
side: Side;
size: number;
slippageTolerance: number;
marketIdOrName: MarketIdOrName;
minAmountReceived?: number;
};
type Wrap = {
size: number;
marketIdOrName: MarketIdOrName;
};
type SettleOrder = {
asyncOrderId: number;
marketIdOrName: MarketIdOrName;
};
export type { Approve, AtomicOrder, CommitOrderSpot, GetOrder, GetSettlementStrategies, GetSettlementStrategy, SettleOrder, SettlementStrategyResponse, Wrap };