export interface ApiTime { offset: number; } export interface ApiInfo { tvl: number; volume24h: number; totalvolume: number; } export interface ApiPairsItem { name: string; ammId: string; lpMint: string; market: string; liquidity: number; volume24h: number; volume24hQuote: number; fee24h: number; fee24hQuote: number; volume7d: number; volume7dQuote: number; fee7d: number; fee7dQuote: number; volume30d: number; volume30dQuote: number; fee30d: number; fee30dQuote: number; price: number; lpPrice: number; tokenAmountCoin: number; tokenAmountPc: number; tokenAmountLp: number; apr24h: number; apr7d: number; apr30d: number; } export type ApiPairs = ApiPairsItem[]; export interface ApiPrice { [mint: string]: number; } export interface ApiRpcsItem { url: string; weight: number; batch: boolean; name: string; } export interface ApiRpcs { rpcs: ApiRpcsItem[]; strategy: 'weight' | 'speed'; } export interface ApiVersion { latest: string; least: string; } export interface ApiFarmAprV3 { name: string; id: string; version: 3; apr: string; aprA: null; aprB: null; aprC: null; aprD: null; aprE: null; tvl: number; lpPrice: number; } export interface ApiFarmAprV5 { name: string; id: string; version: 5; apr: string; aprA: string; aprB: string; aprC: null; aprD: null; aprE: null; tvl: number; lpPrice: number; } export interface ApiFarmAprV6 { name: string; id: string; version: 3; apr: string; aprA: string; aprB: string; aprC: string; aprD: string; aprE: string; tvl: number; lpPrice: number; } export type ApiFarmApr = ApiFarmAprV3 | ApiFarmAprV5 | ApiFarmAprV6; export interface ApiFarmAprLinePoint { time: number; apr: number; } export interface ApiFarmAprLine { success: true; data: ApiFarmAprLinePoint[]; } export interface ApiTokenInfoItem { symbol: string; name: string; mint: string; decimals: number; extensions: { coingeckoId?: string; version?: 'TOKEN2022'; }; icon: string; hasFreeze: 0 | 1; } export interface ApiTokenInfo { official: ApiTokenInfoItem[]; unOfficial: ApiTokenInfoItem[]; unNamed: { mint: string; decimals: number; hasFreeze: 0 | 1; extensions: { version?: 'TOKEN2022'; }; }[]; blacklist: string[]; } export interface ApiPoolInfoV4 { id: string; baseMint: string; quoteMint: string; lpMint: string; baseDecimals: number; quoteDecimals: number; lpDecimals: number; version: 4; programId: string; authority: string; openOrders: string; targetOrders: string; baseVault: string; quoteVault: string; withdrawQueue: string; lpVault: string; marketVersion: 3; marketProgramId: string; marketId: string; marketAuthority: string; marketBaseVault: string; marketQuoteVault: string; marketBids: string; marketAsks: string; marketEventQueue: string; lookupTableAccount: string; } export interface ApiPoolInfoV5 { id: string; baseMint: string; quoteMint: string; lpMint: string; baseDecimals: number; quoteDecimals: number; lpDecimals: number; version: 5; programId: string; authority: string; openOrders: string; targetOrders: string; baseVault: string; quoteVault: string; withdrawQueue: string; lpVault: string; marketVersion: 3; marketProgramId: string; marketId: string; marketAuthority: string; marketBaseVault: string; marketQuoteVault: string; marketBids: string; marketAsks: string; marketEventQueue: string; modelDataAccount: string; lookupTableAccount: string; } export type ApiPoolInfoItem = ApiPoolInfoV4 | ApiPoolInfoV5; export interface ApiPoolInfo { official: ApiPoolInfoItem[]; unOfficial: ApiPoolInfoItem[]; } export interface ApiFarmInfoV3 { id: string; symbol: string; lpMint: string; version: 3; programId: string; authority: string; lpVault: string; rewardInfos: [{ rewardMint: string; rewardVault: string; }]; upcoming: boolean; } export interface ApiFarmInfoV5 { id: string; symbol: string; baseMint: string; quoteMint: string; lpMint: string; version: 5; programId: string; authority: string; lpVault: string; rewardInfos: [ { rewardMint: string; rewardVault: string; }, { rewardMint: string; rewardVault: string; } ]; upcoming: boolean; } export interface ApiFarmInfoV6 { id: string; symbol: string; baseMint: string; quoteMint: string; lpMint: string; version: 6; programId: string; authority: string; lpVault: string; rewardPeriodMax: number; rewardPeriodMin: number; rewardPeriodExtend: number; creator: string; rewardInfos: { rewardMint: string; rewardVault: string; rewardOpenTime: number; rewardEndTime: number; rewardPerSecond: number; rewardSender: string; rewardType: 'Standard SPL' | 'Option tokens'; }[]; upcoming: boolean; } export interface ApiFarmInfo { stake: (ApiFarmInfoV3 | ApiFarmInfoV5 | ApiFarmInfoV6)[]; raydium: (ApiFarmInfoV3 | ApiFarmInfoV5 | ApiFarmInfoV6)[]; fusion: (ApiFarmInfoV3 | ApiFarmInfoV5 | ApiFarmInfoV6)[]; ecosystem: (ApiFarmInfoV3 | ApiFarmInfoV5 | ApiFarmInfoV6)[]; } export interface ApiIdoInfoItem { id: string; authority: string; projectName: string; projectPosters: string; projectDetailLink: string; baseMint: string; baseVault: string; baseSymbol: string; baseDecimals: number; baseIcon: string; quoteMint: string; quoteVault: string; quoteSymbol: string; quoteDecimals: number; quoteIcon: string; startTime: number; endTime: number; startWithdrawTime: number; withdrawTimeQuote: number; stakeTimeEnd: number; stakeMinSize: number; price: number; raise: number; maxWinLotteries: number; raisedLotteries: number; isWinning: number; luckyNumbers: { digits: number; number: number; endRange: number; }[]; version: 3; snapshotVersion: 1; programId: string; snapshotProgramId: string; seedId: string; } export interface ApiIdoInfo { success: boolean; data: ApiIdoInfoItem[]; } export interface ApiIdoProjectInfo { info: ApiIdoInfoItem; projectInfo: { projectDetails: string; projectDocs: { [key: string]: string; }; projectSocials: { [key: string]: string; }; }; } export interface ApiClmmConfigItem { id: string; index: number; protocolFeeRate: number; tradeFeeRate: number; tickSpacing: number; fundFeeRate: number; fundOwner: string; description: string; } export interface ApiClmmConfig { data: { [id: string]: ApiClmmConfigItem; }; } export interface ApiClmmPoolsItemStatistics { volume: number; volumeFee: number; feeA: number; feeB: number; feeApr: number; rewardApr: { A: number; B: number; C: number; }; apr: number; priceMin: number; priceMax: number; } export interface ApiClmmPoolsItem { id: string; mintProgramIdA: string; mintProgramIdB: string; mintA: string; mintB: string; vaultA: string; vaultB: string; mintDecimalsA: number; mintDecimalsB: number; ammConfig: ApiClmmConfigItem; rewardInfos: { mint: string; programId: string; }[]; tvl: number; day: ApiClmmPoolsItemStatistics; week: ApiClmmPoolsItemStatistics; month: ApiClmmPoolsItemStatistics; lookupTableAccount: string; } export interface ApiClmmPools { data: ApiClmmPoolsItem[]; } export interface ApiClmmPositionLinePoint { price: number; liquidity: number; } export interface ApiClmmPositionLine { data: ApiClmmPositionLinePoint[]; }