import { Connection, PublicKey, TransactionInstruction } from '@solana/web3.js';
export declare function printAddressLookupTable(connection: Connection, lookupTablePk: PublicKey): Promise<void>;
export declare function createLookupTableIx(connection: Connection, wallet: PublicKey): Promise<[TransactionInstruction, PublicKey]>;
export declare function extendLookupTableChunkIx(wallet: PublicKey, lookupTablePk: PublicKey, keys: PublicKey[], payer?: PublicKey): TransactionInstruction;
export declare const extendLookupTableIxs: (wallet: PublicKey, table: PublicKey, keys: PublicKey[], payer?: PublicKey) => TransactionInstruction[];
/**
 * This method retuns an instruction that creates a lookup table, alongside the pubkey of the lookup table
 * @param payer - the owner of the lookup table
 * @param slot - the current slot
 * @returns - the instruction to create the lookup table and its address
 */
export declare function initLookupTableIx(payer: PublicKey, slot: number): [TransactionInstruction, PublicKey];
/**
 * This method retuns an instruction that deactivates a lookup table, which is needed to close it
 * @param payer - the owner of the lookup table
 * @param lookupTable - the lookup table to deactivate
 * @returns - the instruction to deactivate the lookup table
 */
export declare function deactivateLookupTableIx(payer: PublicKey, lookupTable: PublicKey): TransactionInstruction;
/**
 * This method returns an instruction that closes a lookup table. That lookup table needs to be disabled at least 500 blocks before closing it.
 * @param payer - the owner of the lookup table
 * @param lookupTable - the lookup table to close
 * @returns - the instruction to close the lookup table
 */
export declare function closeLookupTableIx(payer: PublicKey, lookupTable: PublicKey): TransactionInstruction;
/**
 * Returns the accounts in a lookup table
 * @param lookupTable - lookup table to get the accounts from
 * @returns - an array of accounts in the lookup table
 */
export declare function getAccountsInLUT(connection: Connection, lookupTable: PublicKey): Promise<PublicKey[]>;
//# sourceMappingURL=lookupTable.d.ts.map