@rainfi/sdk
Version:
This package is used to interact with Rain.fi protocol on Solana
109 lines (108 loc) • 3.58 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';
/**
* @category Instructions
* @category ExecuteLoan
* @category generated
*/
export type ExecuteLoanInstructionArgs = {
collectionId: number;
duration: beet.bignum;
interest: beet.bignum;
amountInLamports: beet.bignum;
slippage: number;
whitelistIndex: number;
};
/**
* @category Instructions
* @category ExecuteLoan
* @category generated
*/
export declare const executeLoanStruct: beet.BeetArgsStruct<ExecuteLoanInstructionArgs & {
instructionDiscriminator: number[];
}>;
/**
* Accounts required by the _executeLoan_ instruction
*
* @property [_writable_, **signer**] signer
* @property [_writable_] signerStats
* @property [_writable_] signerTa
* @property [_writable_] nftTa
* @property [_writable_] nftMint
* @property [_writable_] nftMetadata
* @property [_writable_] nftEdition
* @property [_writable_] request
* @property [_writable_, **signer**] loan
* @property [_writable_] vaultTokenAccount
* @property [_writable_] collection
* @property [_writable_] poolOwner
* @property [_writable_] pool
* @property [_writable_] authority
* @property [_writable_] vault
* @property [] poolCurrency
* @property [] whitelist
* @property [] pythPoolFeed
* @property [] pythSolFeed
* @property [_writable_] rainTa
* @property [] instructions
* @property [] authorizationRulesProgram
* @property [] metadataProgram
* @property [] associatedTokenProgram
* @property [] lookupTable (optional)
* @category Instructions
* @category ExecuteLoan
* @category generated
*/
export type ExecuteLoanInstructionAccounts = {
signer: web3.PublicKey;
signerStats: web3.PublicKey;
signerTa: web3.PublicKey;
nftTa: web3.PublicKey;
nftMint: web3.PublicKey;
nftMetadata: web3.PublicKey;
nftEdition: web3.PublicKey;
request: web3.PublicKey;
loan: web3.PublicKey;
vaultTokenAccount: web3.PublicKey;
collection: web3.PublicKey;
poolOwner: web3.PublicKey;
pool: web3.PublicKey;
authority: web3.PublicKey;
vault: web3.PublicKey;
poolCurrency: web3.PublicKey;
whitelist: web3.PublicKey;
pythPoolFeed: web3.PublicKey;
pythSolFeed: web3.PublicKey;
rainTa: web3.PublicKey;
instructions: web3.PublicKey;
authorizationRulesProgram: web3.PublicKey;
metadataProgram: web3.PublicKey;
systemProgram?: web3.PublicKey;
tokenProgram?: web3.PublicKey;
associatedTokenProgram: web3.PublicKey;
lookupTable?: web3.PublicKey;
anchorRemainingAccounts?: web3.AccountMeta[];
};
export declare const executeLoanInstructionDiscriminator: number[];
/**
* Creates a _ExecuteLoan_ 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 ExecuteLoan
* @category generated
*/
export declare function createExecuteLoanInstruction(accounts: ExecuteLoanInstructionAccounts, args: ExecuteLoanInstructionArgs, programId?: web3.PublicKey): web3.TransactionInstruction;