UNPKG

goosefx-ssl-sdk

Version:

SDK for interacting with GooseFX Single-sided Liquidity pools

44 lines (43 loc) 1.23 kB
import * as lo from "@solana/buffer-layout"; import { PublicKey } from "@solana/web3.js"; import { ISwapToken } from "."; interface Oracle { elements: Array<{ address: PublicKey; inverse: boolean; }>; n: bigint; padding: Uint8Array; } interface OracleComponent { address: PublicKey; inverse: boolean; padding: Uint8Array; } export declare const ORACLE_ELEMENT_LAYOUT: lo.Structure<OracleComponent>; export declare const ORACLE_LAYOUT: lo.Structure<Oracle>; export interface Tokens { [So11111111111111111111111111111111111111112: string]: ISwapToken; EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v: ISwapToken; } export interface Pair { sighash: Uint8Array; controller: PublicKey; mints: Array<PublicKey>; oracles: Array<Oracle>; nOracle: BigInt; fee_collector: PublicKey; A: number; feeRates: Array<number>; maxDelay: BigInt; confidence: BigInt; balancer: PublicKey; excessiveConfiscateRate: number; feeCollector: PublicKey; platformFeeRate: Array<number>; rebalanceRebates: Array<number>; volumes: Array<BigInt>; enableRebalanceSwap: boolean; } export declare const PAIR_LAYOUT: lo.Structure<Pair>; export {};