preimageSafeMessageHash static method

List<int> preimageSafeMessageHash({
  1. required BigInt chainId,
  2. required ETHAddress safeAddress,
  3. required String message,
})

Implementation

static List<int> preimageSafeMessageHash({
  required BigInt chainId,
  required ETHAddress safeAddress,
  required String message,
}) {
  final typeData = Eip712TypedData(
    types: {
      "EIP712Domain": [
        Eip712TypeDetails(name: "chainId", type: "uint256"),
        Eip712TypeDetails(name: "verifyingContract", type: "address"),
      ],
      "SafeMessage": [Eip712TypeDetails(name: "message", type: "bytes")],
    },
    primaryType: "SafeMessage",
    domain: {
      "verifyingContract": safeAddress.address,
      "chainId": chainId.toString(),
    },
    message: {"message": message},
  );

  return typeData.encode(hash: false);
}