{
    "$schema": "./erc7730-v2.schema.json",

    "$comment": "This example ERC-7730 showcases usage of visibility rules.",

    "context": {
        "contract" : {
            "deployments": [ 
                {
                    "chainId": 1,
                    "address": "0x00112233445566778899AABBCCDDEEFF00112233"
                }
            ]
        }
    }, 

    "metadata": {
        "owner": "Example",
        "info": {
            "url": "https://example.io/"
        }
    },

    "display": {
        "formats": {
            "transfer(address to,uint256 value, address referrer, address rfu, uint256 legacy, uint256 fee)": {
                "intent": "Send",
                "interpolatedIntent": "Send {value} to {to}",
                "fields": [
                    {
                        "$id": "To is a critical field always displayed",
                        "path": "to",
                        "label": "To",
                        "format": "addressName",
                        "visible": "always"
                    },
                    {
                        "$id": "Value is a critical field always displayed",
                        "path": "value",
                        "label": "Amount",
                        "format": "tokenAmount",
                        "params": {
                            "tokenPath": "@.to"
                        },
                        "visible": "always"
                    },
                    {
                        "$id": "Referrer is an optional field displayed only if wallet finds it useful",
                        "path": "referrer",
                        "label": "Referrer",
                        "format": "addressName",
                        "visible": "optional"
                    },
                    {
                        "$id": "RFU is an unused field that should never be displayed",
                        "path": "rfu",
                        "label": "RFU Field",
                        "format": "addressName",
                        "visible": "never"
                    },
                    {
                        "$id": "Legacy is an unused field that must be zero or the Tx is malformed",
                        "path": "legacy",
                        "label": "Legacy Amount",
                        "format": "raw",
                        "visible": {
                            "mustBe": [0]
                        }
                    },
                    {
                        "$id": "Fee is an interesting field to display only if non-zero",
                        "path": "fee",
                        "label": "Fee Amount",
                        "format": "amount",
                        "visible": {
                            "ifNotIn": [0]
                        }
                    }
                ]
            }
        }
    }
}
