UNPKG

mamam-sdk

Version:

TypeScript interfaces for MamaM

597 lines (596 loc) 15.2 kB
export declare type MamamIDL = { "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"; }]; }; }]; "metadata": { "address": "3HGwuAEzU8vtqZasvKsYWF34cdw7j4y3AbtWJo1BrN19"; }; }; import { IdlAccounts } from '@project-serum/anchor'; export declare type ErrorCode = Record<string, Record<string, any>>; export declare const ErrorCode: { SampleError: { sampleerror: {}; }; }; export declare type Symbol = Record<string, Record<string, any>>; export declare const Symbol: { BTC: { btc: {}; }; ETH: { eth: {}; }; USDC: { usdc: {}; }; }; export declare type Exchange = IdlAccounts<MamamIDL>["exchange"]; export declare type Amm = IdlAccounts<MamamIDL>["amm"];