import { LocalAccount } from 'viem/accounts';
import { Account } from 'viem/tempo';
import { SignatureOptions } from '@privy-io/api-types';
import { C as ConnectedWallet } from './types-D4oWUR5Y.js';

type PrivySignTransaction = LocalAccount['signTransaction'] & Account.Account_base['signTransaction'];
/**
 * Extends viem's LocalAccount with Tempo transaction signing support.
 * Structurally assignable to LocalAccount — existing consumers are unaffected.
 */
type PrivyViemAccount = Omit<LocalAccount, 'signTransaction'> & {
    signTransaction: PrivySignTransaction;
};
/**
 * Helper function to create a viem Account instance given a connected Ethereum wallet.
 *
 * @param wallet {ConnectedWallet} the connected Ethereum wallet to create an Account for
 * @param signatureOptions optional signature options for ERC-1271 signing
 * @returns the corresponding viem account for the wallet
 */
declare const toViemAccount: ({ wallet, signatureOptions, }: {
    wallet: ConnectedWallet;
    signatureOptions?: SignatureOptions;
}) => Promise<PrivyViemAccount>;

export { toViemAccount as t };
export type { PrivyViemAccount as P };
