import { MiniKit } from "@worldcoin/minikit-js";
import type {
CommandResultByVia,
MiniAppSignTypedDataSuccessPayload,
MiniKitSignTypedDataOptions,
} from "@worldcoin/minikit-js/commands";
export async function signTypedData() {
const input = {
primaryType: "Mail",
domain: {
name: "Example",
version: "1",
chainId: 480,
},
types: {
EIP712Domain: [
{ name: "name", type: "string" },
{ name: "version", type: "string" },
{ name: "chainId", type: "uint256" },
],
Mail: [
{ name: "contents", type: "string" },
],
},
message: {
contents: "Hello world",
},
} satisfies MiniKitSignTypedDataOptions;
const result: CommandResultByVia<MiniAppSignTypedDataSuccessPayload> =
await MiniKit.signTypedData(input);
console.log(result.data.signature);
}