anchor/examples/basic/idl.json

179 lines
3.1 KiB
JSON

{
"version": "0.0.0",
"name": "example",
"instructions": [
{
"name": "create_root",
"accounts": [
{
"name": "authority",
"isMut": false,
"isSigner": true
},
{
"name": "root",
"isMut": true,
"isSigner": false
}
],
"args": [
{
"name": "authority",
"type": "publicKey"
},
{
"name": "data",
"type": "u64"
}
]
},
{
"name": "update_root",
"accounts": [
{
"name": "authority",
"isMut": false,
"isSigner": true
},
{
"name": "root",
"isMut": true,
"isSigner": false
}
],
"args": [
{
"name": "data",
"type": "u64"
}
]
},
{
"name": "create_leaf",
"accounts": [
{
"name": "root",
"isMut": false,
"isSigner": false
},
{
"name": "leaf",
"isMut": true,
"isSigner": false
}
],
"args": [
{
"name": "data",
"type": "u64"
},
{
"name": "custom",
"type": {
"defined": "MyCustomType"
}
}
]
},
{
"name": "update_leaf",
"accounts": [
{
"name": "authority",
"isMut": false,
"isSigner": true
},
{
"name": "root",
"isMut": false,
"isSigner": false
},
{
"name": "leaf",
"isMut": true,
"isSigner": false
}
],
"args": [
{
"name": "data",
"type": "u64"
},
{
"name": "custom",
"type": {
"option": {
"defined": "MyCustomType"
}
}
}
]
}
],
"accounts": [
{
"name": "Root",
"type": {
"kind": "struct",
"fields": [
{
"name": "initialized",
"type": "bool"
},
{
"name": "authority",
"type": "publicKey"
},
{
"name": "data",
"type": "u64"
}
]
}
},
{
"name": "Leaf",
"type": {
"kind": "struct",
"fields": [
{
"name": "initialized",
"type": "bool"
},
{
"name": "root",
"type": "publicKey"
},
{
"name": "data",
"type": "u64"
},
{
"name": "custom",
"type": {
"defined": "MyCustomType"
}
}
]
}
}
],
"types": [
{
"name": "MyCustomType",
"type": {
"kind": "struct",
"fields": [
{
"name": "my_data",
"type": "u64"
},
{
"name": "key",
"type": "publicKey"
}
]
}
}
]
}