import { Address, AddressesByLookupTableAddress, BaseTransactionMessage, Commitment, Instruction, KeyPairSigner, TransactionMessageWithBlockhashLifetime, TransactionMessageWithFeePayer, TransactionSigner } from "@solana/kit";
import { RpcClient } from "./types";
export declare const signAndSendTransaction: (rpcClient: RpcClient, transactionMessage: BaseTransactionMessage & TransactionMessageWithFeePayer & TransactionMessageWithBlockhashLifetime, commitment?: Commitment) => Promise<import("@solana/kit").Signature>;
export declare const createDefaultTransaction: (rpcClient: RpcClient, signer: TransactionSigner) => Promise<Omit<Omit<Omit<Readonly<{
    instructions: readonly Instruction<string, readonly (import("@solana/kit").AccountLookupMeta<string, string> | import("@solana/kit").AccountMeta<string>)[]>[];
    version: 0;
}>, "instructions"> & import("@solana/kit").TransactionMessageWithinSizeLimit & {
    instructions: readonly [];
}, "feePayer"> & import("@solana/kit").TransactionMessageWithFeePayerSigner<string, TransactionSigner<string>>, "lifetimeConstraint"> & TransactionMessageWithBlockhashLifetime>;
export declare function sendTransactionWithLookupTable(client: RpcClient, payer: KeyPairSigner, instructions: Instruction[], addressesByLookupTableAddress: AddressesByLookupTableAddress): Promise<import("@solana/kit").Signature>;
export declare function createLookupTable(client: RpcClient, authority: KeyPairSigner): Promise<Address>;
export declare function extendLookupTable(client: RpcClient, authority: KeyPairSigner, alt: Address, addresses: Address[]): Promise<AddressesByLookupTableAddress>;
