import { vi } from "vitest"; import { PeraProvider } from "../../transport/extension/peraProviderTypes"; export type PeraProviderStub = PeraProvider & { connect: ReturnType; disconnect: ReturnType; getAddresses: ReturnType; signTransactions: ReturnType; signData: ReturnType; on: ReturnType; /** Fire a wallet-initiated notification at every subscribed handler. */ emit: (event: string, params?: unknown) => void; }; export declare function makePeraProviderError(code: number, message?: string): Error & { code: number; }; /** * A `window.pera` double with the v1 shape. `connect()` resolves with one * testnet account by default; override per test with `mockResolvedValue`. */ export declare function makePeraProviderStub(accounts?: string[]): PeraProviderStub; /** Installs the stub at `window.pera`; call before `new PeraWalletConnect()`. */ export declare function installPeraProvider(accounts?: string[]): PeraProviderStub; export declare function uninstallPeraProvider(): void;