UNPKG

mamam-sdk

Version:

TypeScript interfaces for MamaM

747 lines (746 loc) 21.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.IDL = void 0; exports.IDL = { "version": "0.0.0", "name": "mamam", "instructions": [ { "name": "initializeExchange", "accounts": [ { "name": "exchange", "isMut": true, "isSigner": false }, { "name": "payer", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "bump", "type": "u8" } ] }, { "name": "initializeMarket", "accounts": [ { "name": "exchange", "isMut": true, "isSigner": false }, { "name": "market", "isMut": true, "isSigner": false }, { "name": "coinMintPk", "isMut": false, "isSigner": false }, { "name": "pcMintPk", "isMut": false, "isSigner": false }, { "name": "coinVaultPk", "isMut": true, "isSigner": false }, { "name": "pcVaultPk", "isMut": true, "isSigner": false }, { "name": "bidsPk", "isMut": true, "isSigner": false }, { "name": "asksPk", "isMut": true, "isSigner": false }, { "name": "reqQPk", "isMut": true, "isSigner": false }, { "name": "eventQPk", "isMut": true, "isSigner": false }, { "name": "serumMarketAuthority", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "serumDexProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "vaultSignerNonce", "type": "u64" } ] }, { "name": "initUserOnMarket", "accounts": [ { "name": "exchange", "isMut": false, "isSigner": false }, { "name": "serumOpenOrders", "isMut": true, "isSigner": false }, { "name": "serumMarket", "isMut": false, "isSigner": false }, { "name": "serumMarketAuthority", "isMut": false, "isSigner": false }, { "name": "serumDexProgramId", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "bump", "type": "u8" } ] }, { "name": "placeOrder", "accounts": [ { "name": "exchange", "isMut": false, "isSigner": false }, { "name": "user", "isMut": false, "isSigner": true }, { "name": "orderPayer", "isMut": true, "isSigner": false }, { "name": "market", "isMut": true, "isSigner": false }, { "name": "openOrders", "isMut": true, "isSigner": false }, { "name": "requestQueue", "isMut": true, "isSigner": false }, { "name": "eventQueue", "isMut": true, "isSigner": false }, { "name": "bids", "isMut": true, "isSigner": false }, { "name": "asks", "isMut": true, "isSigner": false }, { "name": "coinVault", "isMut": true, "isSigner": false }, { "name": "pcVault", "isMut": true, "isSigner": false }, { "name": "serumDexProgramId", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "side", "type": "u8" }, { "name": "limit", "type": "u64" }, { "name": "maxCoinQty", "type": "u64" }, { "name": "maxPcQty", "type": "u64" } ] }, { "name": "initializeAmm", "accounts": [ { "name": "exchange", "isMut": true, "isSigner": false }, { "name": "amm", "isMut": true, "isSigner": false }, { "name": "vault1", "isMut": false, "isSigner": false }, { "name": "vault2", "isMut": false, "isSigner": false }, { "name": "market", "isMut": false, "isSigner": false }, { "name": "oracle1", "isMut": false, "isSigner": false }, { "name": "oracle2", "isMut": false, "isSigner": false }, { "name": "payer", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "bump", "type": "u8" }, { "name": "length", "type": "u64" }, { "name": "timeGranularity", "type": "u64" }, { "name": "range", "type": "u64" } ] }, { "name": "initAmmOnMarket", "accounts": [ { "name": "exchange", "isMut": false, "isSigner": false }, { "name": "serumOpenOrders", "isMut": true, "isSigner": false }, { "name": "serumMarket", "isMut": false, "isSigner": false }, { "name": "serumMarketAuthority", "isMut": false, "isSigner": false }, { "name": "serumDexProgramId", "isMut": false, "isSigner": false }, { "name": "amm", "isMut": false, "isSigner": false }, { "name": "payer", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "bump", "type": "u8" } ] }, { "name": "depositAmm", "accounts": [ { "name": "exchange", "isMut": true, "isSigner": false }, { "name": "amm", "isMut": true, "isSigner": false }, { "name": "vault1", "isMut": true, "isSigner": false }, { "name": "vault2", "isMut": true, "isSigner": false }, { "name": "userToken1", "isMut": true, "isSigner": false }, { "name": "userToken2", "isMut": true, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": true }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "value1", "type": "u64" }, { "name": "value2", "type": "u64" } ] }, { "name": "updatePrice", "accounts": [ { "name": "exchange", "isMut": true, "isSigner": false }, { "name": "amm", "isMut": true, "isSigner": false }, { "name": "oracle1", "isMut": false, "isSigner": false }, { "name": "oracle2", "isMut": false, "isSigner": false }, { "name": "vault1", "isMut": true, "isSigner": false }, { "name": "vault2", "isMut": true, "isSigner": false }, { "name": "market", "isMut": true, "isSigner": false }, { "name": "openOrders", "isMut": true, "isSigner": false }, { "name": "requestQueue", "isMut": true, "isSigner": false }, { "name": "eventQueue", "isMut": true, "isSigner": false }, { "name": "bids", "isMut": true, "isSigner": false }, { "name": "asks", "isMut": true, "isSigner": false }, { "name": "coinVault", "isMut": true, "isSigner": false }, { "name": "pcVault", "isMut": true, "isSigner": false }, { "name": "pruneAuthority", "isMut": false, "isSigner": false }, { "name": "serumDexProgramId", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [] } ], "accounts": [ { "name": "exchange", "type": { "kind": "struct", "fields": [ { "name": "authority", "type": "publicKey" }, { "name": "markets", "type": { "vec": { "defined": "MarketData" } } }, { "name": "amms", "type": { "vec": { "defined": "AmmData" } } } ] } }, { "name": "amm", "type": { "kind": "struct", "fields": [ { "name": "market", "type": { "defined": "MarketData" } }, { "name": "marketAddress", "type": "publicKey" }, { "name": "vault1", "type": "publicKey" }, { "name": "vault2", "type": "publicKey" }, { "name": "ema", "type": "u64" }, { "name": "timestamp", "type": "u64" }, { "name": "length", "type": "u64" }, { "name": "timeGranularity", "type": "u64" }, { "name": "range", "type": "u64" } ] } } ], "types": [ { "name": "SerumData", "type": { "kind": "struct", "fields": [ { "name": "coinLotSize", "type": "u64" }, { "name": "pcLotSize", "type": "u64" }, { "name": "vaultSignerNonce", "type": "u64" }, { "name": "pcDustThreshold", "type": "u64" } ] } }, { "name": "AmmData", "type": { "kind": "struct", "fields": [ { "name": "address", "type": "publicKey" }, { "name": "marketAddress", "type": "publicKey" } ] } }, { "name": "MarketData", "type": { "kind": "struct", "fields": [ { "name": "address", "type": "publicKey" }, { "name": "pairName", "type": "string" }, { "name": "asset1", "type": { "defined": "AssetData" } }, { "name": "asset2", "type": { "defined": "AssetData" } } ] } }, { "name": "AssetData", "type": { "kind": "struct", "fields": [ { "name": "symbol", "type": { "defined": "Symbol" } }, { "name": "tokenMint", "type": "publicKey" }, { "name": "spotOracle", "type": "publicKey" } ] } }, { "name": "ErrorCode", "type": { "kind": "enum", "variants": [ { "name": "SampleError" } ] } }, { "name": "Symbol", "type": { "kind": "enum", "variants": [ { "name": "BTC" }, { "name": "ETH" }, { "name": "USDC" } ] } } ] };