@bozhkovatanas/wallet-mock
Version:
Mock Web3 Browser wallets, like Metamask, in Playwright tests.
34 lines (33 loc) • 1.03 kB
TypeScript
import type { BrowserContext, Page } from "@playwright/test";
import { LocalAccount, Transport } from "viem";
import { Prettify } from "viem/chains";
type InstallMockWalletParams = {
account: LocalAccount;
transports: Map<number, Transport>;
};
type InstallMockWalletParamsWithBrowserContext = Prettify<InstallMockWalletParams & {
browserContext: BrowserContext;
}>;
type InstallMockWalletParamsWithPage = Prettify<InstallMockWalletParams & {
page: Page;
}>;
export declare function installMockWallet(params: InstallMockWalletParamsWithBrowserContext | InstallMockWalletParamsWithPage): Promise<void>;
interface EIP6963ProviderInfo {
uuid: string;
name: string;
icon: string;
rdns: string;
}
interface EIP1193Provider {
request: (request: {
method: string;
params?: Array<unknown>;
}) => Promise<unknown>;
on: () => void;
removeListener: () => void;
}
export interface EIP6963ProviderDetail {
info: EIP6963ProviderInfo;
provider: EIP1193Provider;
}
export {};