/// import { web3, BN } from "@coral-xyz/anchor"; export interface MakeAccountImmutable2Args { storageUsed: BN; } export interface MakeAccountImmutable2Accounts { /** * This is the `StorageConfig` accounts that holds all of the admin, uploader keys. * Requires mutability to update global storage counter. */ storageConfig: web3.PublicKey; /** * Parent storage account. * Requires mutability to update user storage account storage counter. */ storageAccount: web3.PublicKey; /** This token account serves as the account which holds user's stake for file storage. */ stakeAccount: web3.PublicKey; /** This token account is the SHDW operator emissions wallet */ emissionsWallet: web3.PublicKey; /** * File owner, user, fee-payer * Requires mutability since owner/user is fee payer. */ owner: web3.PublicKey; /** User's token account */ ownerAta: web3.PublicKey; /** Uploader needs to sign off on make immutable */ uploader: web3.PublicKey; /** Token mint account */ tokenMint: web3.PublicKey; /** System Program */ systemProgram: web3.PublicKey; /** Token Program */ tokenProgram: web3.PublicKey; /** Associated Token Program */ associatedTokenProgram: web3.PublicKey; /** Rent */ rent: web3.PublicKey; } export declare const layout: any; /** * Context: This is user-facing. * Function: This marks the corresponding `StorageAccount` account as immutable, * and transfers all funds from `stake_account` to operator emissions wallet. */ export declare function makeAccountImmutable2(args: MakeAccountImmutable2Args, accounts: MakeAccountImmutable2Accounts): web3.TransactionInstruction; //# sourceMappingURL=makeAccountImmutable2.d.ts.map