UNPKG

@symmetry-hq/baskets-sdk

Version:

Software Development Kit for interacting with Symmetry Baskets Program

20 lines (19 loc) 2.52 kB
import { Connection, PublicKey, TransactionInstruction } from "@solana/web3.js"; import { SimpleCreateParams, SimpleEditParams, TransactionToSend } from "./config"; export declare function createBasketIx(connection: Connection, basketParams: SimpleCreateParams): Promise<TransactionInstruction>; export declare function editBasketIx(connection: Connection, basket: PublicKey, basketParams: SimpleEditParams): Promise<TransactionInstruction>; export declare function editManagerIx(connection: Connection, basket: PublicKey, newManager: PublicKey): Promise<TransactionInstruction>; export declare function closeBasketIx(connection: Connection, basket: PublicKey): Promise<TransactionInstruction>; export declare function setMetadataIx(connection: Connection, basket: PublicKey, symbol?: string, name?: string, uri?: string): Promise<TransactionInstruction>; export declare function buyBasketIx(connection: Connection, user: PublicKey, basket: PublicKey, amount: number): Promise<TransactionInstruction>; export declare function claimTokensFromBuyStateIxs(connection: Connection, user: PublicKey, buyState: PublicKey): Promise<TransactionInstruction[]>; export declare function mintFromBuyStateIx(connection: Connection, user: PublicKey, buyState: PublicKey): Promise<TransactionInstruction>; export declare function buyBasketWithMultipleTokensIx(connection: Connection, user: PublicKey, basket: PublicKey, contribution: { token: PublicKey; amount: number; }[]): Promise<TransactionInstruction>; export declare function buyBasketWithSingleTokenIx(connection: Connection, user: PublicKey, basket: PublicKey, contributionToken: PublicKey, contributionAmount: number): Promise<TransactionInstruction>; export declare function sellBasketToSingleTokenIx(connection: Connection, user: PublicKey, basket: PublicKey, withdrawToken: PublicKey, amount: number): Promise<TransactionInstruction>; export declare function sellBasketIx(connection: Connection, user: PublicKey, basket: PublicKey, amount: number, rebalance: number): Promise<TransactionInstruction>; export declare function claimTokensFromSellStateIxs(connection: Connection, user: PublicKey, basket: PublicKey): Promise<TransactionInstruction[]>; export declare function cronRebalanceBasketIxs(connection: Connection, user: PublicKey, basketAddress: PublicKey, jupAPIkey?: string, lamports?: number, updateOracles?: boolean, maxAllowedAccounts?: number, softCap?: number, hardCap?: number, underTokens?: number, overTokens?: number): Promise<TransactionToSend[]>;