import { ethers, Wallet } from 'ethers'; import { type BundleGasConfigInput } from './config-helpers.js'; export type SignConfigInput = BundleGasConfigInput & { rpcUrl: string; chainId?: number; }; export type HopItem = { hopPrivateKeys?: string[]; hopCount?: number; }; export type SignContext = { chainIdNum: number; provider: ethers.JsonRpcProvider; mainWallet: Wallet; txType: 0 | 2; }; export declare function resolveChainName(chainIdNum: number): string; export declare function createSignProvider(rpcUrl: string, chainIdNum: number, chainName?: string): ethers.JsonRpcProvider; export declare function createSignWallet(fromPrivateKey: string, provider: ethers.JsonRpcProvider): Wallet; export declare function resolveSignContext(config: SignConfigInput, fromPrivateKey: string): SignContext; export declare function normalizeItemsOrRecipientsAmounts(recipients: string[], items: Array<{ amount: string | number | bigint; }> | undefined, amount: string | number | bigint | undefined, amounts: Array | undefined, normalize: (recipients: string[], amount?: string | number | bigint, amounts?: Array) => string[]): string[]; export declare function resolveProvidedHops(recipientCount: number, hopPrivateKeys?: string[][], items?: HopItem[]): string[][] | null; export declare function resolveHopCountInput(recipientCount: number, hopCount: number | number[], items?: HopItem[]): number | number[]; export declare function signBribeTransaction(wallet: Wallet, bribeAmount: bigint, nonce: number, gasPrice: bigint, chainIdNum: number, txType: 0 | 2): Promise;