@arcium-hq/client 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.d.ts CHANGED
@@ -316,10 +316,10 @@ declare class Aes256Cipher {
316
316
  * IDL can be found at `target/idl/arcium.json`.
317
317
  */
318
318
  type Arcium = {
319
- "address": "BKck65TgoKRokMjQM3datB9oRwJ8rAj2jxPXvHXUvcL6";
319
+ "address": "Bv3Fb9VjzjWGfX18QTUcVycAfeLoQ5zZN6vv2g3cTZxp";
320
320
  "metadata": {
321
321
  "name": "arcium";
322
- "version": "0.2.0";
322
+ "version": "0.4.0";
323
323
  "spec": "0.1.0";
324
324
  "description": "The Arcium program";
325
325
  };
@@ -637,7 +637,7 @@ type Arcium = {
637
637
  },
638
638
  {
639
639
  "kind": "account";
640
- "path": "mxe.cluster.ok_or(MXEError :: ClusterNotSet) ? ";
640
+ "path": "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? ";
641
641
  "account": "mxeAccount";
642
642
  }
643
643
  ];
@@ -812,20 +812,24 @@ type Arcium = {
812
812
  "name": "executionStatus";
813
813
  };
814
814
  };
815
+ },
816
+ {
817
+ "name": "callbackTransactionIndex";
818
+ "type": "u8";
815
819
  }
816
820
  ];
817
821
  },
818
822
  {
819
- "name": "deactivateArx";
823
+ "name": "claimFailureAppend";
820
824
  "discriminator": [
821
- 117,
822
- 244,
823
- 137,
824
- 148,
825
- 25,
826
- 190,
827
- 175,
828
- 164
825
+ 92,
826
+ 52,
827
+ 184,
828
+ 203,
829
+ 76,
830
+ 221,
831
+ 128,
832
+ 69
829
833
  ];
830
834
  "accounts": [
831
835
  {
@@ -834,181 +838,233 @@ type Arcium = {
834
838
  "signer": true;
835
839
  },
836
840
  {
837
- "name": "arxNodeAcc";
841
+ "name": "failureAcc";
838
842
  "writable": true;
839
843
  "pda": {
840
844
  "seeds": [
841
845
  {
842
846
  "kind": "const";
843
847
  "value": [
844
- 65,
848
+ 70,
849
+ 97,
850
+ 105,
851
+ 108,
852
+ 117,
845
853
  114,
846
- 120,
847
- 78,
848
- 111,
849
- 100,
850
- 101
851
- ];
852
- },
853
- {
854
- "kind": "arg";
855
- "path": "nodeOffset";
856
- }
857
- ];
858
- };
859
- },
860
- {
861
- "name": "clock";
862
- "pda": {
863
- "seeds": [
864
- {
865
- "kind": "const";
866
- "value": [
854
+ 101,
867
855
  67,
868
856
  108,
869
- 111,
870
- 99,
871
- 107,
857
+ 97,
858
+ 105,
859
+ 109,
872
860
  65,
873
861
  99,
874
862
  99,
875
863
  111,
876
864
  117,
877
865
  110,
878
- 116
879
- ];
880
- }
881
- ];
882
- };
883
- },
884
- {
885
- "name": "clusterAcc0";
886
- "optional": true;
887
- "pda": {
888
- "seeds": [
889
- {
890
- "kind": "const";
891
- "value": [
892
- 67,
893
- 108,
894
- 117,
895
- 115,
896
866
  116,
867
+ 72,
868
+ 101,
869
+ 97,
870
+ 100,
897
871
  101,
898
872
  114
899
873
  ];
900
874
  },
901
875
  {
902
- "kind": "account";
903
- "path": "arx_node_acc.cluster_memberships";
904
- "account": "arxNode";
876
+ "kind": "arg";
877
+ "path": "mxeProgram";
878
+ },
879
+ {
880
+ "kind": "arg";
881
+ "path": "compOffset";
905
882
  }
906
883
  ];
907
884
  };
908
885
  },
909
886
  {
910
- "name": "clusterAcc1";
911
- "optional": true;
887
+ "name": "systemProgram";
888
+ "address": "11111111111111111111111111111111";
889
+ }
890
+ ];
891
+ "args": [
892
+ {
893
+ "name": "compOffset";
894
+ "type": "u64";
895
+ },
896
+ {
897
+ "name": "nodeOffset";
898
+ "type": "u32";
899
+ },
900
+ {
901
+ "name": "mxeProgram";
902
+ "type": "pubkey";
903
+ },
904
+ {
905
+ "name": "chunk";
906
+ "type": "bytes";
907
+ },
908
+ {
909
+ "name": "failureClaimOffset";
910
+ "type": "u32";
911
+ }
912
+ ];
913
+ },
914
+ {
915
+ "name": "claimFailureFinalize";
916
+ "discriminator": [
917
+ 192,
918
+ 133,
919
+ 215,
920
+ 19,
921
+ 76,
922
+ 107,
923
+ 111,
924
+ 217
925
+ ];
926
+ "accounts": [
927
+ {
928
+ "name": "signer";
929
+ "signer": true;
930
+ },
931
+ {
932
+ "name": "failureAcc";
933
+ "writable": true;
912
934
  "pda": {
913
935
  "seeds": [
914
936
  {
915
937
  "kind": "const";
916
938
  "value": [
939
+ 70,
940
+ 97,
941
+ 105,
942
+ 108,
943
+ 117,
944
+ 114,
945
+ 101,
917
946
  67,
918
947
  108,
948
+ 97,
949
+ 105,
950
+ 109,
951
+ 65,
952
+ 99,
953
+ 99,
954
+ 111,
919
955
  117,
920
- 115,
956
+ 110,
921
957
  116,
958
+ 72,
959
+ 101,
960
+ 97,
961
+ 100,
922
962
  101,
923
963
  114
924
964
  ];
925
965
  },
926
966
  {
927
- "kind": "account";
928
- "path": "arx_node_acc.cluster_memberships.get(1).ok_or(NodeError ::\nInvalidClusterMembership) ? ";
929
- "account": "arxNode";
967
+ "kind": "arg";
968
+ "path": "mxeProgram";
969
+ },
970
+ {
971
+ "kind": "arg";
972
+ "path": "compOffset";
930
973
  }
931
974
  ];
932
975
  };
933
976
  },
934
977
  {
935
- "name": "clusterAcc2";
936
- "optional": true;
978
+ "name": "executingPool";
979
+ "writable": true;
937
980
  "pda": {
938
981
  "seeds": [
939
982
  {
940
983
  "kind": "const";
941
984
  "value": [
942
- 67,
943
- 108,
944
- 117,
945
- 115,
946
- 116,
985
+ 69,
986
+ 120,
947
987
  101,
948
- 114
988
+ 99,
989
+ 112,
990
+ 111,
991
+ 111,
992
+ 108
949
993
  ];
950
994
  },
951
995
  {
952
- "kind": "account";
953
- "path": "arx_node_acc.cluster_memberships.get(2).ok_or(NodeError ::\nInvalidClusterMembership) ? ";
954
- "account": "arxNode";
996
+ "kind": "arg";
997
+ "path": "mxeProgram";
955
998
  }
956
999
  ];
957
1000
  };
958
1001
  },
959
1002
  {
960
- "name": "clusterAcc3";
961
- "optional": true;
1003
+ "name": "mempool";
1004
+ "writable": true;
962
1005
  "pda": {
963
1006
  "seeds": [
964
1007
  {
965
1008
  "kind": "const";
966
1009
  "value": [
967
- 67,
968
- 108,
969
- 117,
970
- 115,
971
- 116,
1010
+ 77,
972
1011
  101,
973
- 114
1012
+ 109,
1013
+ 112,
1014
+ 111,
1015
+ 111,
1016
+ 108
974
1017
  ];
975
1018
  },
976
1019
  {
977
- "kind": "account";
978
- "path": "arx_node_acc.cluster_memberships.get(3).ok_or(NodeError ::\nInvalidClusterMembership) ? ";
979
- "account": "arxNode";
1020
+ "kind": "arg";
1021
+ "path": "mxeProgram";
980
1022
  }
981
1023
  ];
982
1024
  };
983
1025
  },
984
1026
  {
985
- "name": "clusterAcc4";
986
- "optional": true;
1027
+ "name": "comp";
1028
+ "writable": true;
987
1029
  "pda": {
988
1030
  "seeds": [
989
1031
  {
990
1032
  "kind": "const";
991
1033
  "value": [
992
1034
  67,
993
- 108,
1035
+ 111,
1036
+ 109,
1037
+ 112,
994
1038
  117,
995
- 115,
996
1039
  116,
997
- 101,
998
- 114
1040
+ 97,
1041
+ 116,
1042
+ 105,
1043
+ 111,
1044
+ 110,
1045
+ 65,
1046
+ 99,
1047
+ 99,
1048
+ 111,
1049
+ 117,
1050
+ 110,
1051
+ 116
999
1052
  ];
1000
1053
  },
1001
1054
  {
1002
- "kind": "account";
1003
- "path": "arx_node_acc.cluster_memberships.get(4).ok_or(NodeError ::\nInvalidClusterMembership) ? ";
1004
- "account": "arxNode";
1055
+ "kind": "arg";
1056
+ "path": "mxeProgram";
1057
+ },
1058
+ {
1059
+ "kind": "arg";
1060
+ "path": "compOffset";
1005
1061
  }
1006
1062
  ];
1007
1063
  };
1008
1064
  },
1009
1065
  {
1010
- "name": "clusterAcc5";
1011
- "optional": true;
1066
+ "name": "clusterAcc";
1067
+ "writable": true;
1012
1068
  "pda": {
1013
1069
  "seeds": [
1014
1070
  {
@@ -1025,137 +1081,120 @@ type Arcium = {
1025
1081
  },
1026
1082
  {
1027
1083
  "kind": "account";
1028
- "path": "arx_node_acc.cluster_memberships.get(5).ok_or(NodeError ::\nInvalidClusterMembership) ? ";
1029
- "account": "arxNode";
1084
+ "path": "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? ";
1085
+ "account": "mxeAccount";
1030
1086
  }
1031
1087
  ];
1032
1088
  };
1033
1089
  },
1034
1090
  {
1035
- "name": "clusterAcc6";
1036
- "optional": true;
1091
+ "name": "mxe";
1037
1092
  "pda": {
1038
1093
  "seeds": [
1039
1094
  {
1040
1095
  "kind": "const";
1041
1096
  "value": [
1042
- 67,
1043
- 108,
1097
+ 77,
1098
+ 88,
1099
+ 69,
1100
+ 65,
1101
+ 99,
1102
+ 99,
1103
+ 111,
1044
1104
  117,
1045
- 115,
1046
- 116,
1047
- 101,
1048
- 114
1105
+ 110,
1106
+ 116
1049
1107
  ];
1050
1108
  },
1051
1109
  {
1052
- "kind": "account";
1053
- "path": "arx_node_acc.cluster_memberships.get(6).ok_or(NodeError ::\nInvalidClusterMembership) ? ";
1054
- "account": "arxNode";
1110
+ "kind": "arg";
1111
+ "path": "mxeProgram";
1055
1112
  }
1056
1113
  ];
1057
1114
  };
1058
- },
1115
+ }
1116
+ ];
1117
+ "args": [
1059
1118
  {
1060
- "name": "clusterAcc7";
1061
- "optional": true;
1062
- "pda": {
1063
- "seeds": [
1064
- {
1065
- "kind": "const";
1066
- "value": [
1067
- 67,
1068
- 108,
1069
- 117,
1070
- 115,
1071
- 116,
1072
- 101,
1073
- 114
1074
- ];
1075
- },
1076
- {
1077
- "kind": "account";
1078
- "path": "arx_node_acc.cluster_memberships.get(7).ok_or(NodeError ::\nInvalidClusterMembership) ? ";
1079
- "account": "arxNode";
1080
- }
1081
- ];
1082
- };
1119
+ "name": "compOffset";
1120
+ "type": "u64";
1083
1121
  },
1084
1122
  {
1085
- "name": "clusterAcc8";
1086
- "optional": true;
1123
+ "name": "nodeOffset";
1124
+ "type": "u32";
1125
+ },
1126
+ {
1127
+ "name": "mxeProgram";
1128
+ "type": "pubkey";
1129
+ }
1130
+ ];
1131
+ },
1132
+ {
1133
+ "name": "claimFailureInit";
1134
+ "discriminator": [
1135
+ 204,
1136
+ 106,
1137
+ 245,
1138
+ 73,
1139
+ 212,
1140
+ 136,
1141
+ 61,
1142
+ 99
1143
+ ];
1144
+ "accounts": [
1145
+ {
1146
+ "name": "signer";
1147
+ "writable": true;
1148
+ "signer": true;
1149
+ },
1150
+ {
1151
+ "name": "nodeAcc";
1087
1152
  "pda": {
1088
1153
  "seeds": [
1089
1154
  {
1090
1155
  "kind": "const";
1091
1156
  "value": [
1092
- 67,
1093
- 108,
1094
- 117,
1095
- 115,
1096
- 116,
1097
- 101,
1098
- 114
1157
+ 65,
1158
+ 114,
1159
+ 120,
1160
+ 78,
1161
+ 111,
1162
+ 100,
1163
+ 101
1099
1164
  ];
1100
1165
  },
1101
1166
  {
1102
- "kind": "account";
1103
- "path": "arx_node_acc.cluster_memberships.get(8).ok_or(NodeError ::\nInvalidClusterMembership) ? ";
1104
- "account": "arxNode";
1167
+ "kind": "arg";
1168
+ "path": "nodeOffset";
1105
1169
  }
1106
1170
  ];
1107
1171
  };
1108
1172
  },
1109
1173
  {
1110
- "name": "clusterAcc9";
1111
- "optional": true;
1174
+ "name": "mxe";
1112
1175
  "pda": {
1113
1176
  "seeds": [
1114
1177
  {
1115
1178
  "kind": "const";
1116
1179
  "value": [
1117
- 67,
1118
- 108,
1180
+ 77,
1181
+ 88,
1182
+ 69,
1183
+ 65,
1184
+ 99,
1185
+ 99,
1186
+ 111,
1119
1187
  117,
1120
- 115,
1121
- 116,
1122
- 101,
1123
- 114
1188
+ 110,
1189
+ 116
1124
1190
  ];
1125
1191
  },
1126
1192
  {
1127
- "kind": "account";
1128
- "path": "arx_node_acc.cluster_memberships.get(9).ok_or(NodeError ::\nInvalidClusterMembership) ? ";
1129
- "account": "arxNode";
1193
+ "kind": "arg";
1194
+ "path": "mxeProgram";
1130
1195
  }
1131
1196
  ];
1132
1197
  };
1133
- }
1134
- ];
1135
- "args": [
1136
- {
1137
- "name": "nodeOffset";
1138
- "type": "u32";
1139
- }
1140
- ];
1141
- },
1142
- {
1143
- "name": "deactivateCluster";
1144
- "discriminator": [
1145
- 13,
1146
- 42,
1147
- 182,
1148
- 159,
1149
- 184,
1150
- 10,
1151
- 212,
1152
- 178
1153
- ];
1154
- "accounts": [
1155
- {
1156
- "name": "authority";
1157
- "writable": true;
1158
- "signer": true;
1159
1198
  },
1160
1199
  {
1161
1200
  "name": "clusterAcc";
@@ -1175,24 +1214,31 @@ type Arcium = {
1175
1214
  ];
1176
1215
  },
1177
1216
  {
1178
- "kind": "arg";
1179
- "path": "id";
1217
+ "kind": "account";
1218
+ "path": "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? ";
1219
+ "account": "mxeAccount";
1180
1220
  }
1181
1221
  ];
1182
1222
  };
1183
1223
  },
1184
1224
  {
1185
- "name": "clock";
1225
+ "name": "compAcc";
1186
1226
  "pda": {
1187
1227
  "seeds": [
1188
1228
  {
1189
1229
  "kind": "const";
1190
1230
  "value": [
1191
1231
  67,
1192
- 108,
1193
1232
  111,
1194
- 99,
1195
- 107,
1233
+ 109,
1234
+ 112,
1235
+ 117,
1236
+ 116,
1237
+ 97,
1238
+ 116,
1239
+ 105,
1240
+ 111,
1241
+ 110,
1196
1242
  65,
1197
1243
  99,
1198
1244
  99,
@@ -1201,92 +1247,18 @@ type Arcium = {
1201
1247
  110,
1202
1248
  116
1203
1249
  ];
1250
+ },
1251
+ {
1252
+ "kind": "arg";
1253
+ "path": "mxeProgram";
1254
+ },
1255
+ {
1256
+ "kind": "arg";
1257
+ "path": "compOffset";
1204
1258
  }
1205
1259
  ];
1206
1260
  };
1207
1261
  },
1208
- {
1209
- "name": "systemProgram";
1210
- "address": "11111111111111111111111111111111";
1211
- }
1212
- ];
1213
- "args": [
1214
- {
1215
- "name": "clusterId";
1216
- "type": "u32";
1217
- },
1218
- {
1219
- "name": "deactivationEpoch";
1220
- "type": {
1221
- "defined": {
1222
- "name": "epoch";
1223
- };
1224
- };
1225
- }
1226
- ];
1227
- },
1228
- {
1229
- "name": "dummyInstruction";
1230
- "docs": [
1231
- "Only present so the mempool and execpool accounts are actually included in the idl, since we",
1232
- "don't explicitly declare them in the accounts section of the other instructions."
1233
- ];
1234
- "discriminator": [
1235
- 57,
1236
- 4,
1237
- 200,
1238
- 151,
1239
- 58,
1240
- 19,
1241
- 120,
1242
- 9
1243
- ];
1244
- "accounts": [
1245
- {
1246
- "name": "tinyMempool";
1247
- },
1248
- {
1249
- "name": "tinyExecpool";
1250
- },
1251
- {
1252
- "name": "smallMempool";
1253
- },
1254
- {
1255
- "name": "smallExecpool";
1256
- },
1257
- {
1258
- "name": "mediumMempool";
1259
- },
1260
- {
1261
- "name": "mediumExecpool";
1262
- },
1263
- {
1264
- "name": "largeMempool";
1265
- },
1266
- {
1267
- "name": "largeExecpool";
1268
- }
1269
- ];
1270
- "args": [];
1271
- },
1272
- {
1273
- "name": "embiggenRawCircuitAcc";
1274
- "discriminator": [
1275
- 92,
1276
- 195,
1277
- 192,
1278
- 21,
1279
- 193,
1280
- 242,
1281
- 135,
1282
- 194
1283
- ];
1284
- "accounts": [
1285
- {
1286
- "name": "signer";
1287
- "writable": true;
1288
- "signer": true;
1289
- },
1290
1262
  {
1291
1263
  "name": "compDefAcc";
1292
1264
  "pda": {
@@ -1329,53 +1301,55 @@ type Arcium = {
1329
1301
  "path": "mxeProgram";
1330
1302
  },
1331
1303
  {
1332
- "kind": "arg";
1333
- "path": "compOffset";
1304
+ "kind": "account";
1305
+ "path": "comp_acc.computation_definition_offset";
1306
+ "account": "computationAccount";
1334
1307
  }
1335
1308
  ];
1336
1309
  };
1337
1310
  },
1338
1311
  {
1339
- "name": "compDefRaw";
1312
+ "name": "failureAcc";
1340
1313
  "writable": true;
1341
1314
  "pda": {
1342
1315
  "seeds": [
1343
1316
  {
1344
1317
  "kind": "const";
1345
1318
  "value": [
1346
- 67,
1347
- 111,
1348
- 109,
1349
- 112,
1350
- 117,
1351
- 116,
1319
+ 70,
1352
1320
  97,
1353
- 116,
1354
1321
  105,
1355
- 111,
1356
- 110,
1357
- 68,
1322
+ 108,
1323
+ 117,
1324
+ 114,
1358
1325
  101,
1359
- 102,
1360
- 105,
1361
- 110,
1362
- 105,
1363
- 116,
1326
+ 67,
1327
+ 108,
1328
+ 97,
1364
1329
  105,
1330
+ 109,
1331
+ 65,
1332
+ 99,
1333
+ 99,
1365
1334
  111,
1335
+ 117,
1366
1336
  110,
1367
- 82,
1337
+ 116,
1338
+ 72,
1339
+ 101,
1368
1340
  97,
1369
- 119
1341
+ 100,
1342
+ 101,
1343
+ 114
1370
1344
  ];
1371
1345
  },
1372
1346
  {
1373
- "kind": "account";
1374
- "path": "compDefAcc";
1347
+ "kind": "arg";
1348
+ "path": "mxeProgram";
1375
1349
  },
1376
1350
  {
1377
1351
  "kind": "arg";
1378
- "path": "rawCircuitIndex";
1352
+ "path": "compOffset";
1379
1353
  }
1380
1354
  ];
1381
1355
  };
@@ -1388,29 +1362,29 @@ type Arcium = {
1388
1362
  "args": [
1389
1363
  {
1390
1364
  "name": "compOffset";
1365
+ "type": "u64";
1366
+ },
1367
+ {
1368
+ "name": "nodeOffset";
1391
1369
  "type": "u32";
1392
1370
  },
1393
1371
  {
1394
1372
  "name": "mxeProgram";
1395
1373
  "type": "pubkey";
1396
- },
1397
- {
1398
- "name": "rawCircuitIndex";
1399
- "type": "u8";
1400
1374
  }
1401
1375
  ];
1402
1376
  },
1403
1377
  {
1404
- "name": "finalizeComputation";
1378
+ "name": "deactivateArx";
1405
1379
  "discriminator": [
1406
- 43,
1407
- 29,
1408
- 152,
1409
- 92,
1410
- 241,
1411
- 179,
1412
- 193,
1413
- 210
1380
+ 117,
1381
+ 244,
1382
+ 137,
1383
+ 148,
1384
+ 25,
1385
+ 190,
1386
+ 175,
1387
+ 164
1414
1388
  ];
1415
1389
  "accounts": [
1416
1390
  {
@@ -1419,24 +1393,41 @@ type Arcium = {
1419
1393
  "signer": true;
1420
1394
  },
1421
1395
  {
1422
- "name": "comp";
1396
+ "name": "arxNodeAcc";
1423
1397
  "writable": true;
1424
1398
  "pda": {
1425
1399
  "seeds": [
1426
1400
  {
1427
1401
  "kind": "const";
1428
1402
  "value": [
1429
- 67,
1403
+ 65,
1404
+ 114,
1405
+ 120,
1406
+ 78,
1430
1407
  111,
1431
- 109,
1432
- 112,
1433
- 117,
1434
- 116,
1435
- 97,
1436
- 116,
1437
- 105,
1408
+ 100,
1409
+ 101
1410
+ ];
1411
+ },
1412
+ {
1413
+ "kind": "arg";
1414
+ "path": "nodeOffset";
1415
+ }
1416
+ ];
1417
+ };
1418
+ },
1419
+ {
1420
+ "name": "clock";
1421
+ "pda": {
1422
+ "seeds": [
1423
+ {
1424
+ "kind": "const";
1425
+ "value": [
1426
+ 67,
1427
+ 108,
1438
1428
  111,
1439
- 110,
1429
+ 99,
1430
+ 107,
1440
1431
  65,
1441
1432
  99,
1442
1433
  99,
@@ -1445,47 +1436,238 @@ type Arcium = {
1445
1436
  110,
1446
1437
  116
1447
1438
  ];
1439
+ }
1440
+ ];
1441
+ };
1442
+ },
1443
+ {
1444
+ "name": "clusterAcc0";
1445
+ "optional": true;
1446
+ "pda": {
1447
+ "seeds": [
1448
+ {
1449
+ "kind": "const";
1450
+ "value": [
1451
+ 67,
1452
+ 108,
1453
+ 117,
1454
+ 115,
1455
+ 116,
1456
+ 101,
1457
+ 114
1458
+ ];
1459
+ },
1460
+ {
1461
+ "kind": "account";
1462
+ "path": "arx_node_acc.cluster_memberships";
1463
+ "account": "arxNode";
1464
+ }
1465
+ ];
1466
+ };
1467
+ },
1468
+ {
1469
+ "name": "clusterAcc1";
1470
+ "optional": true;
1471
+ "pda": {
1472
+ "seeds": [
1473
+ {
1474
+ "kind": "const";
1475
+ "value": [
1476
+ 67,
1477
+ 108,
1478
+ 117,
1479
+ 115,
1480
+ 116,
1481
+ 101,
1482
+ 114
1483
+ ];
1484
+ },
1485
+ {
1486
+ "kind": "account";
1487
+ "path": "arx_node_acc.cluster_memberships.get(1).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1488
+ "account": "arxNode";
1489
+ }
1490
+ ];
1491
+ };
1492
+ },
1493
+ {
1494
+ "name": "clusterAcc2";
1495
+ "optional": true;
1496
+ "pda": {
1497
+ "seeds": [
1498
+ {
1499
+ "kind": "const";
1500
+ "value": [
1501
+ 67,
1502
+ 108,
1503
+ 117,
1504
+ 115,
1505
+ 116,
1506
+ 101,
1507
+ 114
1508
+ ];
1509
+ },
1510
+ {
1511
+ "kind": "account";
1512
+ "path": "arx_node_acc.cluster_memberships.get(2).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1513
+ "account": "arxNode";
1514
+ }
1515
+ ];
1516
+ };
1517
+ },
1518
+ {
1519
+ "name": "clusterAcc3";
1520
+ "optional": true;
1521
+ "pda": {
1522
+ "seeds": [
1523
+ {
1524
+ "kind": "const";
1525
+ "value": [
1526
+ 67,
1527
+ 108,
1528
+ 117,
1529
+ 115,
1530
+ 116,
1531
+ 101,
1532
+ 114
1533
+ ];
1534
+ },
1535
+ {
1536
+ "kind": "account";
1537
+ "path": "arx_node_acc.cluster_memberships.get(3).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1538
+ "account": "arxNode";
1539
+ }
1540
+ ];
1541
+ };
1542
+ },
1543
+ {
1544
+ "name": "clusterAcc4";
1545
+ "optional": true;
1546
+ "pda": {
1547
+ "seeds": [
1548
+ {
1549
+ "kind": "const";
1550
+ "value": [
1551
+ 67,
1552
+ 108,
1553
+ 117,
1554
+ 115,
1555
+ 116,
1556
+ 101,
1557
+ 114
1558
+ ];
1559
+ },
1560
+ {
1561
+ "kind": "account";
1562
+ "path": "arx_node_acc.cluster_memberships.get(4).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1563
+ "account": "arxNode";
1564
+ }
1565
+ ];
1566
+ };
1567
+ },
1568
+ {
1569
+ "name": "clusterAcc5";
1570
+ "optional": true;
1571
+ "pda": {
1572
+ "seeds": [
1573
+ {
1574
+ "kind": "const";
1575
+ "value": [
1576
+ 67,
1577
+ 108,
1578
+ 117,
1579
+ 115,
1580
+ 116,
1581
+ 101,
1582
+ 114
1583
+ ];
1584
+ },
1585
+ {
1586
+ "kind": "account";
1587
+ "path": "arx_node_acc.cluster_memberships.get(5).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1588
+ "account": "arxNode";
1589
+ }
1590
+ ];
1591
+ };
1592
+ },
1593
+ {
1594
+ "name": "clusterAcc6";
1595
+ "optional": true;
1596
+ "pda": {
1597
+ "seeds": [
1598
+ {
1599
+ "kind": "const";
1600
+ "value": [
1601
+ 67,
1602
+ 108,
1603
+ 117,
1604
+ 115,
1605
+ 116,
1606
+ 101,
1607
+ 114
1608
+ ];
1609
+ },
1610
+ {
1611
+ "kind": "account";
1612
+ "path": "arx_node_acc.cluster_memberships.get(6).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1613
+ "account": "arxNode";
1614
+ }
1615
+ ];
1616
+ };
1617
+ },
1618
+ {
1619
+ "name": "clusterAcc7";
1620
+ "optional": true;
1621
+ "pda": {
1622
+ "seeds": [
1623
+ {
1624
+ "kind": "const";
1625
+ "value": [
1626
+ 67,
1627
+ 108,
1628
+ 117,
1629
+ 115,
1630
+ 116,
1631
+ 101,
1632
+ 114
1633
+ ];
1448
1634
  },
1449
1635
  {
1450
- "kind": "arg";
1451
- "path": "mxeProgram";
1452
- },
1453
- {
1454
- "kind": "arg";
1455
- "path": "compOffset";
1636
+ "kind": "account";
1637
+ "path": "arx_node_acc.cluster_memberships.get(7).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1638
+ "account": "arxNode";
1456
1639
  }
1457
1640
  ];
1458
1641
  };
1459
1642
  },
1460
1643
  {
1461
- "name": "mxe";
1644
+ "name": "clusterAcc8";
1645
+ "optional": true;
1462
1646
  "pda": {
1463
1647
  "seeds": [
1464
1648
  {
1465
1649
  "kind": "const";
1466
1650
  "value": [
1467
- 77,
1468
- 88,
1469
- 69,
1470
- 65,
1471
- 99,
1472
- 99,
1473
- 111,
1651
+ 67,
1652
+ 108,
1474
1653
  117,
1475
- 110,
1476
- 116
1654
+ 115,
1655
+ 116,
1656
+ 101,
1657
+ 114
1477
1658
  ];
1478
1659
  },
1479
1660
  {
1480
- "kind": "arg";
1481
- "path": "mxeProgram";
1661
+ "kind": "account";
1662
+ "path": "arx_node_acc.cluster_memberships.get(8).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1663
+ "account": "arxNode";
1482
1664
  }
1483
1665
  ];
1484
1666
  };
1485
1667
  },
1486
1668
  {
1487
- "name": "clusterAcc";
1488
- "writable": true;
1669
+ "name": "clusterAcc9";
1670
+ "optional": true;
1489
1671
  "pda": {
1490
1672
  "seeds": [
1491
1673
  {
@@ -1502,61 +1684,168 @@ type Arcium = {
1502
1684
  },
1503
1685
  {
1504
1686
  "kind": "account";
1505
- "path": "mxe.cluster.ok_or(MXEError :: ClusterNotSet) ? ";
1506
- "account": "mxeAccount";
1687
+ "path": "arx_node_acc.cluster_memberships.get(9).ok_or(ArciumError ::\nInvalidClusterMembership) ? ";
1688
+ "account": "arxNode";
1507
1689
  }
1508
1690
  ];
1509
1691
  };
1692
+ }
1693
+ ];
1694
+ "args": [
1695
+ {
1696
+ "name": "nodeOffset";
1697
+ "type": "u32";
1698
+ }
1699
+ ];
1700
+ },
1701
+ {
1702
+ "name": "deactivateCluster";
1703
+ "discriminator": [
1704
+ 13,
1705
+ 42,
1706
+ 182,
1707
+ 159,
1708
+ 184,
1709
+ 10,
1710
+ 212,
1711
+ 178
1712
+ ];
1713
+ "accounts": [
1714
+ {
1715
+ "name": "authority";
1716
+ "writable": true;
1717
+ "signer": true;
1510
1718
  },
1511
1719
  {
1512
- "name": "executingPool";
1720
+ "name": "clusterAcc";
1513
1721
  "writable": true;
1514
1722
  "pda": {
1515
1723
  "seeds": [
1516
1724
  {
1517
1725
  "kind": "const";
1518
1726
  "value": [
1519
- 69,
1520
- 120,
1727
+ 67,
1728
+ 108,
1729
+ 117,
1730
+ 115,
1731
+ 116,
1521
1732
  101,
1522
- 99,
1523
- 112,
1524
- 111,
1525
- 111,
1526
- 108
1733
+ 114
1527
1734
  ];
1528
1735
  },
1529
1736
  {
1530
1737
  "kind": "arg";
1531
- "path": "mxeProgram";
1738
+ "path": "id";
1532
1739
  }
1533
1740
  ];
1534
1741
  };
1535
1742
  },
1536
1743
  {
1537
- "name": "mempool";
1538
- "writable": true;
1744
+ "name": "clock";
1539
1745
  "pda": {
1540
1746
  "seeds": [
1541
1747
  {
1542
1748
  "kind": "const";
1543
1749
  "value": [
1544
- 77,
1545
- 101,
1546
- 109,
1547
- 112,
1750
+ 67,
1751
+ 108,
1548
1752
  111,
1753
+ 99,
1754
+ 107,
1755
+ 65,
1756
+ 99,
1757
+ 99,
1549
1758
  111,
1550
- 108
1759
+ 117,
1760
+ 110,
1761
+ 116
1551
1762
  ];
1552
- },
1553
- {
1554
- "kind": "arg";
1555
- "path": "mxeProgram";
1556
1763
  }
1557
1764
  ];
1558
1765
  };
1559
1766
  },
1767
+ {
1768
+ "name": "systemProgram";
1769
+ "address": "11111111111111111111111111111111";
1770
+ }
1771
+ ];
1772
+ "args": [
1773
+ {
1774
+ "name": "clusterId";
1775
+ "type": "u32";
1776
+ },
1777
+ {
1778
+ "name": "deactivationEpoch";
1779
+ "type": {
1780
+ "defined": {
1781
+ "name": "epoch";
1782
+ };
1783
+ };
1784
+ }
1785
+ ];
1786
+ },
1787
+ {
1788
+ "name": "dummyInstruction";
1789
+ "docs": [
1790
+ "Only present so the mempool and execpool accounts are actually included in the idl, since we",
1791
+ "don't explicitly declare them in the accounts section of the other instructions."
1792
+ ];
1793
+ "discriminator": [
1794
+ 57,
1795
+ 4,
1796
+ 200,
1797
+ 151,
1798
+ 58,
1799
+ 19,
1800
+ 120,
1801
+ 9
1802
+ ];
1803
+ "accounts": [
1804
+ {
1805
+ "name": "tinyMempool";
1806
+ },
1807
+ {
1808
+ "name": "tinyExecpool";
1809
+ },
1810
+ {
1811
+ "name": "smallMempool";
1812
+ },
1813
+ {
1814
+ "name": "smallExecpool";
1815
+ },
1816
+ {
1817
+ "name": "mediumMempool";
1818
+ },
1819
+ {
1820
+ "name": "mediumExecpool";
1821
+ },
1822
+ {
1823
+ "name": "largeMempool";
1824
+ },
1825
+ {
1826
+ "name": "largeExecpool";
1827
+ }
1828
+ ];
1829
+ "args": [];
1830
+ },
1831
+ {
1832
+ "name": "embiggenRawCircuitAcc";
1833
+ "discriminator": [
1834
+ 92,
1835
+ 195,
1836
+ 192,
1837
+ 21,
1838
+ 193,
1839
+ 242,
1840
+ 135,
1841
+ 194
1842
+ ];
1843
+ "accounts": [
1844
+ {
1845
+ "name": "signer";
1846
+ "writable": true;
1847
+ "signer": true;
1848
+ },
1560
1849
  {
1561
1850
  "name": "compDefAcc";
1562
1851
  "pda": {
@@ -1600,31 +1889,52 @@ type Arcium = {
1600
1889
  },
1601
1890
  {
1602
1891
  "kind": "arg";
1603
- "path": "compDefOffset";
1892
+ "path": "compOffset";
1604
1893
  }
1605
1894
  ];
1606
1895
  };
1607
1896
  },
1608
1897
  {
1609
- "name": "clock";
1898
+ "name": "compDefRaw";
1899
+ "writable": true;
1610
1900
  "pda": {
1611
1901
  "seeds": [
1612
1902
  {
1613
1903
  "kind": "const";
1614
1904
  "value": [
1615
1905
  67,
1616
- 108,
1617
- 111,
1618
- 99,
1619
- 107,
1620
- 65,
1621
- 99,
1622
- 99,
1623
1906
  111,
1907
+ 109,
1908
+ 112,
1624
1909
  117,
1910
+ 116,
1911
+ 97,
1912
+ 116,
1913
+ 105,
1914
+ 111,
1625
1915
  110,
1626
- 116
1916
+ 68,
1917
+ 101,
1918
+ 102,
1919
+ 105,
1920
+ 110,
1921
+ 105,
1922
+ 116,
1923
+ 105,
1924
+ 111,
1925
+ 110,
1926
+ 82,
1927
+ 97,
1928
+ 119
1627
1929
  ];
1930
+ },
1931
+ {
1932
+ "kind": "account";
1933
+ "path": "compDefAcc";
1934
+ },
1935
+ {
1936
+ "kind": "arg";
1937
+ "path": "rawCircuitIndex";
1628
1938
  }
1629
1939
  ];
1630
1940
  };
@@ -1637,15 +1947,15 @@ type Arcium = {
1637
1947
  "args": [
1638
1948
  {
1639
1949
  "name": "compOffset";
1640
- "type": "u64";
1641
- },
1642
- {
1643
- "name": "compDefOffset";
1644
1950
  "type": "u32";
1645
1951
  },
1646
1952
  {
1647
1953
  "name": "mxeProgram";
1648
1954
  "type": "pubkey";
1955
+ },
1956
+ {
1957
+ "name": "rawCircuitIndex";
1958
+ "type": "u8";
1649
1959
  }
1650
1960
  ];
1651
1961
  },
@@ -1792,7 +2102,7 @@ type Arcium = {
1792
2102
  },
1793
2103
  {
1794
2104
  "kind": "account";
1795
- "path": "mxe.cluster.ok_or(MXEError :: ClusterNotSet) ? ";
2105
+ "path": "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? ";
1796
2106
  "account": "mxeAccount";
1797
2107
  }
1798
2108
  ];
@@ -2316,10 +2626,6 @@ type Arcium = {
2316
2626
  "type": {
2317
2627
  "option": "pubkey";
2318
2628
  };
2319
- },
2320
- {
2321
- "name": "finalizeDuringCallback";
2322
- "type": "bool";
2323
2629
  }
2324
2630
  ];
2325
2631
  },
@@ -3143,7 +3449,7 @@ type Arcium = {
3143
3449
  "name": "queueComputation";
3144
3450
  "docs": [
3145
3451
  "Queues a computation.",
3146
- "cu_price_micro: The priority price of a CU, in thousandths of a $ARX. Used",
3452
+ "cu_price_micro: The priority price of a CU, in thousandths of lamports. Used",
3147
3453
  "to calculate the priority fee and rounded down."
3148
3454
  ];
3149
3455
  "discriminator": [
@@ -3162,6 +3468,41 @@ type Arcium = {
3162
3468
  "writable": true;
3163
3469
  "signer": true;
3164
3470
  },
3471
+ {
3472
+ "name": "signSeed";
3473
+ "docs": [
3474
+ "This is ok-ish though, as we're not reading the account, we just need it to check that the",
3475
+ "CPI invocation is valid. The only downside is it's a bit ugly and wastes some CUs since",
3476
+ "we can't use a potentially stored bump."
3477
+ ];
3478
+ "signer": true;
3479
+ "pda": {
3480
+ "seeds": [
3481
+ {
3482
+ "kind": "const";
3483
+ "value": [
3484
+ 83,
3485
+ 105,
3486
+ 103,
3487
+ 110,
3488
+ 101,
3489
+ 114,
3490
+ 65,
3491
+ 99,
3492
+ 99,
3493
+ 111,
3494
+ 117,
3495
+ 110,
3496
+ 116
3497
+ ];
3498
+ }
3499
+ ];
3500
+ "program": {
3501
+ "kind": "arg";
3502
+ "path": "mxeProgram";
3503
+ };
3504
+ };
3505
+ },
3165
3506
  {
3166
3507
  "name": "comp";
3167
3508
  "writable": true;
@@ -3343,7 +3684,7 @@ type Arcium = {
3343
3684
  },
3344
3685
  {
3345
3686
  "kind": "arg";
3346
- "path": "cluster_index.map_or(mxe.cluster.ok_or(MXEError :: ClusterNotSet) ? , | i |\nmxe.fallback_clusters [i as usize])";
3687
+ "path": "cluster_index.map_or(mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? , | i |\nmxe.fallback_clusters [i as usize])";
3347
3688
  }
3348
3689
  ];
3349
3690
  };
@@ -3422,16 +3763,6 @@ type Arcium = {
3422
3763
  };
3423
3764
  };
3424
3765
  },
3425
- {
3426
- "name": "callbackAccs";
3427
- "type": {
3428
- "vec": {
3429
- "defined": {
3430
- "name": "callbackAccount";
3431
- };
3432
- };
3433
- };
3434
- },
3435
3766
  {
3436
3767
  "name": "mxeProgram";
3437
3768
  "type": "pubkey";
@@ -3443,8 +3774,18 @@ type Arcium = {
3443
3774
  };
3444
3775
  },
3445
3776
  {
3446
- "name": "inputDeliveryFee";
3447
- "type": "u64";
3777
+ "name": "customCallbackInstructions";
3778
+ "type": {
3779
+ "vec": {
3780
+ "defined": {
3781
+ "name": "callbackInstruction";
3782
+ };
3783
+ };
3784
+ };
3785
+ },
3786
+ {
3787
+ "name": "callbackTransactionsRequired";
3788
+ "type": "u8";
3448
3789
  },
3449
3790
  {
3450
3791
  "name": "outputDeliveryFee";
@@ -3456,6 +3797,90 @@ type Arcium = {
3456
3797
  }
3457
3798
  ];
3458
3799
  },
3800
+ {
3801
+ "name": "reclaimFailureRent";
3802
+ "discriminator": [
3803
+ 159,
3804
+ 99,
3805
+ 116,
3806
+ 180,
3807
+ 42,
3808
+ 9,
3809
+ 202,
3810
+ 219
3811
+ ];
3812
+ "accounts": [
3813
+ {
3814
+ "name": "signer";
3815
+ "writable": true;
3816
+ "signer": true;
3817
+ },
3818
+ {
3819
+ "name": "failureAcc";
3820
+ "writable": true;
3821
+ "pda": {
3822
+ "seeds": [
3823
+ {
3824
+ "kind": "const";
3825
+ "value": [
3826
+ 70,
3827
+ 97,
3828
+ 105,
3829
+ 108,
3830
+ 117,
3831
+ 114,
3832
+ 101,
3833
+ 67,
3834
+ 108,
3835
+ 97,
3836
+ 105,
3837
+ 109,
3838
+ 65,
3839
+ 99,
3840
+ 99,
3841
+ 111,
3842
+ 117,
3843
+ 110,
3844
+ 116,
3845
+ 72,
3846
+ 101,
3847
+ 97,
3848
+ 100,
3849
+ 101,
3850
+ 114
3851
+ ];
3852
+ },
3853
+ {
3854
+ "kind": "arg";
3855
+ "path": "mxeProgram";
3856
+ },
3857
+ {
3858
+ "kind": "arg";
3859
+ "path": "compOffset";
3860
+ }
3861
+ ];
3862
+ };
3863
+ },
3864
+ {
3865
+ "name": "clock";
3866
+ "address": "SysvarC1ock11111111111111111111111111111111";
3867
+ }
3868
+ ];
3869
+ "args": [
3870
+ {
3871
+ "name": "compOffset";
3872
+ "type": "u64";
3873
+ },
3874
+ {
3875
+ "name": "nodeOffset";
3876
+ "type": "u32";
3877
+ },
3878
+ {
3879
+ "name": "mxeProgram";
3880
+ "type": "pubkey";
3881
+ }
3882
+ ];
3883
+ },
3459
3884
  {
3460
3885
  "name": "setArxNodeConfig";
3461
3886
  "discriminator": [
@@ -3819,7 +4244,7 @@ type Arcium = {
3819
4244
  },
3820
4245
  {
3821
4246
  "kind": "account";
3822
- "path": "mxe.cluster.ok_or(MXEError :: ClusterNotSet) ? ";
4247
+ "path": "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? ";
3823
4248
  "account": "mxeAccount";
3824
4249
  }
3825
4250
  ];
@@ -3847,6 +4272,33 @@ type Arcium = {
3847
4272
  32
3848
4273
  ];
3849
4274
  };
4275
+ },
4276
+ {
4277
+ "name": "mxeEd25519VerifyingKey";
4278
+ "type": {
4279
+ "array": [
4280
+ "u8",
4281
+ 32
4282
+ ];
4283
+ };
4284
+ },
4285
+ {
4286
+ "name": "mxeElgamalPubkey";
4287
+ "type": {
4288
+ "array": [
4289
+ "u8",
4290
+ 32
4291
+ ];
4292
+ };
4293
+ },
4294
+ {
4295
+ "name": "mxePubkeyValidityProof";
4296
+ "type": {
4297
+ "array": [
4298
+ "u8",
4299
+ 64
4300
+ ];
4301
+ };
3850
4302
  }
3851
4303
  ];
3852
4304
  },
@@ -4196,6 +4648,19 @@ type Arcium = {
4196
4648
  136
4197
4649
  ];
4198
4650
  },
4651
+ {
4652
+ "name": "failureClaimAccountHeader";
4653
+ "discriminator": [
4654
+ 132,
4655
+ 11,
4656
+ 106,
4657
+ 171,
4658
+ 253,
4659
+ 138,
4660
+ 56,
4661
+ 78
4662
+ ];
4663
+ },
4199
4664
  {
4200
4665
  "name": "feePool";
4201
4666
  "discriminator": [
@@ -4354,6 +4819,19 @@ type Arcium = {
4354
4819
  19
4355
4820
  ];
4356
4821
  },
4822
+ {
4823
+ "name": "claimFailureEvent";
4824
+ "discriminator": [
4825
+ 143,
4826
+ 97,
4827
+ 229,
4828
+ 166,
4829
+ 72,
4830
+ 218,
4831
+ 87,
4832
+ 145
4833
+ ];
4834
+ },
4357
4835
  {
4358
4836
  "name": "finalizeComputationEvent";
4359
4837
  "discriminator": [
@@ -4367,6 +4845,19 @@ type Arcium = {
4367
4845
  249
4368
4846
  ];
4369
4847
  },
4848
+ {
4849
+ "name": "finalizeFailureDataEvent";
4850
+ "discriminator": [
4851
+ 132,
4852
+ 26,
4853
+ 138,
4854
+ 201,
4855
+ 214,
4856
+ 29,
4857
+ 244,
4858
+ 167
4859
+ ];
4860
+ },
4370
4861
  {
4371
4862
  "name": "initComputationEvent";
4372
4863
  "discriminator": [
@@ -4397,48 +4888,258 @@ type Arcium = {
4397
4888
  "errors": [
4398
4889
  {
4399
4890
  "code": 6000;
4891
+ "name": "invalidAuthority";
4892
+ "msg": "The given authority is invalid";
4893
+ },
4894
+ {
4895
+ "code": 6001;
4896
+ "name": "mxeKeysAlreadySet";
4897
+ "msg": "The MXE keys are already set, i.e. all the nodes of the MXE cluster already agreed on the MXE keys";
4898
+ },
4899
+ {
4900
+ "code": 6002;
4901
+ "name": "mxeKeysNotSet";
4902
+ "msg": "The MXE keys are not set, i.e. not all the nodes of the MXE cluster agreed on the MXE keys";
4903
+ },
4904
+ {
4905
+ "code": 6003;
4906
+ "name": "invalidMxe";
4907
+ "msg": "An invalid MXE account has been supplied";
4908
+ },
4909
+ {
4910
+ "code": 6004;
4911
+ "name": "clusterAlreadySet";
4912
+ "msg": "The cluster is already set";
4913
+ },
4914
+ {
4915
+ "code": 6005;
4916
+ "name": "clusterNotSet";
4917
+ "msg": "The cluster is not set";
4918
+ },
4919
+ {
4920
+ "code": 6006;
4921
+ "name": "invalidCluster";
4922
+ "msg": "An invalid cluster account has been supplied";
4923
+ },
4924
+ {
4925
+ "code": 6007;
4926
+ "name": "invalidComputationDefinition";
4927
+ "msg": "An invalid computation definition account has been supplied";
4928
+ },
4929
+ {
4930
+ "code": 6008;
4931
+ "name": "cantFindMempoolId";
4932
+ "msg": "Couldn't find a mempool ID for the computation";
4933
+ },
4934
+ {
4935
+ "code": 6100;
4936
+ "name": "invalidMempoolDiscriminator";
4937
+ "msg": "Mempool discriminator is invalid";
4938
+ },
4939
+ {
4940
+ "code": 6101;
4941
+ "name": "invalidMempoolSize";
4942
+ "msg": "Mempool size is invalid";
4943
+ },
4944
+ {
4945
+ "code": 6102;
4946
+ "name": "invalidExecpoolDiscriminator";
4947
+ "msg": "Execpool discriminator is invalid";
4948
+ },
4949
+ {
4950
+ "code": 6103;
4951
+ "name": "maxParallelismReached";
4952
+ "msg": "Max parallelism reached";
4953
+ },
4954
+ {
4955
+ "code": 6200;
4956
+ "name": "invalidComputationOffset";
4957
+ "msg": "Computation offset is invalid";
4958
+ },
4959
+ {
4960
+ "code": 6201;
4961
+ "name": "invalidCallbackAccs";
4962
+ "msg": "Callback accounts are invalid";
4963
+ },
4964
+ {
4965
+ "code": 6202;
4966
+ "name": "invalidCallbackAccsLen";
4967
+ "msg": "Callback accounts length is invalid";
4968
+ },
4969
+ {
4970
+ "code": 6203;
4971
+ "name": "alreadyInitializedComputation";
4972
+ "msg": "The computation is already initialized";
4973
+ },
4974
+ {
4975
+ "code": 6204;
4976
+ "name": "alreadyCallbackedComputation";
4977
+ "msg": "Callback computation already called";
4978
+ },
4979
+ {
4980
+ "code": 6205;
4981
+ "name": "invalidCallbackTx";
4982
+ "msg": "Callback tx is invalid";
4983
+ },
4984
+ {
4985
+ "code": 6206;
4986
+ "name": "invalidComputationStatus";
4987
+ "msg": "Computation status is invalid";
4988
+ },
4989
+ {
4990
+ "code": 6207;
4991
+ "name": "invalidComputation";
4992
+ "msg": "Computation is invalid";
4993
+ },
4994
+ {
4995
+ "code": 6208;
4996
+ "name": "invalidComputationAuthority";
4997
+ "msg": "Computation authority is invalid";
4998
+ },
4999
+ {
5000
+ "code": 6209;
5001
+ "name": "invalidCallbackInstructions";
5002
+ "msg": "Callback instructions are invalid";
5003
+ },
5004
+ {
5005
+ "code": 6300;
5006
+ "name": "computationDefinitionNotCompleted";
5007
+ "msg": "Computation definition is not completed";
5008
+ },
5009
+ {
5010
+ "code": 6301;
5011
+ "name": "invalidArguments";
5012
+ "msg": "Arguments supplied are invalid";
5013
+ },
5014
+ {
5015
+ "code": 6302;
5016
+ "name": "invalidCircuitSource";
5017
+ "msg": "Circuit source is invalid";
5018
+ },
5019
+ {
5020
+ "code": 6303;
5021
+ "name": "computationDefinitionAlreadyCompleted";
5022
+ "msg": "Computation definition already completed";
5023
+ },
5024
+ {
5025
+ "code": 6400;
4400
5026
  "name": "invalidNode";
4401
5027
  "msg": "Node is invalid";
4402
5028
  },
4403
5029
  {
4404
- "code": 6001;
5030
+ "code": 6401;
4405
5031
  "name": "maxClusterMembershipReached";
4406
5032
  "msg": "Maximum number of nodes in the cluster has been reached";
4407
5033
  },
4408
5034
  {
4409
- "code": 6002;
5035
+ "code": 6402;
4410
5036
  "name": "nodeAlreadyExists";
4411
5037
  "msg": "The node already exists in the cluster";
4412
5038
  },
4413
5039
  {
4414
- "code": 6003;
4415
- "name": "invalidAuthority";
5040
+ "code": 6403;
5041
+ "name": "invalidNodeAuthority";
4416
5042
  "msg": "Node authority is invalid";
4417
5043
  },
4418
5044
  {
4419
- "code": 6004;
5045
+ "code": 6404;
4420
5046
  "name": "nodeNotInactive";
4421
5047
  "msg": "Node is not inactive";
4422
5048
  },
4423
5049
  {
4424
- "code": 6005;
4425
- "name": "nodeNotActive";
4426
- "msg": "Node is not active";
5050
+ "code": 6405;
5051
+ "name": "nodeNotActive";
5052
+ "msg": "Node is not active";
5053
+ },
5054
+ {
5055
+ "code": 6406;
5056
+ "name": "invalidClusterMembership";
5057
+ "msg": "Cluster membership is invalid";
5058
+ },
5059
+ {
5060
+ "code": 6407;
5061
+ "name": "nodeInActiveCluster";
5062
+ "msg": "Node is in an active cluster";
5063
+ },
5064
+ {
5065
+ "code": 6408;
5066
+ "name": "invalidNodeConfig";
5067
+ "msg": "Node config is invalid";
5068
+ },
5069
+ {
5070
+ "code": 6500;
5071
+ "name": "clusterFull";
5072
+ "msg": "Cluster is full";
5073
+ },
5074
+ {
5075
+ "code": 6501;
5076
+ "name": "invalidDeactivationEpoch";
5077
+ "msg": "Cluster deactivation epoch is invalid";
5078
+ },
5079
+ {
5080
+ "code": 6502;
5081
+ "name": "invalidMaxSize";
5082
+ "msg": "Cluster maximum size is invalid";
5083
+ },
5084
+ {
5085
+ "code": 6503;
5086
+ "name": "invalidClusterAuthority";
5087
+ "msg": "Cluster authority is invalid";
5088
+ },
5089
+ {
5090
+ "code": 6504;
5091
+ "name": "invalidFeeProposal";
5092
+ "msg": "Cluster fee proposal is invalid";
5093
+ },
5094
+ {
5095
+ "code": 6505;
5096
+ "name": "invalidClusterState";
5097
+ "msg": "Cluster state is invalid";
5098
+ },
5099
+ {
5100
+ "code": 6506;
5101
+ "name": "invalidVote";
5102
+ "msg": "Cluster vote is invalid";
5103
+ },
5104
+ {
5105
+ "code": 6600;
5106
+ "name": "serializationFailed";
5107
+ "msg": "Borsh serialization failed";
5108
+ },
5109
+ {
5110
+ "code": 6601;
5111
+ "name": "deserializationFailed";
5112
+ "msg": "Borsh deserialization failed";
5113
+ },
5114
+ {
5115
+ "code": 6602;
5116
+ "name": "heapFull";
5117
+ "msg": "Heap is full";
5118
+ },
5119
+ {
5120
+ "code": 6603;
5121
+ "name": "invalidSlot";
5122
+ "msg": "Current slot is before the last updated slot";
5123
+ },
5124
+ {
5125
+ "code": 6604;
5126
+ "name": "epochIsInfinity";
5127
+ "msg": "Epoch is infinity";
4427
5128
  },
4428
5129
  {
4429
- "code": 6006;
4430
- "name": "invalidClusterMembership";
4431
- "msg": "Cluster membership is invalid";
5130
+ "code": 6605;
5131
+ "name": "invalidTimestamp";
5132
+ "msg": "Timestamp is invalid";
4432
5133
  },
4433
5134
  {
4434
- "code": 6007;
4435
- "name": "nodeInActiveCluster";
4436
- "msg": "Node is in an active cluster";
5135
+ "code": 6606;
5136
+ "name": "invalidEpoch";
5137
+ "msg": "Epoch is invalid";
4437
5138
  },
4438
5139
  {
4439
- "code": 6008;
4440
- "name": "invalidConfig";
4441
- "msg": "Node config is invalid";
5140
+ "code": 6607;
5141
+ "name": "epochOverflow";
5142
+ "msg": "Epoch overflowed";
4442
5143
  }
4443
5144
  ];
4444
5145
  "types": [
@@ -4483,8 +5184,17 @@ type Arcium = {
4483
5184
  {
4484
5185
  "name": "primitiveError";
4485
5186
  },
5187
+ {
5188
+ "name": "invalidBatchLength";
5189
+ },
4486
5190
  {
4487
5191
  "name": "quadraticNonResidue";
5192
+ },
5193
+ {
5194
+ "name": "bitConversionError";
5195
+ },
5196
+ {
5197
+ "name": "channelClosed";
4488
5198
  }
4489
5199
  ];
4490
5200
  };
@@ -4785,20 +5495,18 @@ type Arcium = {
4785
5495
  "type": "u32";
4786
5496
  },
4787
5497
  {
4788
- "name": "allowedAuthorities";
4789
- "type": {
4790
- "vec": "pubkey";
4791
- };
5498
+ "name": "authority";
5499
+ "docs": [
5500
+ "Admin key for node management operations"
5501
+ ];
5502
+ "type": "pubkey";
4792
5503
  },
4793
5504
  {
4794
- "name": "supportedProtocols";
4795
- "type": {
4796
- "vec": {
4797
- "defined": {
4798
- "name": "mpcProtocol";
4799
- };
4800
- };
4801
- };
5505
+ "name": "callbackAuthority";
5506
+ "docs": [
5507
+ "Key used to sign computation callbacks - separated for operational security"
5508
+ ];
5509
+ "type": "pubkey";
4802
5510
  }
4803
5511
  ];
4804
5512
  };
@@ -4839,6 +5547,35 @@ type Arcium = {
4839
5547
  ];
4840
5548
  };
4841
5549
  },
5550
+ {
5551
+ "name": "callbackInstruction";
5552
+ "docs": [
5553
+ "A custom callback instruction with its own program ID and discriminator."
5554
+ ];
5555
+ "type": {
5556
+ "kind": "struct";
5557
+ "fields": [
5558
+ {
5559
+ "name": "programId";
5560
+ "type": "pubkey";
5561
+ },
5562
+ {
5563
+ "name": "discriminator";
5564
+ "type": "bytes";
5565
+ },
5566
+ {
5567
+ "name": "accounts";
5568
+ "type": {
5569
+ "vec": {
5570
+ "defined": {
5571
+ "name": "callbackAccount";
5572
+ };
5573
+ };
5574
+ };
5575
+ }
5576
+ ];
5577
+ };
5578
+ },
4842
5579
  {
4843
5580
  "name": "circuitSource";
4844
5581
  "type": {
@@ -4877,6 +5614,22 @@ type Arcium = {
4877
5614
  ];
4878
5615
  };
4879
5616
  },
5617
+ {
5618
+ "name": "claimFailureEvent";
5619
+ "type": {
5620
+ "kind": "struct";
5621
+ "fields": [
5622
+ {
5623
+ "name": "computationOffset";
5624
+ "type": "u64";
5625
+ },
5626
+ {
5627
+ "name": "mxeProgramId";
5628
+ "type": "pubkey";
5629
+ }
5630
+ ];
5631
+ };
5632
+ },
4880
5633
  {
4881
5634
  "name": "clockAccount";
4882
5635
  "docs": [
@@ -5086,20 +5839,28 @@ type Arcium = {
5086
5839
  };
5087
5840
  },
5088
5841
  {
5089
- "name": "callbackAccs";
5842
+ "name": "callbackUrl";
5843
+ "type": {
5844
+ "option": "string";
5845
+ };
5846
+ },
5847
+ {
5848
+ "name": "customCallbackInstructions";
5090
5849
  "type": {
5091
5850
  "vec": {
5092
5851
  "defined": {
5093
- "name": "callbackAccount";
5852
+ "name": "callbackInstruction";
5094
5853
  };
5095
5854
  };
5096
5855
  };
5097
5856
  },
5098
5857
  {
5099
- "name": "callbackUrl";
5100
- "type": {
5101
- "option": "string";
5102
- };
5858
+ "name": "callbackTransactionsRequired";
5859
+ "type": "u8";
5860
+ },
5861
+ {
5862
+ "name": "callbackTransactionsSubmittedBm";
5863
+ "type": "u16";
5103
5864
  },
5104
5865
  {
5105
5866
  "name": "bump";
@@ -5125,13 +5886,6 @@ type Arcium = {
5125
5886
  "option": "pubkey";
5126
5887
  };
5127
5888
  },
5128
- {
5129
- "name": "finalizeDuringCallback";
5130
- "docs": [
5131
- "Whether to we need a separate callback and finalize instruction or if we can do it in one."
5132
- ];
5133
- "type": "bool";
5134
- },
5135
5889
  {
5136
5890
  "name": "cuAmount";
5137
5891
  "docs": [
@@ -5187,15 +5941,6 @@ type Arcium = {
5187
5941
  "name": "computationSignature";
5188
5942
  };
5189
5943
  };
5190
- },
5191
- {
5192
- "name": "callbackDiscriminator";
5193
- "type": {
5194
- "array": [
5195
- "u8",
5196
- 8
5197
- ];
5198
- };
5199
5944
  }
5200
5945
  ];
5201
5946
  };
@@ -5310,9 +6055,6 @@ type Arcium = {
5310
6055
  {
5311
6056
  "name": "queued";
5312
6057
  },
5313
- {
5314
- "name": "executed";
5315
- },
5316
6058
  {
5317
6059
  "name": "finalized";
5318
6060
  }
@@ -5352,20 +6094,26 @@ type Arcium = {
5352
6094
  "type": "u8";
5353
6095
  },
5354
6096
  {
5355
- "name": "compStatus";
6097
+ "name": "padding";
5356
6098
  "type": {
5357
6099
  "array": [
5358
6100
  "u8",
5359
- 13
6101
+ 7
5360
6102
  ];
5361
6103
  };
5362
6104
  },
5363
6105
  {
5364
- "name": "padding";
6106
+ "name": "counter";
6107
+ "type": "u64";
6108
+ },
6109
+ {
6110
+ "name": "execpoolIndex";
5365
6111
  "type": {
5366
6112
  "array": [
5367
- "u8",
5368
- 2
6113
+ "u64",
6114
+ {
6115
+ "generic": "maxParrallelComputations";
6116
+ }
5369
6117
  ];
5370
6118
  };
5371
6119
  },
@@ -5442,18 +6190,10 @@ type Arcium = {
5442
6190
  ];
5443
6191
  "type": "u64";
5444
6192
  },
5445
- {
5446
- "name": "inputDeliveryFee";
5447
- "docs": [
5448
- "A fee for data relaying used with [super::mxe::DataProvisioning::Protected] data",
5449
- "provisioning."
5450
- ];
5451
- "type": "u64";
5452
- },
5453
6193
  {
5454
6194
  "name": "outputDeliveryFee";
5455
6195
  "docs": [
5456
- "A fee for relayer based (unverifiable) off-chain output delivery."
6196
+ "A fee for output delivery fees (i.e. tx fees)."
5457
6197
  ];
5458
6198
  "type": "u64";
5459
6199
  }
@@ -5487,6 +6227,43 @@ type Arcium = {
5487
6227
  ];
5488
6228
  };
5489
6229
  },
6230
+ {
6231
+ "name": "failureClaimAccountHeader";
6232
+ "serialization": "bytemuckunsafe";
6233
+ "repr": {
6234
+ "kind": "c";
6235
+ };
6236
+ "type": {
6237
+ "kind": "struct";
6238
+ "fields": [
6239
+ {
6240
+ "name": "bump";
6241
+ "type": "u8";
6242
+ },
6243
+ {
6244
+ "name": "isComplete";
6245
+ "type": "bool";
6246
+ },
6247
+ {
6248
+ "name": "padding";
6249
+ "type": {
6250
+ "array": [
6251
+ "u8",
6252
+ 6
6253
+ ];
6254
+ };
6255
+ },
6256
+ {
6257
+ "name": "challengeEndSlot";
6258
+ "type": "u64";
6259
+ },
6260
+ {
6261
+ "name": "poster";
6262
+ "type": "pubkey";
6263
+ }
6264
+ ];
6265
+ };
6266
+ },
5490
6267
  {
5491
6268
  "name": "feePool";
5492
6269
  "type": {
@@ -5515,6 +6292,22 @@ type Arcium = {
5515
6292
  ];
5516
6293
  };
5517
6294
  },
6295
+ {
6296
+ "name": "finalizeFailureDataEvent";
6297
+ "type": {
6298
+ "kind": "struct";
6299
+ "fields": [
6300
+ {
6301
+ "name": "computationOffset";
6302
+ "type": "u64";
6303
+ },
6304
+ {
6305
+ "name": "mxeProgramId";
6306
+ "type": "pubkey";
6307
+ }
6308
+ ];
6309
+ };
6310
+ },
5518
6311
  {
5519
6312
  "name": "initComputationEvent";
5520
6313
  "type": {
@@ -5722,20 +6515,6 @@ type Arcium = {
5722
6515
  ];
5723
6516
  };
5724
6517
  },
5725
- {
5726
- "name": "mpcProtocol";
5727
- "type": {
5728
- "kind": "enum";
5729
- "variants": [
5730
- {
5731
- "name": "cerberus";
5732
- },
5733
- {
5734
- "name": "manticore";
5735
- }
5736
- ];
5737
- };
5738
- },
5739
6518
  {
5740
6519
  "name": "mxeAccount";
5741
6520
  "docs": [
@@ -5763,13 +6542,27 @@ type Arcium = {
5763
6542
  };
5764
6543
  },
5765
6544
  {
5766
- "name": "x25519Pubkey";
6545
+ "name": "utilityPubkeys";
5767
6546
  "docs": [
5768
- "The x25519 pubkey (256 bits curve25519), used for encrypted data."
6547
+ "The utility pubkeys, consisting of",
6548
+ "- x25519 pubkey (32 bytes), used for key exchange",
6549
+ "- ed25519 verifying key (32 bytes), used for signature verification",
6550
+ "- ElGamal pubkey (32 bytes), used for c-spl",
6551
+ "- ElGamal pubkey validity proof (64 bytes), used for c-spl"
5769
6552
  ];
5770
6553
  "type": {
5771
6554
  "defined": {
5772
- "name": "x25519Pubkey";
6555
+ "name": "setUnset";
6556
+ "generics": [
6557
+ {
6558
+ "kind": "type";
6559
+ "type": {
6560
+ "defined": {
6561
+ "name": "utilityPubkeys";
6562
+ };
6563
+ };
6564
+ }
6565
+ ];
5773
6566
  };
5774
6567
  };
5775
6568
  },
@@ -6209,6 +7002,9 @@ type Arcium = {
6209
7002
  },
6210
7003
  {
6211
7004
  "name": "plaintextFloat";
7005
+ },
7006
+ {
7007
+ "name": "plaintextPoint";
6212
7008
  }
6213
7009
  ];
6214
7010
  };
@@ -6280,6 +7076,39 @@ type Arcium = {
6280
7076
  ];
6281
7077
  };
6282
7078
  },
7079
+ {
7080
+ "name": "setUnset";
7081
+ "generics": [
7082
+ {
7083
+ "kind": "type";
7084
+ "name": "t";
7085
+ }
7086
+ ];
7087
+ "type": {
7088
+ "kind": "enum";
7089
+ "variants": [
7090
+ {
7091
+ "name": "set";
7092
+ "fields": [
7093
+ {
7094
+ "generic": "t";
7095
+ }
7096
+ ];
7097
+ },
7098
+ {
7099
+ "name": "unset";
7100
+ "fields": [
7101
+ {
7102
+ "generic": "t";
7103
+ },
7104
+ {
7105
+ "vec": "bool";
7106
+ }
7107
+ ];
7108
+ }
7109
+ ];
7110
+ };
7111
+ },
6283
7112
  {
6284
7113
  "name": "smallExecPool";
6285
7114
  "serialization": "bytemuckunsafe";
@@ -6653,34 +7482,45 @@ type Arcium = {
6653
7482
  };
6654
7483
  },
6655
7484
  {
6656
- "name": "x25519Pubkey";
7485
+ "name": "utilityPubkeys";
6657
7486
  "type": {
6658
- "kind": "enum";
6659
- "variants": [
7487
+ "kind": "struct";
7488
+ "fields": [
6660
7489
  {
6661
- "name": "set";
6662
- "fields": [
6663
- {
6664
- "array": [
6665
- "u8",
6666
- 32
6667
- ];
6668
- }
6669
- ];
7490
+ "name": "x25519Pubkey";
7491
+ "type": {
7492
+ "array": [
7493
+ "u8",
7494
+ 32
7495
+ ];
7496
+ };
6670
7497
  },
6671
7498
  {
6672
- "name": "unset";
6673
- "fields": [
6674
- {
6675
- "array": [
6676
- "u8",
6677
- 32
6678
- ];
6679
- },
6680
- {
6681
- "vec": "bool";
6682
- }
6683
- ];
7499
+ "name": "ed25519VerifyingKey";
7500
+ "type": {
7501
+ "array": [
7502
+ "u8",
7503
+ 32
7504
+ ];
7505
+ };
7506
+ },
7507
+ {
7508
+ "name": "elgamalPubkey";
7509
+ "type": {
7510
+ "array": [
7511
+ "u8",
7512
+ 32
7513
+ ];
7514
+ };
7515
+ },
7516
+ {
7517
+ "name": "pubkeyValidityProof";
7518
+ "type": {
7519
+ "array": [
7520
+ "u8",
7521
+ 64
7522
+ ];
7523
+ };
6684
7524
  }
6685
7525
  ];
6686
7526
  };
@@ -6773,6 +7613,145 @@ declare let instructions: ({
6773
7613
  };
6774
7614
  })[];
6775
7615
  docs?: undefined;
7616
+ } | {
7617
+ name: string;
7618
+ discriminator: number[];
7619
+ accounts: ({
7620
+ name: string;
7621
+ signer: boolean;
7622
+ writable?: undefined;
7623
+ pda?: undefined;
7624
+ } | {
7625
+ name: string;
7626
+ writable: boolean;
7627
+ pda: {
7628
+ seeds: ({
7629
+ kind: string;
7630
+ value: number[];
7631
+ path?: undefined;
7632
+ } | {
7633
+ kind: string;
7634
+ path: string;
7635
+ value?: undefined;
7636
+ })[];
7637
+ };
7638
+ signer?: undefined;
7639
+ } | {
7640
+ name: string;
7641
+ writable: boolean;
7642
+ pda: {
7643
+ seeds: ({
7644
+ kind: string;
7645
+ value: number[];
7646
+ path?: undefined;
7647
+ account?: undefined;
7648
+ } | {
7649
+ kind: string;
7650
+ path: string;
7651
+ account: string;
7652
+ value?: undefined;
7653
+ })[];
7654
+ };
7655
+ signer?: undefined;
7656
+ } | {
7657
+ name: string;
7658
+ pda: {
7659
+ seeds: ({
7660
+ kind: string;
7661
+ value: number[];
7662
+ path?: undefined;
7663
+ } | {
7664
+ kind: string;
7665
+ path: string;
7666
+ value?: undefined;
7667
+ })[];
7668
+ };
7669
+ signer?: undefined;
7670
+ writable?: undefined;
7671
+ })[];
7672
+ args: {
7673
+ name: string;
7674
+ type: string;
7675
+ }[];
7676
+ docs?: undefined;
7677
+ } | {
7678
+ name: string;
7679
+ discriminator: number[];
7680
+ accounts: ({
7681
+ name: string;
7682
+ writable: boolean;
7683
+ signer: boolean;
7684
+ pda?: undefined;
7685
+ address?: undefined;
7686
+ } | {
7687
+ name: string;
7688
+ writable: boolean;
7689
+ pda: {
7690
+ seeds: ({
7691
+ kind: string;
7692
+ value: number[];
7693
+ path?: undefined;
7694
+ account?: undefined;
7695
+ } | {
7696
+ kind: string;
7697
+ path: string;
7698
+ account: string;
7699
+ value?: undefined;
7700
+ })[];
7701
+ };
7702
+ signer?: undefined;
7703
+ address?: undefined;
7704
+ } | {
7705
+ name: string;
7706
+ pda: {
7707
+ seeds: ({
7708
+ kind: string;
7709
+ value: number[];
7710
+ path?: undefined;
7711
+ account?: undefined;
7712
+ } | {
7713
+ kind: string;
7714
+ path: string;
7715
+ value?: undefined;
7716
+ account?: undefined;
7717
+ } | {
7718
+ kind: string;
7719
+ path: string;
7720
+ account: string;
7721
+ value?: undefined;
7722
+ })[];
7723
+ };
7724
+ writable?: undefined;
7725
+ signer?: undefined;
7726
+ address?: undefined;
7727
+ } | {
7728
+ name: string;
7729
+ writable: boolean;
7730
+ pda: {
7731
+ seeds: ({
7732
+ kind: string;
7733
+ value: number[];
7734
+ path?: undefined;
7735
+ } | {
7736
+ kind: string;
7737
+ path: string;
7738
+ value?: undefined;
7739
+ })[];
7740
+ };
7741
+ signer?: undefined;
7742
+ address?: undefined;
7743
+ } | {
7744
+ name: string;
7745
+ address: string;
7746
+ writable?: undefined;
7747
+ signer?: undefined;
7748
+ pda?: undefined;
7749
+ })[];
7750
+ args: {
7751
+ name: string;
7752
+ type: string;
7753
+ }[];
7754
+ docs?: undefined;
6776
7755
  } | {
6777
7756
  name: string;
6778
7757
  discriminator: number[];
@@ -7051,8 +8030,25 @@ declare let instructions: ({
7051
8030
  name: string;
7052
8031
  writable: boolean;
7053
8032
  signer: boolean;
8033
+ docs?: undefined;
7054
8034
  pda?: undefined;
7055
8035
  address?: undefined;
8036
+ } | {
8037
+ name: string;
8038
+ docs: string[];
8039
+ signer: boolean;
8040
+ pda: {
8041
+ seeds: {
8042
+ kind: string;
8043
+ value: number[];
8044
+ }[];
8045
+ program: {
8046
+ kind: string;
8047
+ path: string;
8048
+ };
8049
+ };
8050
+ writable?: undefined;
8051
+ address?: undefined;
7056
8052
  } | {
7057
8053
  name: string;
7058
8054
  writable: boolean;
@@ -7066,8 +8062,10 @@ declare let instructions: ({
7066
8062
  path: string;
7067
8063
  value?: undefined;
7068
8064
  })[];
8065
+ program?: undefined;
7069
8066
  };
7070
8067
  signer?: undefined;
8068
+ docs?: undefined;
7071
8069
  address?: undefined;
7072
8070
  } | {
7073
8071
  name: string;
@@ -7081,15 +8079,18 @@ declare let instructions: ({
7081
8079
  path: string;
7082
8080
  value?: undefined;
7083
8081
  })[];
8082
+ program?: undefined;
7084
8083
  };
7085
8084
  writable?: undefined;
7086
8085
  signer?: undefined;
8086
+ docs?: undefined;
7087
8087
  address?: undefined;
7088
8088
  } | {
7089
8089
  name: string;
7090
8090
  address: string;
7091
8091
  writable?: undefined;
7092
8092
  signer?: undefined;
8093
+ docs?: undefined;
7093
8094
  pda?: undefined;
7094
8095
  })[];
7095
8096
  args: ({
@@ -7351,34 +8352,6 @@ declare let types: ({
7351
8352
  serialization?: undefined;
7352
8353
  repr?: undefined;
7353
8354
  generics?: undefined;
7354
- } | {
7355
- name: string;
7356
- type: {
7357
- kind: string;
7358
- fields: ({
7359
- name: string;
7360
- type: string;
7361
- } | {
7362
- name: string;
7363
- type: {
7364
- vec: string;
7365
- };
7366
- } | {
7367
- name: string;
7368
- type: {
7369
- vec: {
7370
- defined: {
7371
- name: string;
7372
- };
7373
- };
7374
- };
7375
- })[];
7376
- variants?: undefined;
7377
- };
7378
- docs?: undefined;
7379
- serialization?: undefined;
7380
- repr?: undefined;
7381
- generics?: undefined;
7382
8355
  } | {
7383
8356
  name: string;
7384
8357
  type: {
@@ -7513,18 +8486,6 @@ declare let types: ({
7513
8486
  option?: undefined;
7514
8487
  defined?: undefined;
7515
8488
  };
7516
- } | {
7517
- name: string;
7518
- type: {
7519
- vec: {
7520
- defined: {
7521
- name: string;
7522
- };
7523
- };
7524
- option?: undefined;
7525
- defined?: undefined;
7526
- };
7527
- docs?: undefined;
7528
8489
  } | {
7529
8490
  name: string;
7530
8491
  type: {
@@ -7533,34 +8494,18 @@ declare let types: ({
7533
8494
  vec?: undefined;
7534
8495
  };
7535
8496
  docs?: undefined;
7536
- })[];
7537
- variants?: undefined;
7538
- };
7539
- serialization?: undefined;
7540
- repr?: undefined;
7541
- generics?: undefined;
7542
- } | {
7543
- name: string;
7544
- docs: string[];
7545
- type: {
7546
- kind: string;
7547
- fields: ({
7548
- name: string;
7549
- type: string;
7550
8497
  } | {
7551
8498
  name: string;
7552
8499
  type: {
7553
- defined: {
7554
- name: string;
8500
+ vec: {
8501
+ defined: {
8502
+ name: string;
8503
+ };
7555
8504
  };
7556
- array?: undefined;
7557
- };
7558
- } | {
7559
- name: string;
7560
- type: {
7561
- array: (string | number)[];
8505
+ option?: undefined;
7562
8506
  defined?: undefined;
7563
8507
  };
8508
+ docs?: undefined;
7564
8509
  })[];
7565
8510
  variants?: undefined;
7566
8511
  };
@@ -7599,6 +8544,13 @@ declare let types: ({
7599
8544
  type: {
7600
8545
  array: (string | number)[];
7601
8546
  };
8547
+ } | {
8548
+ name: string;
8549
+ type: {
8550
+ array: (string | {
8551
+ generic: string;
8552
+ })[];
8553
+ };
7602
8554
  } | {
7603
8555
  name: string;
7604
8556
  type: {
@@ -7753,6 +8705,14 @@ declare let types: ({
7753
8705
  type: {
7754
8706
  defined: {
7755
8707
  name: string;
8708
+ generics: {
8709
+ kind: string;
8710
+ type: {
8711
+ defined: {
8712
+ name: string;
8713
+ };
8714
+ };
8715
+ }[];
7756
8716
  };
7757
8717
  option?: undefined;
7758
8718
  vec?: undefined;
@@ -7839,16 +8799,20 @@ declare let types: ({
7839
8799
  generics?: undefined;
7840
8800
  } | {
7841
8801
  name: string;
8802
+ generics: {
8803
+ kind: string;
8804
+ name: string;
8805
+ }[];
7842
8806
  type: {
7843
8807
  kind: string;
7844
8808
  variants: {
7845
8809
  name: string;
7846
8810
  fields: ({
7847
- array: (string | number)[];
8811
+ generic: string;
7848
8812
  vec?: undefined;
7849
8813
  } | {
7850
8814
  vec: string;
7851
- array?: undefined;
8815
+ generic?: undefined;
7852
8816
  })[];
7853
8817
  }[];
7854
8818
  fields?: undefined;
@@ -7856,7 +8820,6 @@ declare let types: ({
7856
8820
  docs?: undefined;
7857
8821
  serialization?: undefined;
7858
8822
  repr?: undefined;
7859
- generics?: undefined;
7860
8823
  })[];
7861
8824
 
7862
8825
  declare const arcium_accounts: typeof accounts;
@@ -7881,7 +8844,7 @@ declare namespace arcium {
7881
8844
  /**
7882
8845
  * The deployed address of the Arcium program, as specified in the IDL.
7883
8846
  */
7884
- declare const ARCIUM_ADDR: "BKck65TgoKRokMjQM3datB9oRwJ8rAj2jxPXvHXUvcL6";
8847
+ declare const ARCIUM_ADDR: "Bv3Fb9VjzjWGfX18QTUcVycAfeLoQ5zZN6vv2g3cTZxp";
7885
8848
 
7886
8849
  /**
7887
8850
  * Represents a mempool account of any size (tiny, small, medium, or large).
@@ -7931,6 +8894,13 @@ declare function getExecutingPoolAccData(provider: AnchorProvider, executingPool
7931
8894
  * @returns The MXE's x25519 public key as a Uint8Array, or null if not set.
7932
8895
  */
7933
8896
  declare function getMXEPublicKey(provider: AnchorProvider, mxeProgramID: anchor.web3.PublicKey): Promise<Uint8Array | null>;
8897
+ /**
8898
+ * Fetches and extracts the MXE arcis ed25519 verifying key from the MXE account.
8899
+ * @param provider - The Anchor provider to use for fetching accounts.
8900
+ * @param mxeProgramID - The public key of the MXE program.
8901
+ * @returns The MXE's arcis ed25519 verifying key as a Uint8Array, or null if not set.
8902
+ */
8903
+ declare function getMXEArcisEd25519VerifyingKey(provider: AnchorProvider, mxeProgramID: anchor.web3.PublicKey): Promise<Uint8Array | null>;
7934
8904
  /**
7935
8905
  * Uploads a circuit to the blockchain, splitting it into multiple accounts if necessary.
7936
8906
  * @param provider - The Anchor provider to use for transactions.
@@ -8036,10 +9006,10 @@ declare function getMempoolAccAddress(mxeProgramId: PublicKey): PublicKey;
8036
9006
  */
8037
9007
  declare function getExecutingPoolAccAddress(mxeProgramId: PublicKey): PublicKey;
8038
9008
  /**
8039
- * Derives the staking pool account address.
8040
- * @returns The derived staking pool account public key.
9009
+ * Derives the fee pool account address.
9010
+ * @returns The derived fee pool account public key.
8041
9011
  */
8042
- declare function getStakingPoolAccAddress(): PublicKey;
9012
+ declare function getFeePoolAccAddress(): PublicKey;
8043
9013
  /**
8044
9014
  * Derives the clock account address.
8045
9015
  * @returns The derived clock account public key.
@@ -8092,5 +9062,5 @@ declare function compressUint128(bytes: Uint8Array): bigint[];
8092
9062
  */
8093
9063
  declare function decompressUint128(compressed: bigint[]): Uint8Array;
8094
9064
 
8095
- export { ARCIUM_ADDR, arcium as ARCIUM_IDL, Aes128Cipher, Aes192Cipher, Aes256Cipher, CURVE25519_BASE_FIELD, CURVE25519_SCALAR_FIELD_MODULUS, Matrix, RescueCipher, RescueDesc, RescuePrimeHash, arcisEd25519, awaitComputationFinalization, buildFinalizeCompDefTx, compressUint128, decompressUint128, deserializeLE, generateRandomFieldElem, getArciumAccountBaseSeed, getArciumEnv, getArciumProgAddress, getArciumProgram, getArciumProgramId, getArciumProgramReadonly, getArxAccPDA, getArxNodeAccAddress, getClockAccAddress, getClusterAccAddress, getCompDefAccAddress, getCompDefAccOffset, getComputationAccAddress, getExecutingPoolAccAddress, getExecutingPoolAccData, getMXEAccAddress, getMXEPublicKey, getMempoolAccAddress, getMempoolAccData, getStakingPoolAccAddress, positiveModulo, randMatrix, serializeLE, sha256, toVec, uploadCircuit };
9065
+ export { ARCIUM_ADDR, arcium as ARCIUM_IDL, Aes128Cipher, Aes192Cipher, Aes256Cipher, CURVE25519_BASE_FIELD, CURVE25519_SCALAR_FIELD_MODULUS, Matrix, RescueCipher, RescueDesc, RescuePrimeHash, arcisEd25519, awaitComputationFinalization, buildFinalizeCompDefTx, compressUint128, decompressUint128, deserializeLE, generateRandomFieldElem, getArciumAccountBaseSeed, getArciumEnv, getArciumProgAddress, getArciumProgram, getArciumProgramId, getArciumProgramReadonly, getArxAccPDA, getArxNodeAccAddress, getClockAccAddress, getClusterAccAddress, getCompDefAccAddress, getCompDefAccOffset, getComputationAccAddress, getExecutingPoolAccAddress, getExecutingPoolAccData, getFeePoolAccAddress, getMXEAccAddress, getMXEArcisEd25519VerifyingKey, getMXEPublicKey, getMempoolAccAddress, getMempoolAccData, positiveModulo, randMatrix, serializeLE, sha256, toVec, uploadCircuit };
8096
9066
  export type { Arcium as ArciumIdlType, ArciumLocalEnv, ComputationErrorType, FpField };