import { Transaction } from '../types';
declare global {
    interface Window {
        ethereum?: {
            request: (args: {
                method: string;
                params?: any[];
            }) => Promise<any>;
            on: (event: string, handler: (...args: any[]) => void) => void;
            removeListener: (event: string, handler: (...args: any[]) => void) => void;
        };
    }
}
/**
 * Set up the transaction queue and broadcast channel
 */
export declare function setupTransactionQueue(): void;
/**
 * Send a transaction through the queue
 * @param txParams Transaction parameters
 * @returns Promise resolving to the transaction hash
 */
export declare function sendTransaction(txParams: Omit<Transaction, 'id' | 'status' | 'createdAt' | 'updatedAt'>): Promise<string>;
