@parifi/synthetix-sdk-ts
Version:
A Typescript SDK for interactions with the Synthetix protocol
532 lines (529 loc) • 20.5 kB
JavaScript
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
// If the importer is in node compatibility mode or this is not an ESM
// file that has been converted to a CommonJS file using a Babel-
// compatible transform (i.e. "__esModule" has not been set), then set
// "default" to the CommonJS "module.exports" for node compatibility.
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// src/contracts/v3-contracts/8453/index.ts
var __exports = {};
__export(__exports, {
abiMappingBase: () => abiMappingBase,
metaMappingBase: () => metaMappingBase
});
module.exports = __toCommonJS(__exports);
var AccountProxyAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/AccountProxy.json"));
var AllErrorsAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/AllErrors.json"));
var CollateralToken_USDCAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/CollateralToken_USDC.json"));
var CoreProxyAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/CoreProxy.json"));
var OracleManagerProxyAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/OracleManagerProxy.json"));
var PerpsAccountProxyAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/PerpsAccountProxy.json"));
var PerpsMarketProxyAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/PerpsMarketProxy.json"));
var PythERC7412WrapperAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/PythERC7412Wrapper.json"));
var SpotMarketProxyAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/SpotMarketProxy.json"));
var SynthToken_sUSDCAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/SynthToken_sUSDC.json"));
var SynthUSDCTokenAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/SynthUSDCToken.json"));
var TrustedMulticallForwarderAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/TrustedMulticallForwarder.json"));
var USDCTokenAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/USDCToken.json"));
var USDProxyAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/USDProxy.json"));
var CannonAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/cannon.json"));
var CollateralTokensAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/collateralTokens.json"));
var ExtrasAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/extras.json"));
var MetaAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/meta.json"));
var MintableTokensAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/mintableTokens.json"));
var RewardsDistributorsAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/rewardsDistributors.json"));
var SynthTokensAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/synthTokens.json"));
var SystemTokenAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/systemToken.json"));
var CollateralToken_sStataUSDCAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/CollateralToken_sStataUSDC.json"));
var CollateralToken_stataBasUSDCAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/CollateralToken_stataBasUSDC.json"));
var RewardsDistributor_1_sUSDC_SNXAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/RewardsDistributor_1_sUSDC_SNX.json"));
var RewardsDistributor_1_sUSDC_USDCAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/RewardsDistributor_1_sUSDC_USDC.json"));
var RewardsDistributorForSpartanCouncilPoolSNXAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/RewardsDistributorForSpartanCouncilPoolSNX.json"));
var RewardsDistributorForSpartanCouncilPoolUSDCAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/RewardsDistributorForSpartanCouncilPoolUSDC.json"));
var SNXTokenAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/SNXToken.json"));
var SynthToken_sStataUSDCAndromeda = __toESM(require("@synthetixio/v3-contracts/8453-andromeda/SynthToken_sStataUSDC.json"));
var import_viem = require("viem");
// src/contracts/abis/zap.ts
var ZAP_ABI = [
{
inputs: [
{ internalType: "address", name: "_usdc", type: "address" },
{ internalType: "address", name: "_usdx", type: "address" },
{ internalType: "address", name: "_spotMarket", type: "address" },
{ internalType: "address", name: "_perpsMarket", type: "address" },
{ internalType: "address", name: "_referrer", type: "address" },
{ internalType: "uint128", name: "_susdcSpotId", type: "uint128" },
{ internalType: "address", name: "_aave", type: "address" },
{ internalType: "address", name: "_router", type: "address" },
{ internalType: "address", name: "_quoter", type: "address" }
],
stateMutability: "nonpayable",
type: "constructor"
},
{
inputs: [{ internalType: "string", name: "reason", type: "string" }],
name: "BuyFailed",
type: "error"
},
{ inputs: [], name: "NotPermitted", type: "error" },
{
inputs: [{ internalType: "address", name: "caller", type: "address" }],
name: "OnlyAave",
type: "error"
},
{ inputs: [], name: "OnlyPlumber", type: "error" },
{
inputs: [{ internalType: "bytes", name: "reason", type: "bytes" }],
name: "PullFailed",
type: "error"
},
{
inputs: [{ internalType: "bytes", name: "reason", type: "bytes" }],
name: "PushFailed",
type: "error"
},
{
inputs: [
{ internalType: "enum Reentrancy.Stage", name: "actual", type: "uint8" },
{
internalType: "enum Reentrancy.Stage",
name: "expected",
type: "uint8"
}
],
name: "ReentrancyDetected",
type: "error"
},
{ inputs: [], name: "ReentrancyGuardReentrantCall", type: "error" },
{
inputs: [{ internalType: "address", name: "token", type: "address" }],
name: "SafeERC20FailedOperation",
type: "error"
},
{
inputs: [{ internalType: "string", name: "reason", type: "string" }],
name: "SellFailed",
type: "error"
},
{
inputs: [{ internalType: "string", name: "reason", type: "string" }],
name: "SwapFailed",
type: "error"
},
{
inputs: [{ internalType: "string", name: "reason", type: "string" }],
name: "UnwrapFailed",
type: "error"
},
{
inputs: [{ internalType: "string", name: "reason", type: "string" }],
name: "WrapFailed",
type: "error"
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "plumber",
type: "address"
}
],
name: "PlumberDesignated",
type: "event"
},
{
inputs: [],
name: "AAVE",
outputs: [{ internalType: "address", name: "", type: "address" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "BURN_PERMISSION",
outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "FEE_TIER",
outputs: [{ internalType: "uint24", name: "", type: "uint24" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "MODIFY_PERMISSION",
outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "PERPS_MARKET",
outputs: [{ internalType: "address", name: "", type: "address" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "PLUMBER",
outputs: [{ internalType: "address", name: "", type: "address" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "QUOTER",
outputs: [{ internalType: "address", name: "", type: "address" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "REFERRAL_CODE",
outputs: [{ internalType: "uint16", name: "", type: "uint16" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "REFERRER",
outputs: [{ internalType: "address", name: "", type: "address" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "ROUTER",
outputs: [{ internalType: "address", name: "", type: "address" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "SPOT_MARKET",
outputs: [{ internalType: "address", name: "", type: "address" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "SUSDC_SPOT_ID",
outputs: [{ internalType: "uint128", name: "", type: "uint128" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "USDC",
outputs: [{ internalType: "address", name: "", type: "address" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "USDX",
outputs: [{ internalType: "address", name: "", type: "address" }],
stateMutability: "view",
type: "function"
},
{
inputs: [],
name: "USDX_ID",
outputs: [{ internalType: "uint128", name: "", type: "uint128" }],
stateMutability: "view",
type: "function"
},
{
inputs: [
{ internalType: "uint256", name: "_amount", type: "uint256" },
{ internalType: "uint128", name: "_accountId", type: "uint128" }
],
name: "burn",
outputs: [{ internalType: "uint256", name: "excess", type: "uint256" }],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "uint128", name: "_synthId", type: "uint128" },
{ internalType: "uint256", name: "_amount", type: "uint256" },
{ internalType: "uint256", name: "_minAmountOut", type: "uint256" },
{ internalType: "address", name: "_receiver", type: "address" }
],
name: "buy",
outputs: [
{ internalType: "uint256", name: "received", type: "uint256" },
{ internalType: "address", name: "synth", type: "address" }
],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [{ internalType: "address", name: "_newPlumber", type: "address" }],
name: "designatePlumber",
outputs: [],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "address", name: "", type: "address" },
{ internalType: "uint256", name: "_flashloan", type: "uint256" },
{ internalType: "uint256", name: "_premium", type: "uint256" },
{ internalType: "address", name: "", type: "address" },
{ internalType: "bytes", name: "_params", type: "bytes" }
],
name: "executeOperation",
outputs: [{ internalType: "bool", name: "", type: "bool" }],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [{ internalType: "address", name: "_token", type: "address" }],
name: "flush",
outputs: [],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "bytes", name: "_path", type: "bytes" },
{ internalType: "uint256", name: "_amountOut", type: "uint256" }
],
name: "quoteSwapFor",
outputs: [
{ internalType: "uint256", name: "amountIn", type: "uint256" },
{
internalType: "uint160[]",
name: "sqrtPriceX96AfterList",
type: "uint160[]"
},
{
internalType: "uint32[]",
name: "initializedTicksCrossedList",
type: "uint32[]"
},
{ internalType: "uint256", name: "gasEstimate", type: "uint256" }
],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "bytes", name: "_path", type: "bytes" },
{ internalType: "uint256", name: "_amountIn", type: "uint256" }
],
name: "quoteSwapWith",
outputs: [
{ internalType: "uint256", name: "amountOut", type: "uint256" },
{
internalType: "uint160[]",
name: "sqrtPriceX96AfterList",
type: "uint160[]"
},
{
internalType: "uint32[]",
name: "initializedTicksCrossedList",
type: "uint32[]"
},
{ internalType: "uint256", name: "gasEstimate", type: "uint256" }
],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "uint128", name: "_synthId", type: "uint128" },
{ internalType: "uint256", name: "_amount", type: "uint256" },
{ internalType: "uint256", name: "_minAmountOut", type: "uint256" },
{ internalType: "address", name: "_receiver", type: "address" }
],
name: "sell",
outputs: [{ internalType: "uint256", name: "received", type: "uint256" }],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "address", name: "_from", type: "address" },
{ internalType: "bytes", name: "_path", type: "bytes" },
{ internalType: "uint256", name: "_amount", type: "uint256" },
{ internalType: "uint256", name: "_maxAmountIn", type: "uint256" },
{ internalType: "address", name: "_receiver", type: "address" }
],
name: "swapFor",
outputs: [{ internalType: "uint256", name: "deducted", type: "uint256" }],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "address", name: "_from", type: "address" },
{ internalType: "bytes", name: "_path", type: "bytes" },
{ internalType: "uint256", name: "_amount", type: "uint256" },
{ internalType: "uint256", name: "_amountOutMinimum", type: "uint256" },
{ internalType: "address", name: "_receiver", type: "address" }
],
name: "swapWith",
outputs: [{ internalType: "uint256", name: "received", type: "uint256" }],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "uint128", name: "_accountId", type: "uint128" },
{ internalType: "uint128", name: "_collateralId", type: "uint128" },
{ internalType: "uint256", name: "_collateralAmount", type: "uint256" },
{ internalType: "address", name: "_collateral", type: "address" },
{ internalType: "bytes", name: "_path", type: "bytes" },
{ internalType: "uint256", name: "_zapMinAmountOut", type: "uint256" },
{ internalType: "uint256", name: "_unwrapMinAmountOut", type: "uint256" },
{ internalType: "uint256", name: "_swapMaxAmountIn", type: "uint256" },
{ internalType: "address", name: "_receiver", type: "address" }
],
name: "unwind",
outputs: [],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "address", name: "_token", type: "address" },
{ internalType: "uint128", name: "_synthId", type: "uint128" },
{ internalType: "uint256", name: "_amount", type: "uint256" },
{ internalType: "uint256", name: "_minAmountOut", type: "uint256" },
{ internalType: "address", name: "_receiver", type: "address" }
],
name: "unwrap",
outputs: [{ internalType: "uint256", name: "unwrapped", type: "uint256" }],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "uint128", name: "_synthId", type: "uint128" },
{ internalType: "uint256", name: "_amount", type: "uint256" },
{ internalType: "uint128", name: "_accountId", type: "uint128" },
{ internalType: "address", name: "_receiver", type: "address" }
],
name: "withdraw",
outputs: [],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "address", name: "_token", type: "address" },
{ internalType: "uint128", name: "_synthId", type: "uint128" },
{ internalType: "uint256", name: "_amount", type: "uint256" },
{ internalType: "uint256", name: "_minAmountOut", type: "uint256" },
{ internalType: "address", name: "_receiver", type: "address" }
],
name: "wrap",
outputs: [{ internalType: "uint256", name: "wrapped", type: "uint256" }],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "uint256", name: "_amount", type: "uint256" },
{ internalType: "uint256", name: "_minAmountOut", type: "uint256" },
{ internalType: "address", name: "_receiver", type: "address" }
],
name: "zapIn",
outputs: [{ internalType: "uint256", name: "zapped", type: "uint256" }],
stateMutability: "nonpayable",
type: "function"
},
{
inputs: [
{ internalType: "uint256", name: "_amount", type: "uint256" },
{ internalType: "uint256", name: "_minAmountOut", type: "uint256" },
{ internalType: "address", name: "_receiver", type: "address" }
],
name: "zapOut",
outputs: [{ internalType: "uint256", name: "zapped", type: "uint256" }],
stateMutability: "nonpayable",
type: "function"
}
];
// src/contracts/v3-contracts/8453/index.ts
var metaMappingBase = {
andromeda: MetaAndromeda.default
// Access the default export for JSON data
};
var abiMappingBase = {
andromeda: {
AccountProxy: AccountProxyAndromeda.default,
AllErrors: AllErrorsAndromeda.default,
CoreProxy: CoreProxyAndromeda.default,
OracleManagerProxy: OracleManagerProxyAndromeda.default,
PerpsAccountProxy: PerpsAccountProxyAndromeda.default,
PerpsMarketProxy: PerpsMarketProxyAndromeda.default,
PythERC7412Wrapper: PythERC7412WrapperAndromeda.default,
SpotMarketProxy: SpotMarketProxyAndromeda.default,
SynthToken_sUSDC: SynthToken_sUSDCAndromeda.default,
SynthUSDCToken: SynthUSDCTokenAndromeda.default,
TrustedMulticallForwarder: TrustedMulticallForwarderAndromeda.default,
USDCToken: USDCTokenAndromeda.default,
USDProxy: USDProxyAndromeda.default,
cannon: CannonAndromeda.default,
collateralTokens: CollateralTokensAndromeda.default,
extras: ExtrasAndromeda.default,
mintableTokens: MintableTokensAndromeda.default,
rewardsDistributors: RewardsDistributorsAndromeda.default,
synthTokens: SynthTokensAndromeda.default,
systemToken: SystemTokenAndromeda.default,
CollateralToken_USDC: CollateralToken_USDCAndromeda.default,
CollateralToken_sStataUSDC: CollateralToken_sStataUSDCAndromeda.default,
CollateralToken_stataBasUSDC: CollateralToken_stataBasUSDCAndromeda.default,
CollateralToken_sUSDC: import_viem.erc20Abi,
CollateralToken_cbBTC: import_viem.erc20Abi,
CollateralToken_cbETH: import_viem.erc20Abi,
CollateralToken_WETH: import_viem.erc20Abi,
CollateralToken_wstETH: import_viem.erc20Abi,
CollateralToken_scbBTC: import_viem.erc20Abi,
CollateralToken_scbETH: import_viem.erc20Abi,
CollateralToken_sWETH: import_viem.erc20Abi,
CollateralToken_swstETH: import_viem.erc20Abi,
RewardsDistributor_1_sUSDC_SNX: RewardsDistributor_1_sUSDC_SNXAndromeda.default,
RewardsDistributor_1_sUSDC_USDC: RewardsDistributor_1_sUSDC_USDCAndromeda.default,
RewardsDistributorForSpartanCouncilPoolSNX: RewardsDistributorForSpartanCouncilPoolSNXAndromeda.default,
RewardsDistributorForSpartanCouncilPoolUSDC: RewardsDistributorForSpartanCouncilPoolUSDCAndromeda.default,
SNXToken: SNXTokenAndromeda.default,
SynthToken_sStataUSDC: SynthToken_sStataUSDCAndromeda.default,
SynthZap: ZAP_ABI
}
};
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
abiMappingBase,
metaMappingBase
});
//# sourceMappingURL=index.js.map