@rainfi/sdk
Version:
This package is used to interact with Rain.fi protocol on Solana
111 lines (110 loc) • 3.77 kB
TypeScript
/**
* This code was GENERATED using the solita package.
* Please DO NOT EDIT THIS FILE, instead rerun solita to update it or write a wrapper to add functionality.
*
* See: https://github.com/metaplex-foundation/solita
*/
import * as beet from '@metaplex-foundation/beet';
import * as web3 from '@solana/web3.js';
import { CompressedArgsSmall } from '../types/CompressedArgsSmall';
import { MetadataArgs } from '../types/MetadataArgs';
/**
* @category Instructions
* @category TakeCompressedLoan
* @category generated
*/
export type TakeCompressedLoanInstructionArgs = {
collectionId: number;
duration: beet.bignum;
interest: beet.bignum;
amountInLamports: beet.bignum;
slippage: number;
whitelistIndex: number;
compressedArgsSmall: CompressedArgsSmall;
message: MetadataArgs;
};
/**
* @category Instructions
* @category TakeCompressedLoan
* @category generated
*/
export declare const takeCompressedLoanStruct: beet.FixableBeetArgsStruct<TakeCompressedLoanInstructionArgs & {
instructionDiscriminator: number[];
}>;
/**
* Accounts required by the _takeCompressedLoan_ instruction
*
* @property [_writable_, **signer**] signer
* @property [_writable_] signerStats
* @property [_writable_] signerTa
* @property [] treeAuthority
* @property [_writable_] merkleTree
* @property [_writable_, **signer**] loan
* @property [_writable_] collection
* @property [_writable_] pool
* @property [_writable_] authority
* @property [_writable_] vault
* @property [] poolCurrency
* @property [] whitelist
* @property [] creatorHash
* @property [] dataHash
* @property [] root
* @property [] pythPoolFeed
* @property [] pythSolFeed
* @property [_writable_] rainTa
* @property [] associatedTokenProgram
* @property [] logWrapper
* @property [] compressionProgram
* @property [] bubblegumProgram
* @property [_writable_] referrerTa (optional)
* @property [] lookupTable (optional)
* @category Instructions
* @category TakeCompressedLoan
* @category generated
*/
export type TakeCompressedLoanInstructionAccounts = {
signer: web3.PublicKey;
signerStats: web3.PublicKey;
signerTa: web3.PublicKey;
treeAuthority: web3.PublicKey;
merkleTree: web3.PublicKey;
loan: web3.PublicKey;
collection: web3.PublicKey;
pool: web3.PublicKey;
authority: web3.PublicKey;
vault: web3.PublicKey;
poolCurrency: web3.PublicKey;
whitelist: web3.PublicKey;
creatorHash: web3.PublicKey;
dataHash: web3.PublicKey;
root: web3.PublicKey;
pythPoolFeed: web3.PublicKey;
pythSolFeed: web3.PublicKey;
rainTa: web3.PublicKey;
systemProgram?: web3.PublicKey;
tokenProgram?: web3.PublicKey;
associatedTokenProgram: web3.PublicKey;
logWrapper: web3.PublicKey;
compressionProgram: web3.PublicKey;
bubblegumProgram: web3.PublicKey;
referrerTa?: web3.PublicKey;
lookupTable?: web3.PublicKey;
anchorRemainingAccounts?: web3.AccountMeta[];
};
export declare const takeCompressedLoanInstructionDiscriminator: number[];
/**
* Creates a _TakeCompressedLoan_ instruction.
*
* Optional accounts that are not provided will be omitted from the accounts
* array passed with the instruction.
* An optional account that is set cannot follow an optional account that is unset.
* Otherwise an Error is raised.
*
* @param accounts that will be accessed while the instruction is processed
* @param args to provide as instruction data to the program
*
* @category Instructions
* @category TakeCompressedLoan
* @category generated
*/
export declare function createTakeCompressedLoanInstruction(accounts: TakeCompressedLoanInstructionAccounts, args: TakeCompressedLoanInstructionArgs, programId?: web3.PublicKey): web3.TransactionInstruction;