UNPKG

@ambire/signature-validator

Version:

Signature validation library aiming to verify all different signature types for Ethereum and other EVM chains, including smart contract signatures (EIP 1271) and typed data (EIP 712)

21 lines (20 loc) 837 B
import type { TypedDataDomain, TypedDataField } from "@ethersproject/abstract-signer"; import { Provider } from "@ethersproject/providers"; import { PublicClient } from "viem"; type Props = { provider?: Provider | PublicClient; signer?: string; signature: string | Uint8Array; message?: string | Uint8Array; typedData?: { domain: TypedDataDomain; types: Record<string, Array<TypedDataField>>; message: Record<string, any>; }; finalDigest?: string; }; /** * NOTE: you only need to pass one of: typedData, finalDigest, message */ export declare function verifyMessage({ provider, signer, signature, message, typedData, finalDigest, }: (Required<Pick<Props, "message">> | Required<Pick<Props, "typedData">> | Required<Pick<Props, "finalDigest">>) & Props): Promise<boolean>; export {};