import { PublicKey } from '@solana/web3.js'; import type { Transaction, VersionedTransaction, Signer, Keypair } from '@solana/web3.js'; export interface Wallet { signTransaction(tx: T): Promise; signAllTransactions(txs: T[]): Promise; publicKey: PublicKey; } export declare class NullWallet implements Wallet { readonly publicKey: PublicKey; signTransaction(tx: T): Promise; signAllTransactions(txs: T[]): Promise; } export declare class PubkeyWallet implements Wallet { readonly publicKey: PublicKey; constructor(publicKey: PublicKey); signTransaction(tx: T): Promise; signAllTransactions(txs: T[]): Promise; } export declare class KeypairWallet implements Wallet { readonly keypair: Keypair; constructor(keypair: Keypair); get publicKey(): PublicKey; signTransaction(tx: T): Promise; signAllTransactions(txs: T[]): Promise; } export declare function instanceOfWallet(object: any): object is Wallet; export declare function isSigner(key: PublicKey | Signer | Keypair | Wallet | undefined): key is Signer | Keypair | Wallet; export declare function signer(key: PublicKey | Signer | Keypair | Wallet | undefined): Signer | Keypair | Wallet; export declare function pubkey(key: PublicKey | Signer | Keypair | Wallet | undefined): PublicKey; export declare function signerWithPubkey(key: PublicKey | Signer | Keypair | Wallet | undefined): [Signer | Keypair | Wallet, PublicKey]; //# sourceMappingURL=wallet.d.ts.map