@solana/rpc-graphql 2.0.0-experimental.fd11bd1 → 2.0.0-experimental.ffeddf6

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.
@@ -101,13 +101,14 @@ async function resolveProgramAccounts({ programAddress, encoding = "jsonParsed",
101
101
  }).catch((e) => {
102
102
  throw e;
103
103
  });
104
- const queryResponse = programAccounts.map((programAccount2) => {
105
- const [data, responseEncoding] = Array.isArray(programAccount2.account.data) ? encoding === "jsonParsed" ? [programAccount2.account.data[0], "base64"] : [programAccount2.account.data[0], encoding] : [programAccount2.account.data, "jsonParsed"];
106
- const pubkey = programAccount2.pubkey;
107
- const account = { ...programAccount2.account, data, encoding: responseEncoding };
104
+ const queryResponse = programAccounts.map((programAccount) => {
105
+ const [data, responseEncoding] = Array.isArray(programAccount.account.data) ? encoding === "jsonParsed" ? [programAccount.account.data[0], "base64"] : [programAccount.account.data[0], encoding] : [programAccount.account.data, "jsonParsed"];
106
+ const pubkey = programAccount.pubkey;
108
107
  return {
109
- account,
110
- pubkey
108
+ ...programAccount.account,
109
+ address: pubkey,
110
+ data,
111
+ encoding: responseEncoding
111
112
  };
112
113
  });
113
114
  cache.insert(programAddress, requestConfig, queryResponse);
@@ -285,7 +286,7 @@ var dataSliceInputType = () => {
285
286
  length: number(),
286
287
  offset: number()
287
288
  },
288
- name: "DataSliceConfig"
289
+ name: "DataSlice"
289
290
  });
290
291
  return memoisedDataSliceInputType;
291
292
  };
@@ -760,8 +761,30 @@ var tokenBalance = () => {
760
761
  memoisedTokenBalance = new GraphQLObjectType({
761
762
  fields: {
762
763
  accountIndex: number(),
763
- mint: string(),
764
- owner: string(),
764
+ // Nested Account interface
765
+ mint: {
766
+ args: {
767
+ commitment: type(commitmentInputType()),
768
+ dataSlice: type(dataSliceInputType()),
769
+ encoding: type(accountEncodingInputType()),
770
+ minContextSlot: bigint()
771
+ },
772
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
773
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
774
+ type: accountInterface()
775
+ },
776
+ // Nested Account interface
777
+ owner: {
778
+ args: {
779
+ commitment: type(commitmentInputType()),
780
+ dataSlice: type(dataSliceInputType()),
781
+ encoding: type(accountEncodingInputType()),
782
+ minContextSlot: bigint()
783
+ },
784
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
785
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
786
+ type: accountInterface()
787
+ },
765
788
  programId: string(),
766
789
  uiAmountString: string()
767
790
  },
@@ -1181,30 +1204,184 @@ var parsedInstructionsAddressLookupTable = () => {
1181
1204
  memoisedParsedInstructionsAddressLookupTable = [
1182
1205
  parsedTransactionInstructionType("CreateLookupTableInstruction", {
1183
1206
  bumpSeed: number(),
1184
- lookupTableAccount: string(),
1185
- lookupTableAuthority: string(),
1186
- payerAccount: string(),
1207
+ // Nested Account interface
1208
+ lookupTableAccount: {
1209
+ args: {
1210
+ commitment: type(commitmentInputType()),
1211
+ dataSlice: type(dataSliceInputType()),
1212
+ encoding: type(accountEncodingInputType()),
1213
+ minContextSlot: bigint()
1214
+ },
1215
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1216
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.lookupTableAccount }, info),
1217
+ type: accountInterface()
1218
+ },
1219
+ // Nested Account interface
1220
+ lookupTableAuthority: {
1221
+ args: {
1222
+ commitment: type(commitmentInputType()),
1223
+ dataSlice: type(dataSliceInputType()),
1224
+ encoding: type(accountEncodingInputType()),
1225
+ minContextSlot: bigint()
1226
+ },
1227
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1228
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.lookupTableAuthority }, info),
1229
+ type: accountInterface()
1230
+ },
1231
+ // Nested Account interface
1232
+ payerAccount: {
1233
+ args: {
1234
+ commitment: type(commitmentInputType()),
1235
+ dataSlice: type(dataSliceInputType()),
1236
+ encoding: type(accountEncodingInputType()),
1237
+ minContextSlot: bigint()
1238
+ },
1239
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1240
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.payerAccount }, info),
1241
+ type: accountInterface()
1242
+ },
1187
1243
  recentSlot: bigint(),
1188
- systemProgram: string()
1244
+ // Nested Account interface
1245
+ systemProgram: {
1246
+ args: {
1247
+ commitment: type(commitmentInputType()),
1248
+ dataSlice: type(dataSliceInputType()),
1249
+ encoding: type(accountEncodingInputType()),
1250
+ minContextSlot: bigint()
1251
+ },
1252
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1253
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.systemProgram }, info),
1254
+ type: accountInterface()
1255
+ }
1189
1256
  }),
1190
1257
  parsedTransactionInstructionType("FreezeLookupTableInstruction", {
1191
- lookupTableAccount: string(),
1192
- lookupTableAuthority: string()
1258
+ // Nested Account interface
1259
+ lookupTableAccount: {
1260
+ args: {
1261
+ commitment: type(commitmentInputType()),
1262
+ dataSlice: type(dataSliceInputType()),
1263
+ encoding: type(accountEncodingInputType()),
1264
+ minContextSlot: bigint()
1265
+ },
1266
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1267
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.lookupTableAccount }, info),
1268
+ type: accountInterface()
1269
+ },
1270
+ // Nested Account interface
1271
+ lookupTableAuthority: {
1272
+ args: {
1273
+ commitment: type(commitmentInputType()),
1274
+ dataSlice: type(dataSliceInputType()),
1275
+ encoding: type(accountEncodingInputType()),
1276
+ minContextSlot: bigint()
1277
+ },
1278
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1279
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.lookupTableAuthority }, info),
1280
+ type: accountInterface()
1281
+ }
1193
1282
  }),
1194
1283
  parsedTransactionInstructionType("ExtendLookupTableInstruction", {
1195
- lookupTableAccount: string(),
1196
- lookupTableAuthority: string(),
1284
+ // Nested Account interface
1285
+ lookupTableAccount: {
1286
+ args: {
1287
+ commitment: type(commitmentInputType()),
1288
+ dataSlice: type(dataSliceInputType()),
1289
+ encoding: type(accountEncodingInputType()),
1290
+ minContextSlot: bigint()
1291
+ },
1292
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1293
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.lookupTableAccount }, info),
1294
+ type: accountInterface()
1295
+ },
1296
+ // Nested Account interface
1297
+ lookupTableAuthority: {
1298
+ args: {
1299
+ commitment: type(commitmentInputType()),
1300
+ dataSlice: type(dataSliceInputType()),
1301
+ encoding: type(accountEncodingInputType()),
1302
+ minContextSlot: bigint()
1303
+ },
1304
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1305
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.lookupTableAuthority }, info),
1306
+ type: accountInterface()
1307
+ },
1197
1308
  newAddresses: list(string()),
1198
- payerAccount: string(),
1199
- systemProgram: string()
1309
+ // Nested Account interface
1310
+ payerAccount: {
1311
+ args: {
1312
+ commitment: type(commitmentInputType()),
1313
+ dataSlice: type(dataSliceInputType()),
1314
+ encoding: type(accountEncodingInputType()),
1315
+ minContextSlot: bigint()
1316
+ },
1317
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1318
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.payerAccount }, info),
1319
+ type: accountInterface()
1320
+ },
1321
+ // Nested Account interface
1322
+ systemProgram: {
1323
+ args: {
1324
+ commitment: type(commitmentInputType()),
1325
+ dataSlice: type(dataSliceInputType()),
1326
+ encoding: type(accountEncodingInputType()),
1327
+ minContextSlot: bigint()
1328
+ },
1329
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1330
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.systemProgram }, info),
1331
+ type: accountInterface()
1332
+ }
1200
1333
  }),
1201
1334
  parsedTransactionInstructionType("DeactivateLookupTableInstruction", {
1202
- lookupTableAccount: string(),
1203
- lookupTableAuthority: string()
1335
+ // Nested Account interface
1336
+ lookupTableAccount: {
1337
+ args: {
1338
+ commitment: type(commitmentInputType()),
1339
+ dataSlice: type(dataSliceInputType()),
1340
+ encoding: type(accountEncodingInputType()),
1341
+ minContextSlot: bigint()
1342
+ },
1343
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1344
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.lookupTableAccount }, info),
1345
+ type: accountInterface()
1346
+ },
1347
+ // Nested Account interface
1348
+ lookupTableAuthority: {
1349
+ args: {
1350
+ commitment: type(commitmentInputType()),
1351
+ dataSlice: type(dataSliceInputType()),
1352
+ encoding: type(accountEncodingInputType()),
1353
+ minContextSlot: bigint()
1354
+ },
1355
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1356
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.lookupTableAuthority }, info),
1357
+ type: accountInterface()
1358
+ }
1204
1359
  }),
1205
1360
  parsedTransactionInstructionType("CloseLookupTableInstruction", {
1206
- lookupTableAccount: string(),
1207
- lookupTableAuthority: string(),
1361
+ // Nested Account interface
1362
+ lookupTableAccount: {
1363
+ args: {
1364
+ commitment: type(commitmentInputType()),
1365
+ dataSlice: type(dataSliceInputType()),
1366
+ encoding: type(accountEncodingInputType()),
1367
+ minContextSlot: bigint()
1368
+ },
1369
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1370
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.lookupTableAccount }, info),
1371
+ type: accountInterface()
1372
+ },
1373
+ // Nested Account interface
1374
+ lookupTableAuthority: {
1375
+ args: {
1376
+ commitment: type(commitmentInputType()),
1377
+ dataSlice: type(dataSliceInputType()),
1378
+ encoding: type(accountEncodingInputType()),
1379
+ minContextSlot: bigint()
1380
+ },
1381
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1382
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.lookupTableAuthority }, info),
1383
+ type: accountInterface()
1384
+ },
1208
1385
  recipient: string()
1209
1386
  })
1210
1387
  ];
@@ -1215,12 +1392,34 @@ var parsedInstructionsBpfLoader = () => {
1215
1392
  if (!memoisedParsedInstructionsBpfLoader)
1216
1393
  memoisedParsedInstructionsBpfLoader = [
1217
1394
  parsedTransactionInstructionType("BpfLoaderWriteInstruction", {
1218
- account: string(),
1395
+ // Nested Account interface
1396
+ account: {
1397
+ args: {
1398
+ commitment: type(commitmentInputType()),
1399
+ dataSlice: type(dataSliceInputType()),
1400
+ encoding: type(accountEncodingInputType()),
1401
+ minContextSlot: bigint()
1402
+ },
1403
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1404
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
1405
+ type: accountInterface()
1406
+ },
1219
1407
  bytes: string(),
1220
1408
  offset: number()
1221
1409
  }),
1222
1410
  parsedTransactionInstructionType("BpfLoaderFinalizeInstruction", {
1223
- account: string()
1411
+ // Nested Account interface
1412
+ account: {
1413
+ args: {
1414
+ commitment: type(commitmentInputType()),
1415
+ dataSlice: type(dataSliceInputType()),
1416
+ encoding: type(accountEncodingInputType()),
1417
+ minContextSlot: bigint()
1418
+ },
1419
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1420
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
1421
+ type: accountInterface()
1422
+ }
1224
1423
  })
1225
1424
  ];
1226
1425
  return memoisedParsedInstructionsBpfLoader;
@@ -1230,55 +1429,329 @@ var parsedInstructionsBpfUpgradeableLoader = () => {
1230
1429
  if (!memoisedParsedInstructionsBpfUpgradeableLoader)
1231
1430
  memoisedParsedInstructionsBpfUpgradeableLoader = [
1232
1431
  parsedTransactionInstructionType("BpfUpgradeableLoaderInitializeBufferInstruction", {
1233
- account: string()
1432
+ // Nested Account interface
1433
+ account: {
1434
+ args: {
1435
+ commitment: type(commitmentInputType()),
1436
+ dataSlice: type(dataSliceInputType()),
1437
+ encoding: type(accountEncodingInputType()),
1438
+ minContextSlot: bigint()
1439
+ },
1440
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1441
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
1442
+ type: accountInterface()
1443
+ }
1234
1444
  }),
1235
1445
  parsedTransactionInstructionType("BpfUpgradeableLoaderWriteInstruction", {
1236
- account: string(),
1237
- authority: string(),
1446
+ // Nested Account interface
1447
+ account: {
1448
+ args: {
1449
+ commitment: type(commitmentInputType()),
1450
+ dataSlice: type(dataSliceInputType()),
1451
+ encoding: type(accountEncodingInputType()),
1452
+ minContextSlot: bigint()
1453
+ },
1454
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1455
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
1456
+ type: accountInterface()
1457
+ },
1458
+ // Nested Account interface
1459
+ authority: {
1460
+ args: {
1461
+ commitment: type(commitmentInputType()),
1462
+ dataSlice: type(dataSliceInputType()),
1463
+ encoding: type(accountEncodingInputType()),
1464
+ minContextSlot: bigint()
1465
+ },
1466
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1467
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
1468
+ type: accountInterface()
1469
+ },
1238
1470
  bytes: string(),
1239
1471
  offset: number()
1240
1472
  }),
1241
1473
  parsedTransactionInstructionType("BpfUpgradeableLoaderDeployWithMaxDataLenInstruction", {
1242
- authority: string(),
1243
- bufferAccount: string(),
1474
+ // Nested Account interface
1475
+ authority: {
1476
+ args: {
1477
+ commitment: type(commitmentInputType()),
1478
+ dataSlice: type(dataSliceInputType()),
1479
+ encoding: type(accountEncodingInputType()),
1480
+ minContextSlot: bigint()
1481
+ },
1482
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1483
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
1484
+ type: accountInterface()
1485
+ },
1486
+ // Nested Account interface
1487
+ bufferAccount: {
1488
+ args: {
1489
+ commitment: type(commitmentInputType()),
1490
+ dataSlice: type(dataSliceInputType()),
1491
+ encoding: type(accountEncodingInputType()),
1492
+ minContextSlot: bigint()
1493
+ },
1494
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1495
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.bufferAccount }, info),
1496
+ type: accountInterface()
1497
+ },
1244
1498
  clockSysvar: string(),
1245
1499
  maxDataLen: bigint(),
1246
- payerAccount: string(),
1247
- programAccount: string(),
1248
- programDataAccount: string(),
1249
- rentSysvar: string()
1250
- }),
1251
- parsedTransactionInstructionType("BpfUpgradeableLoaderUpgradeInstruction", {
1252
- authority: string(),
1253
- bufferAccount: string(),
1254
- clockSysvar: string(),
1255
- programAccount: string(),
1256
- programDataAccount: string(),
1257
- rentSysvar: string(),
1258
- spillAccount: string()
1259
- }),
1260
- parsedTransactionInstructionType("BpfUpgradeableLoaderSetAuthorityInstruction", {
1261
- account: string(),
1262
- authority: string(),
1263
- newAuthority: string()
1264
- }),
1265
- parsedTransactionInstructionType("BpfUpgradeableLoaderSetAuthorityCheckedInstruction", {
1266
- account: string(),
1267
- authority: string(),
1268
- newAuthority: string()
1269
- }),
1270
- parsedTransactionInstructionType("BpfUpgradeableLoaderCloseInstruction", {
1271
- account: string(),
1272
- authority: string(),
1273
- programAccount: string(),
1274
- recipient: string()
1275
- }),
1276
- parsedTransactionInstructionType("BpfUpgradeableLoaderExtendProgramInstruction", {
1500
+ // Nested Account interface
1501
+ payerAccount: {
1502
+ args: {
1503
+ commitment: type(commitmentInputType()),
1504
+ dataSlice: type(dataSliceInputType()),
1505
+ encoding: type(accountEncodingInputType()),
1506
+ minContextSlot: bigint()
1507
+ },
1508
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1509
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.payerAccount }, info),
1510
+ type: accountInterface()
1511
+ },
1512
+ // Nested Account interface
1513
+ programAccount: {
1514
+ args: {
1515
+ commitment: type(commitmentInputType()),
1516
+ dataSlice: type(dataSliceInputType()),
1517
+ encoding: type(accountEncodingInputType()),
1518
+ minContextSlot: bigint()
1519
+ },
1520
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1521
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.programAccount }, info),
1522
+ type: accountInterface()
1523
+ },
1524
+ // Nested Account interface
1525
+ programDataAccount: {
1526
+ args: {
1527
+ commitment: type(commitmentInputType()),
1528
+ dataSlice: type(dataSliceInputType()),
1529
+ encoding: type(accountEncodingInputType()),
1530
+ minContextSlot: bigint()
1531
+ },
1532
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1533
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.programDataAccount }, info),
1534
+ type: accountInterface()
1535
+ },
1536
+ rentSysvar: string()
1537
+ }),
1538
+ parsedTransactionInstructionType("BpfUpgradeableLoaderUpgradeInstruction", {
1539
+ // Nested Account interface
1540
+ authority: {
1541
+ args: {
1542
+ commitment: type(commitmentInputType()),
1543
+ dataSlice: type(dataSliceInputType()),
1544
+ encoding: type(accountEncodingInputType()),
1545
+ minContextSlot: bigint()
1546
+ },
1547
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1548
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
1549
+ type: accountInterface()
1550
+ },
1551
+ // Nested Account interface
1552
+ bufferAccount: {
1553
+ args: {
1554
+ commitment: type(commitmentInputType()),
1555
+ dataSlice: type(dataSliceInputType()),
1556
+ encoding: type(accountEncodingInputType()),
1557
+ minContextSlot: bigint()
1558
+ },
1559
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1560
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.bufferAccount }, info),
1561
+ type: accountInterface()
1562
+ },
1563
+ clockSysvar: string(),
1564
+ // Nested Account interface
1565
+ programAccount: {
1566
+ args: {
1567
+ commitment: type(commitmentInputType()),
1568
+ dataSlice: type(dataSliceInputType()),
1569
+ encoding: type(accountEncodingInputType()),
1570
+ minContextSlot: bigint()
1571
+ },
1572
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1573
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.programAccount }, info),
1574
+ type: accountInterface()
1575
+ },
1576
+ // Nested Account interface
1577
+ programDataAccount: {
1578
+ args: {
1579
+ commitment: type(commitmentInputType()),
1580
+ dataSlice: type(dataSliceInputType()),
1581
+ encoding: type(accountEncodingInputType()),
1582
+ minContextSlot: bigint()
1583
+ },
1584
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1585
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.programDataAccount }, info),
1586
+ type: accountInterface()
1587
+ },
1588
+ rentSysvar: string(),
1589
+ // Nested Account interface
1590
+ spillAccount: {
1591
+ args: {
1592
+ commitment: type(commitmentInputType()),
1593
+ dataSlice: type(dataSliceInputType()),
1594
+ encoding: type(accountEncodingInputType()),
1595
+ minContextSlot: bigint()
1596
+ },
1597
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1598
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.spillAccount }, info),
1599
+ type: accountInterface()
1600
+ }
1601
+ }),
1602
+ parsedTransactionInstructionType("BpfUpgradeableLoaderSetAuthorityInstruction", {
1603
+ account: string(),
1604
+ // Nested Account interface
1605
+ authority: {
1606
+ args: {
1607
+ commitment: type(commitmentInputType()),
1608
+ dataSlice: type(dataSliceInputType()),
1609
+ encoding: type(accountEncodingInputType()),
1610
+ minContextSlot: bigint()
1611
+ },
1612
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1613
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
1614
+ type: accountInterface()
1615
+ },
1616
+ // Nested Account interface
1617
+ newAuthority: {
1618
+ args: {
1619
+ commitment: type(commitmentInputType()),
1620
+ dataSlice: type(dataSliceInputType()),
1621
+ encoding: type(accountEncodingInputType()),
1622
+ minContextSlot: bigint()
1623
+ },
1624
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1625
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthority }, info),
1626
+ type: accountInterface()
1627
+ }
1628
+ }),
1629
+ parsedTransactionInstructionType("BpfUpgradeableLoaderSetAuthorityCheckedInstruction", {
1630
+ // Nested Account interface
1631
+ account: {
1632
+ args: {
1633
+ commitment: type(commitmentInputType()),
1634
+ dataSlice: type(dataSliceInputType()),
1635
+ encoding: type(accountEncodingInputType()),
1636
+ minContextSlot: bigint()
1637
+ },
1638
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1639
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
1640
+ type: accountInterface()
1641
+ },
1642
+ // Nested Account interface
1643
+ authority: {
1644
+ args: {
1645
+ commitment: type(commitmentInputType()),
1646
+ dataSlice: type(dataSliceInputType()),
1647
+ encoding: type(accountEncodingInputType()),
1648
+ minContextSlot: bigint()
1649
+ },
1650
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1651
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
1652
+ type: accountInterface()
1653
+ },
1654
+ // Nested Account interface
1655
+ newAuthority: {
1656
+ args: {
1657
+ commitment: type(commitmentInputType()),
1658
+ dataSlice: type(dataSliceInputType()),
1659
+ encoding: type(accountEncodingInputType()),
1660
+ minContextSlot: bigint()
1661
+ },
1662
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1663
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthority }, info),
1664
+ type: accountInterface()
1665
+ }
1666
+ }),
1667
+ parsedTransactionInstructionType("BpfUpgradeableLoaderCloseInstruction", {
1668
+ // Nested Account interface
1669
+ account: {
1670
+ args: {
1671
+ commitment: type(commitmentInputType()),
1672
+ dataSlice: type(dataSliceInputType()),
1673
+ encoding: type(accountEncodingInputType()),
1674
+ minContextSlot: bigint()
1675
+ },
1676
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1677
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
1678
+ type: accountInterface()
1679
+ },
1680
+ // Nested Account interface
1681
+ authority: {
1682
+ args: {
1683
+ commitment: type(commitmentInputType()),
1684
+ dataSlice: type(dataSliceInputType()),
1685
+ encoding: type(accountEncodingInputType()),
1686
+ minContextSlot: bigint()
1687
+ },
1688
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1689
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
1690
+ type: accountInterface()
1691
+ },
1692
+ // Nested Account interface
1693
+ programAccount: {
1694
+ args: {
1695
+ commitment: type(commitmentInputType()),
1696
+ dataSlice: type(dataSliceInputType()),
1697
+ encoding: type(accountEncodingInputType()),
1698
+ minContextSlot: bigint()
1699
+ },
1700
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1701
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.programAccount }, info),
1702
+ type: accountInterface()
1703
+ },
1704
+ recipient: string()
1705
+ }),
1706
+ parsedTransactionInstructionType("BpfUpgradeableLoaderExtendProgramInstruction", {
1277
1707
  additionalBytes: bigint(),
1278
- payerAccount: string(),
1279
- programAccount: string(),
1280
- programDataAccount: string(),
1281
- systemProgram: string()
1708
+ payerAccount: {
1709
+ args: {
1710
+ commitment: type(commitmentInputType()),
1711
+ dataSlice: type(dataSliceInputType()),
1712
+ encoding: type(accountEncodingInputType()),
1713
+ minContextSlot: bigint()
1714
+ },
1715
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1716
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.payerAccount }, info),
1717
+ type: accountInterface()
1718
+ },
1719
+ // Nested Account interface
1720
+ programAccount: {
1721
+ args: {
1722
+ commitment: type(commitmentInputType()),
1723
+ dataSlice: type(dataSliceInputType()),
1724
+ encoding: type(accountEncodingInputType()),
1725
+ minContextSlot: bigint()
1726
+ },
1727
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1728
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.programAccount }, info),
1729
+ type: accountInterface()
1730
+ },
1731
+ // Nested Account interface
1732
+ programDataAccount: {
1733
+ args: {
1734
+ commitment: type(commitmentInputType()),
1735
+ dataSlice: type(dataSliceInputType()),
1736
+ encoding: type(accountEncodingInputType()),
1737
+ minContextSlot: bigint()
1738
+ },
1739
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1740
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.programDataAccount }, info),
1741
+ type: accountInterface()
1742
+ },
1743
+ // Nested Account interface
1744
+ systemProgram: {
1745
+ args: {
1746
+ commitment: type(commitmentInputType()),
1747
+ dataSlice: type(dataSliceInputType()),
1748
+ encoding: type(accountEncodingInputType()),
1749
+ minContextSlot: bigint()
1750
+ },
1751
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1752
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.systemProgram }, info),
1753
+ type: accountInterface()
1754
+ }
1282
1755
  })
1283
1756
  ];
1284
1757
  return memoisedParsedInstructionsBpfUpgradeableLoader;
@@ -1288,29 +1761,221 @@ var parsedInstructionsSplAssociatedToken = () => {
1288
1761
  if (!memoisedParsedInstructionsSplAssociatedToken)
1289
1762
  memoisedParsedInstructionsSplAssociatedToken = [
1290
1763
  parsedTransactionInstructionType("SplAssociatedTokenCreateInstruction", {
1291
- account: string(),
1292
- mint: string(),
1293
- source: string(),
1294
- systemProgram: string(),
1295
- tokenProgram: string(),
1296
- wallet: string()
1764
+ // Nested Account interface
1765
+ account: {
1766
+ args: {
1767
+ commitment: type(commitmentInputType()),
1768
+ dataSlice: type(dataSliceInputType()),
1769
+ encoding: type(accountEncodingInputType()),
1770
+ minContextSlot: bigint()
1771
+ },
1772
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1773
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
1774
+ type: accountInterface()
1775
+ },
1776
+ mint: {
1777
+ args: {
1778
+ commitment: type(commitmentInputType()),
1779
+ dataSlice: type(dataSliceInputType()),
1780
+ encoding: type(accountEncodingInputType()),
1781
+ minContextSlot: bigint()
1782
+ },
1783
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1784
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
1785
+ type: accountInterface()
1786
+ },
1787
+ source: {
1788
+ args: {
1789
+ commitment: type(commitmentInputType()),
1790
+ dataSlice: type(dataSliceInputType()),
1791
+ encoding: type(accountEncodingInputType()),
1792
+ minContextSlot: bigint()
1793
+ },
1794
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1795
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.source }, info),
1796
+ type: accountInterface()
1797
+ },
1798
+ systemProgram: {
1799
+ args: {
1800
+ commitment: type(commitmentInputType()),
1801
+ dataSlice: type(dataSliceInputType()),
1802
+ encoding: type(accountEncodingInputType()),
1803
+ minContextSlot: bigint()
1804
+ },
1805
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1806
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.systemProgram }, info),
1807
+ type: accountInterface()
1808
+ },
1809
+ tokenProgram: {
1810
+ args: {
1811
+ commitment: type(commitmentInputType()),
1812
+ dataSlice: type(dataSliceInputType()),
1813
+ encoding: type(accountEncodingInputType()),
1814
+ minContextSlot: bigint()
1815
+ },
1816
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1817
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.tokenProgram }, info),
1818
+ type: accountInterface()
1819
+ },
1820
+ wallet: {
1821
+ args: {
1822
+ commitment: type(commitmentInputType()),
1823
+ dataSlice: type(dataSliceInputType()),
1824
+ encoding: type(accountEncodingInputType()),
1825
+ minContextSlot: bigint()
1826
+ },
1827
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1828
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.wallet }, info),
1829
+ type: accountInterface()
1830
+ }
1297
1831
  }),
1298
1832
  parsedTransactionInstructionType("SplAssociatedTokenCreateIdempotentInstruction", {
1299
- account: string(),
1300
- mint: string(),
1301
- source: string(),
1302
- systemProgram: string(),
1303
- tokenProgram: string(),
1304
- wallet: string()
1833
+ // Nested Account interface
1834
+ account: {
1835
+ args: {
1836
+ commitment: type(commitmentInputType()),
1837
+ dataSlice: type(dataSliceInputType()),
1838
+ encoding: type(accountEncodingInputType()),
1839
+ minContextSlot: bigint()
1840
+ },
1841
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1842
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
1843
+ type: accountInterface()
1844
+ },
1845
+ mint: {
1846
+ args: {
1847
+ commitment: type(commitmentInputType()),
1848
+ dataSlice: type(dataSliceInputType()),
1849
+ encoding: type(accountEncodingInputType()),
1850
+ minContextSlot: bigint()
1851
+ },
1852
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1853
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
1854
+ type: accountInterface()
1855
+ },
1856
+ source: {
1857
+ args: {
1858
+ commitment: type(commitmentInputType()),
1859
+ dataSlice: type(dataSliceInputType()),
1860
+ encoding: type(accountEncodingInputType()),
1861
+ minContextSlot: bigint()
1862
+ },
1863
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1864
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.source }, info),
1865
+ type: accountInterface()
1866
+ },
1867
+ systemProgram: {
1868
+ args: {
1869
+ commitment: type(commitmentInputType()),
1870
+ dataSlice: type(dataSliceInputType()),
1871
+ encoding: type(accountEncodingInputType()),
1872
+ minContextSlot: bigint()
1873
+ },
1874
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1875
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.systemProgram }, info),
1876
+ type: accountInterface()
1877
+ },
1878
+ tokenProgram: {
1879
+ args: {
1880
+ commitment: type(commitmentInputType()),
1881
+ dataSlice: type(dataSliceInputType()),
1882
+ encoding: type(accountEncodingInputType()),
1883
+ minContextSlot: bigint()
1884
+ },
1885
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1886
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.tokenProgram }, info),
1887
+ type: accountInterface()
1888
+ },
1889
+ wallet: {
1890
+ args: {
1891
+ commitment: type(commitmentInputType()),
1892
+ dataSlice: type(dataSliceInputType()),
1893
+ encoding: type(accountEncodingInputType()),
1894
+ minContextSlot: bigint()
1895
+ },
1896
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1897
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.wallet }, info),
1898
+ type: accountInterface()
1899
+ }
1305
1900
  }),
1306
1901
  parsedTransactionInstructionType("SplAssociatedTokenRecoverNestedInstruction", {
1307
- destination: string(),
1308
- nestedMint: string(),
1309
- nestedOwner: string(),
1310
- nestedSource: string(),
1311
- ownerMint: string(),
1312
- tokenProgram: string(),
1313
- wallet: string()
1902
+ destination: {
1903
+ args: {
1904
+ commitment: type(commitmentInputType()),
1905
+ dataSlice: type(dataSliceInputType()),
1906
+ encoding: type(accountEncodingInputType()),
1907
+ minContextSlot: bigint()
1908
+ },
1909
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1910
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.destination }, info),
1911
+ type: accountInterface()
1912
+ },
1913
+ nestedMint: {
1914
+ args: {
1915
+ commitment: type(commitmentInputType()),
1916
+ dataSlice: type(dataSliceInputType()),
1917
+ encoding: type(accountEncodingInputType()),
1918
+ minContextSlot: bigint()
1919
+ },
1920
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1921
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nestedMint }, info),
1922
+ type: accountInterface()
1923
+ },
1924
+ nestedOwner: {
1925
+ args: {
1926
+ commitment: type(commitmentInputType()),
1927
+ dataSlice: type(dataSliceInputType()),
1928
+ encoding: type(accountEncodingInputType()),
1929
+ minContextSlot: bigint()
1930
+ },
1931
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1932
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nestedOwner }, info),
1933
+ type: accountInterface()
1934
+ },
1935
+ nestedSource: {
1936
+ args: {
1937
+ commitment: type(commitmentInputType()),
1938
+ dataSlice: type(dataSliceInputType()),
1939
+ encoding: type(accountEncodingInputType()),
1940
+ minContextSlot: bigint()
1941
+ },
1942
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1943
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nestedSource }, info),
1944
+ type: accountInterface()
1945
+ },
1946
+ ownerMint: {
1947
+ args: {
1948
+ commitment: type(commitmentInputType()),
1949
+ dataSlice: type(dataSliceInputType()),
1950
+ encoding: type(accountEncodingInputType()),
1951
+ minContextSlot: bigint()
1952
+ },
1953
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1954
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.ownerMint }, info),
1955
+ type: accountInterface()
1956
+ },
1957
+ tokenProgram: {
1958
+ args: {
1959
+ commitment: type(commitmentInputType()),
1960
+ dataSlice: type(dataSliceInputType()),
1961
+ encoding: type(accountEncodingInputType()),
1962
+ minContextSlot: bigint()
1963
+ },
1964
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1965
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.tokenProgram }, info),
1966
+ type: accountInterface()
1967
+ },
1968
+ wallet: {
1969
+ args: {
1970
+ commitment: type(commitmentInputType()),
1971
+ dataSlice: type(dataSliceInputType()),
1972
+ encoding: type(accountEncodingInputType()),
1973
+ minContextSlot: bigint()
1974
+ },
1975
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1976
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.wallet }, info),
1977
+ type: accountInterface()
1978
+ }
1314
1979
  })
1315
1980
  ];
1316
1981
  return memoisedParsedInstructionsSplAssociatedToken;
@@ -1335,155 +2000,980 @@ var parsedInstructionsSplToken = () => {
1335
2000
  memoisedParsedInstructionsSplToken = [
1336
2001
  parsedTransactionInstructionType("SplTokenInitializeMintInstruction", {
1337
2002
  decimals: number(),
1338
- freezeAuthority: string(),
1339
- mint: string(),
1340
- mintAuthority: string(),
2003
+ freezeAuthority: {
2004
+ args: {
2005
+ commitment: type(commitmentInputType()),
2006
+ dataSlice: type(dataSliceInputType()),
2007
+ encoding: type(accountEncodingInputType()),
2008
+ minContextSlot: bigint()
2009
+ },
2010
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2011
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.freezeAuthority }, info),
2012
+ type: accountInterface()
2013
+ },
2014
+ mint: {
2015
+ args: {
2016
+ commitment: type(commitmentInputType()),
2017
+ dataSlice: type(dataSliceInputType()),
2018
+ encoding: type(accountEncodingInputType()),
2019
+ minContextSlot: bigint()
2020
+ },
2021
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2022
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2023
+ type: accountInterface()
2024
+ },
2025
+ mintAuthority: {
2026
+ args: {
2027
+ commitment: type(commitmentInputType()),
2028
+ dataSlice: type(dataSliceInputType()),
2029
+ encoding: type(accountEncodingInputType()),
2030
+ minContextSlot: bigint()
2031
+ },
2032
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2033
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mintAuthority }, info),
2034
+ type: accountInterface()
2035
+ },
1341
2036
  rentSysvar: string()
1342
2037
  }),
1343
2038
  parsedTransactionInstructionType("SplTokenInitializeMint2Instruction", {
1344
2039
  decimals: number(),
1345
- freezeAuthority: string(),
1346
- mint: string(),
1347
- mintAuthority: string()
2040
+ freezeAuthority: {
2041
+ args: {
2042
+ commitment: type(commitmentInputType()),
2043
+ dataSlice: type(dataSliceInputType()),
2044
+ encoding: type(accountEncodingInputType()),
2045
+ minContextSlot: bigint()
2046
+ },
2047
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2048
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.freezeAuthority }, info),
2049
+ type: accountInterface()
2050
+ },
2051
+ mint: {
2052
+ args: {
2053
+ commitment: type(commitmentInputType()),
2054
+ dataSlice: type(dataSliceInputType()),
2055
+ encoding: type(accountEncodingInputType()),
2056
+ minContextSlot: bigint()
2057
+ },
2058
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2059
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2060
+ type: accountInterface()
2061
+ },
2062
+ mintAuthority: {
2063
+ args: {
2064
+ commitment: type(commitmentInputType()),
2065
+ dataSlice: type(dataSliceInputType()),
2066
+ encoding: type(accountEncodingInputType()),
2067
+ minContextSlot: bigint()
2068
+ },
2069
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2070
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mintAuthority }, info),
2071
+ type: accountInterface()
2072
+ }
1348
2073
  }),
1349
2074
  parsedTransactionInstructionType("SplTokenInitializeAccountInstruction", {
1350
- account: string(),
1351
- mint: string(),
1352
- owner: string(),
2075
+ // Nested Account interface
2076
+ account: {
2077
+ args: {
2078
+ commitment: type(commitmentInputType()),
2079
+ dataSlice: type(dataSliceInputType()),
2080
+ encoding: type(accountEncodingInputType()),
2081
+ minContextSlot: bigint()
2082
+ },
2083
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2084
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2085
+ type: accountInterface()
2086
+ },
2087
+ mint: {
2088
+ args: {
2089
+ commitment: type(commitmentInputType()),
2090
+ dataSlice: type(dataSliceInputType()),
2091
+ encoding: type(accountEncodingInputType()),
2092
+ minContextSlot: bigint()
2093
+ },
2094
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2095
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2096
+ type: accountInterface()
2097
+ },
2098
+ // Nested Account interface
2099
+ owner: {
2100
+ args: {
2101
+ commitment: type(commitmentInputType()),
2102
+ dataSlice: type(dataSliceInputType()),
2103
+ encoding: type(accountEncodingInputType()),
2104
+ minContextSlot: bigint()
2105
+ },
2106
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2107
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
2108
+ type: accountInterface()
2109
+ },
1353
2110
  rentSysvar: string()
1354
2111
  }),
1355
2112
  parsedTransactionInstructionType("SplTokenInitializeAccount2Instruction", {
1356
- account: string(),
1357
- mint: string(),
1358
- owner: string(),
2113
+ // Nested Account interface
2114
+ account: {
2115
+ args: {
2116
+ commitment: type(commitmentInputType()),
2117
+ dataSlice: type(dataSliceInputType()),
2118
+ encoding: type(accountEncodingInputType()),
2119
+ minContextSlot: bigint()
2120
+ },
2121
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2122
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2123
+ type: accountInterface()
2124
+ },
2125
+ mint: {
2126
+ args: {
2127
+ commitment: type(commitmentInputType()),
2128
+ dataSlice: type(dataSliceInputType()),
2129
+ encoding: type(accountEncodingInputType()),
2130
+ minContextSlot: bigint()
2131
+ },
2132
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2133
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2134
+ type: accountInterface()
2135
+ },
2136
+ // Nested Account interface
2137
+ owner: {
2138
+ args: {
2139
+ commitment: type(commitmentInputType()),
2140
+ dataSlice: type(dataSliceInputType()),
2141
+ encoding: type(accountEncodingInputType()),
2142
+ minContextSlot: bigint()
2143
+ },
2144
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2145
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
2146
+ type: accountInterface()
2147
+ },
1359
2148
  rentSysvar: string()
1360
2149
  }),
1361
2150
  parsedTransactionInstructionType("SplTokenInitializeAccount3Instruction", {
1362
- account: string(),
1363
- mint: string(),
1364
- owner: string()
2151
+ // Nested Account interface
2152
+ account: {
2153
+ args: {
2154
+ commitment: type(commitmentInputType()),
2155
+ dataSlice: type(dataSliceInputType()),
2156
+ encoding: type(accountEncodingInputType()),
2157
+ minContextSlot: bigint()
2158
+ },
2159
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2160
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2161
+ type: accountInterface()
2162
+ },
2163
+ mint: {
2164
+ args: {
2165
+ commitment: type(commitmentInputType()),
2166
+ dataSlice: type(dataSliceInputType()),
2167
+ encoding: type(accountEncodingInputType()),
2168
+ minContextSlot: bigint()
2169
+ },
2170
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2171
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2172
+ type: accountInterface()
2173
+ },
2174
+ // Nested Account interface
2175
+ owner: {
2176
+ args: {
2177
+ commitment: type(commitmentInputType()),
2178
+ dataSlice: type(dataSliceInputType()),
2179
+ encoding: type(accountEncodingInputType()),
2180
+ minContextSlot: bigint()
2181
+ },
2182
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2183
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
2184
+ type: accountInterface()
2185
+ }
1365
2186
  }),
1366
2187
  parsedTransactionInstructionType("SplTokenInitializeMultisigInstruction", {
1367
2188
  m: number(),
1368
- multisig: string(),
2189
+ // Nested Account interface
2190
+ multisig: {
2191
+ args: {
2192
+ commitment: type(commitmentInputType()),
2193
+ dataSlice: type(dataSliceInputType()),
2194
+ encoding: type(accountEncodingInputType()),
2195
+ minContextSlot: bigint()
2196
+ },
2197
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2198
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisig }, info),
2199
+ type: accountInterface()
2200
+ },
1369
2201
  rentSysvar: string(),
1370
2202
  signers: list(string())
1371
2203
  }),
1372
2204
  parsedTransactionInstructionType("SplTokenInitializeMultisig2Instruction", {
1373
2205
  m: number(),
1374
- multisig: string(),
2206
+ // Nested Account interface
2207
+ multisig: {
2208
+ args: {
2209
+ commitment: type(commitmentInputType()),
2210
+ dataSlice: type(dataSliceInputType()),
2211
+ encoding: type(accountEncodingInputType()),
2212
+ minContextSlot: bigint()
2213
+ },
2214
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2215
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisig }, info),
2216
+ type: accountInterface()
2217
+ },
1375
2218
  signers: list(string())
1376
2219
  }),
1377
2220
  parsedTransactionInstructionType("SplTokenTransferInstruction", {
1378
2221
  amount: string(),
1379
- authority: string(),
1380
- destination: string(),
1381
- multisigAuthority: string(),
1382
- source: string()
2222
+ // Nested Account interface
2223
+ authority: {
2224
+ args: {
2225
+ commitment: type(commitmentInputType()),
2226
+ dataSlice: type(dataSliceInputType()),
2227
+ encoding: type(accountEncodingInputType()),
2228
+ minContextSlot: bigint()
2229
+ },
2230
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2231
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
2232
+ type: accountInterface()
2233
+ },
2234
+ destination: {
2235
+ args: {
2236
+ commitment: type(commitmentInputType()),
2237
+ dataSlice: type(dataSliceInputType()),
2238
+ encoding: type(accountEncodingInputType()),
2239
+ minContextSlot: bigint()
2240
+ },
2241
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2242
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.destination }, info),
2243
+ type: accountInterface()
2244
+ },
2245
+ // Nested Account interface
2246
+ multisigAuthority: {
2247
+ args: {
2248
+ commitment: type(commitmentInputType()),
2249
+ dataSlice: type(dataSliceInputType()),
2250
+ encoding: type(accountEncodingInputType()),
2251
+ minContextSlot: bigint()
2252
+ },
2253
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2254
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigAuthority }, info),
2255
+ type: accountInterface()
2256
+ },
2257
+ source: {
2258
+ args: {
2259
+ commitment: type(commitmentInputType()),
2260
+ dataSlice: type(dataSliceInputType()),
2261
+ encoding: type(accountEncodingInputType()),
2262
+ minContextSlot: bigint()
2263
+ },
2264
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2265
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.source }, info),
2266
+ type: accountInterface()
2267
+ }
1383
2268
  }),
1384
2269
  parsedTransactionInstructionType("SplTokenApproveInstruction", {
1385
2270
  amount: string(),
1386
- delegate: string(),
1387
- multisigOwner: string(),
1388
- owner: string(),
1389
- source: string()
2271
+ // Nested Account interface
2272
+ delegate: {
2273
+ args: {
2274
+ commitment: type(commitmentInputType()),
2275
+ dataSlice: type(dataSliceInputType()),
2276
+ encoding: type(accountEncodingInputType()),
2277
+ minContextSlot: bigint()
2278
+ },
2279
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2280
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.delegate }, info),
2281
+ type: accountInterface()
2282
+ },
2283
+ // Nested Account interface
2284
+ multisigOwner: {
2285
+ args: {
2286
+ commitment: type(commitmentInputType()),
2287
+ dataSlice: type(dataSliceInputType()),
2288
+ encoding: type(accountEncodingInputType()),
2289
+ minContextSlot: bigint()
2290
+ },
2291
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2292
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigOwner }, info),
2293
+ type: accountInterface()
2294
+ },
2295
+ // Nested Account interface
2296
+ owner: {
2297
+ args: {
2298
+ commitment: type(commitmentInputType()),
2299
+ dataSlice: type(dataSliceInputType()),
2300
+ encoding: type(accountEncodingInputType()),
2301
+ minContextSlot: bigint()
2302
+ },
2303
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2304
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
2305
+ type: accountInterface()
2306
+ },
2307
+ source: {
2308
+ args: {
2309
+ commitment: type(commitmentInputType()),
2310
+ dataSlice: type(dataSliceInputType()),
2311
+ encoding: type(accountEncodingInputType()),
2312
+ minContextSlot: bigint()
2313
+ },
2314
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2315
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.source }, info),
2316
+ type: accountInterface()
2317
+ }
1390
2318
  }),
1391
2319
  parsedTransactionInstructionType("SplTokenRevokeInstruction", {
1392
- multisigOwner: string(),
1393
- owner: string(),
1394
- source: string()
2320
+ // Nested Account interface
2321
+ multisigOwner: {
2322
+ args: {
2323
+ commitment: type(commitmentInputType()),
2324
+ dataSlice: type(dataSliceInputType()),
2325
+ encoding: type(accountEncodingInputType()),
2326
+ minContextSlot: bigint()
2327
+ },
2328
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2329
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigOwner }, info),
2330
+ type: accountInterface()
2331
+ },
2332
+ // Nested Account interface
2333
+ owner: {
2334
+ args: {
2335
+ commitment: type(commitmentInputType()),
2336
+ dataSlice: type(dataSliceInputType()),
2337
+ encoding: type(accountEncodingInputType()),
2338
+ minContextSlot: bigint()
2339
+ },
2340
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2341
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
2342
+ type: accountInterface()
2343
+ },
2344
+ source: {
2345
+ args: {
2346
+ commitment: type(commitmentInputType()),
2347
+ dataSlice: type(dataSliceInputType()),
2348
+ encoding: type(accountEncodingInputType()),
2349
+ minContextSlot: bigint()
2350
+ },
2351
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2352
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.source }, info),
2353
+ type: accountInterface()
2354
+ }
1395
2355
  }),
1396
2356
  parsedTransactionInstructionType("SplTokenSetAuthorityInstruction", {
1397
- authority: string(),
2357
+ // Nested Account interface
2358
+ authority: {
2359
+ args: {
2360
+ commitment: type(commitmentInputType()),
2361
+ dataSlice: type(dataSliceInputType()),
2362
+ encoding: type(accountEncodingInputType()),
2363
+ minContextSlot: bigint()
2364
+ },
2365
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2366
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
2367
+ type: accountInterface()
2368
+ },
1398
2369
  authorityType: string(),
1399
- multisigAuthority: string(),
1400
- newAuthority: string()
2370
+ // Nested Account interface
2371
+ multisigAuthority: {
2372
+ args: {
2373
+ commitment: type(commitmentInputType()),
2374
+ dataSlice: type(dataSliceInputType()),
2375
+ encoding: type(accountEncodingInputType()),
2376
+ minContextSlot: bigint()
2377
+ },
2378
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2379
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigAuthority }, info),
2380
+ type: accountInterface()
2381
+ },
2382
+ // Nested Account interface
2383
+ newAuthority: {
2384
+ args: {
2385
+ commitment: type(commitmentInputType()),
2386
+ dataSlice: type(dataSliceInputType()),
2387
+ encoding: type(accountEncodingInputType()),
2388
+ minContextSlot: bigint()
2389
+ },
2390
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2391
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthority }, info),
2392
+ type: accountInterface()
2393
+ }
1401
2394
  }),
1402
2395
  parsedTransactionInstructionType("SplTokenMintToInstruction", {
1403
- account: string(),
2396
+ // Nested Account interface
2397
+ account: {
2398
+ args: {
2399
+ commitment: type(commitmentInputType()),
2400
+ dataSlice: type(dataSliceInputType()),
2401
+ encoding: type(accountEncodingInputType()),
2402
+ minContextSlot: bigint()
2403
+ },
2404
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2405
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2406
+ type: accountInterface()
2407
+ },
1404
2408
  amount: string(),
1405
- authority: string(),
1406
- mint: string(),
1407
- mintAuthority: string(),
1408
- multisigMintAuthority: string()
2409
+ // Nested Account interface
2410
+ authority: {
2411
+ args: {
2412
+ commitment: type(commitmentInputType()),
2413
+ dataSlice: type(dataSliceInputType()),
2414
+ encoding: type(accountEncodingInputType()),
2415
+ minContextSlot: bigint()
2416
+ },
2417
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2418
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
2419
+ type: accountInterface()
2420
+ },
2421
+ mint: {
2422
+ args: {
2423
+ commitment: type(commitmentInputType()),
2424
+ dataSlice: type(dataSliceInputType()),
2425
+ encoding: type(accountEncodingInputType()),
2426
+ minContextSlot: bigint()
2427
+ },
2428
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2429
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2430
+ type: accountInterface()
2431
+ },
2432
+ mintAuthority: {
2433
+ args: {
2434
+ commitment: type(commitmentInputType()),
2435
+ dataSlice: type(dataSliceInputType()),
2436
+ encoding: type(accountEncodingInputType()),
2437
+ minContextSlot: bigint()
2438
+ },
2439
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2440
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mintAuthority }, info),
2441
+ type: accountInterface()
2442
+ },
2443
+ // Nested Account interface
2444
+ multisigMintAuthority: {
2445
+ args: {
2446
+ commitment: type(commitmentInputType()),
2447
+ dataSlice: type(dataSliceInputType()),
2448
+ encoding: type(accountEncodingInputType()),
2449
+ minContextSlot: bigint()
2450
+ },
2451
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2452
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigMintAuthority }, info),
2453
+ type: accountInterface()
2454
+ }
1409
2455
  }),
1410
2456
  parsedTransactionInstructionType("SplTokenBurnInstruction", {
1411
- account: string(),
2457
+ // Nested Account interface
2458
+ account: {
2459
+ args: {
2460
+ commitment: type(commitmentInputType()),
2461
+ dataSlice: type(dataSliceInputType()),
2462
+ encoding: type(accountEncodingInputType()),
2463
+ minContextSlot: bigint()
2464
+ },
2465
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2466
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2467
+ type: accountInterface()
2468
+ },
1412
2469
  amount: string(),
1413
- authority: string(),
1414
- mint: string(),
1415
- multisigAuthority: string()
2470
+ // Nested Account interface
2471
+ authority: {
2472
+ args: {
2473
+ commitment: type(commitmentInputType()),
2474
+ dataSlice: type(dataSliceInputType()),
2475
+ encoding: type(accountEncodingInputType()),
2476
+ minContextSlot: bigint()
2477
+ },
2478
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2479
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
2480
+ type: accountInterface()
2481
+ },
2482
+ mint: {
2483
+ args: {
2484
+ commitment: type(commitmentInputType()),
2485
+ dataSlice: type(dataSliceInputType()),
2486
+ encoding: type(accountEncodingInputType()),
2487
+ minContextSlot: bigint()
2488
+ },
2489
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2490
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2491
+ type: accountInterface()
2492
+ },
2493
+ // Nested Account interface
2494
+ multisigAuthority: {
2495
+ args: {
2496
+ commitment: type(commitmentInputType()),
2497
+ dataSlice: type(dataSliceInputType()),
2498
+ encoding: type(accountEncodingInputType()),
2499
+ minContextSlot: bigint()
2500
+ },
2501
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2502
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigAuthority }, info),
2503
+ type: accountInterface()
2504
+ }
1416
2505
  }),
1417
2506
  parsedTransactionInstructionType("SplTokenCloseAccountInstruction", {
1418
- account: string(),
1419
- destination: string(),
1420
- multisigOwner: string(),
1421
- owner: string()
2507
+ // Nested Account interface
2508
+ account: {
2509
+ args: {
2510
+ commitment: type(commitmentInputType()),
2511
+ dataSlice: type(dataSliceInputType()),
2512
+ encoding: type(accountEncodingInputType()),
2513
+ minContextSlot: bigint()
2514
+ },
2515
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2516
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2517
+ type: accountInterface()
2518
+ },
2519
+ destination: {
2520
+ args: {
2521
+ commitment: type(commitmentInputType()),
2522
+ dataSlice: type(dataSliceInputType()),
2523
+ encoding: type(accountEncodingInputType()),
2524
+ minContextSlot: bigint()
2525
+ },
2526
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2527
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.destination }, info),
2528
+ type: accountInterface()
2529
+ },
2530
+ // Nested Account interface
2531
+ multisigOwner: {
2532
+ args: {
2533
+ commitment: type(commitmentInputType()),
2534
+ dataSlice: type(dataSliceInputType()),
2535
+ encoding: type(accountEncodingInputType()),
2536
+ minContextSlot: bigint()
2537
+ },
2538
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2539
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigOwner }, info),
2540
+ type: accountInterface()
2541
+ },
2542
+ // Nested Account interface
2543
+ owner: {
2544
+ args: {
2545
+ commitment: type(commitmentInputType()),
2546
+ dataSlice: type(dataSliceInputType()),
2547
+ encoding: type(accountEncodingInputType()),
2548
+ minContextSlot: bigint()
2549
+ },
2550
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2551
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
2552
+ type: accountInterface()
2553
+ }
1422
2554
  }),
1423
2555
  parsedTransactionInstructionType("SplTokenFreezeAccountInstruction", {
1424
- account: string(),
1425
- freezeAuthority: string(),
1426
- mint: string(),
1427
- multisigFreezeAuthority: string()
2556
+ // Nested Account interface
2557
+ account: {
2558
+ args: {
2559
+ commitment: type(commitmentInputType()),
2560
+ dataSlice: type(dataSliceInputType()),
2561
+ encoding: type(accountEncodingInputType()),
2562
+ minContextSlot: bigint()
2563
+ },
2564
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2565
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2566
+ type: accountInterface()
2567
+ },
2568
+ freezeAuthority: {
2569
+ args: {
2570
+ commitment: type(commitmentInputType()),
2571
+ dataSlice: type(dataSliceInputType()),
2572
+ encoding: type(accountEncodingInputType()),
2573
+ minContextSlot: bigint()
2574
+ },
2575
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2576
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.freezeAuthority }, info),
2577
+ type: accountInterface()
2578
+ },
2579
+ mint: {
2580
+ args: {
2581
+ commitment: type(commitmentInputType()),
2582
+ dataSlice: type(dataSliceInputType()),
2583
+ encoding: type(accountEncodingInputType()),
2584
+ minContextSlot: bigint()
2585
+ },
2586
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2587
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2588
+ type: accountInterface()
2589
+ },
2590
+ // Nested Account interface
2591
+ multisigFreezeAuthority: {
2592
+ args: {
2593
+ commitment: type(commitmentInputType()),
2594
+ dataSlice: type(dataSliceInputType()),
2595
+ encoding: type(accountEncodingInputType()),
2596
+ minContextSlot: bigint()
2597
+ },
2598
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2599
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigFreezeAuthority }, info),
2600
+ type: accountInterface()
2601
+ }
1428
2602
  }),
1429
2603
  parsedTransactionInstructionType("SplTokenThawAccountInstruction", {
1430
- account: string(),
1431
- freezeAuthority: string(),
1432
- mint: string(),
1433
- multisigFreezeAuthority: string()
2604
+ // Nested Account interface
2605
+ account: {
2606
+ args: {
2607
+ commitment: type(commitmentInputType()),
2608
+ dataSlice: type(dataSliceInputType()),
2609
+ encoding: type(accountEncodingInputType()),
2610
+ minContextSlot: bigint()
2611
+ },
2612
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2613
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2614
+ type: accountInterface()
2615
+ },
2616
+ freezeAuthority: {
2617
+ args: {
2618
+ commitment: type(commitmentInputType()),
2619
+ dataSlice: type(dataSliceInputType()),
2620
+ encoding: type(accountEncodingInputType()),
2621
+ minContextSlot: bigint()
2622
+ },
2623
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2624
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.freezeAuthority }, info),
2625
+ type: accountInterface()
2626
+ },
2627
+ mint: {
2628
+ args: {
2629
+ commitment: type(commitmentInputType()),
2630
+ dataSlice: type(dataSliceInputType()),
2631
+ encoding: type(accountEncodingInputType()),
2632
+ minContextSlot: bigint()
2633
+ },
2634
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2635
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2636
+ type: accountInterface()
2637
+ },
2638
+ // Nested Account interface
2639
+ multisigFreezeAuthority: {
2640
+ args: {
2641
+ commitment: type(commitmentInputType()),
2642
+ dataSlice: type(dataSliceInputType()),
2643
+ encoding: type(accountEncodingInputType()),
2644
+ minContextSlot: bigint()
2645
+ },
2646
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2647
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigFreezeAuthority }, info),
2648
+ type: accountInterface()
2649
+ }
1434
2650
  }),
1435
2651
  parsedTransactionInstructionType("SplTokenTransferCheckedInstruction", {
1436
- authority: string(),
1437
- destination: string(),
1438
- mint: string(),
1439
- multisigAuthority: string(),
1440
- source: string(),
2652
+ // Nested Account interface
2653
+ authority: {
2654
+ args: {
2655
+ commitment: type(commitmentInputType()),
2656
+ dataSlice: type(dataSliceInputType()),
2657
+ encoding: type(accountEncodingInputType()),
2658
+ minContextSlot: bigint()
2659
+ },
2660
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2661
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
2662
+ type: accountInterface()
2663
+ },
2664
+ destination: {
2665
+ args: {
2666
+ commitment: type(commitmentInputType()),
2667
+ dataSlice: type(dataSliceInputType()),
2668
+ encoding: type(accountEncodingInputType()),
2669
+ minContextSlot: bigint()
2670
+ },
2671
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2672
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.destination }, info),
2673
+ type: accountInterface()
2674
+ },
2675
+ mint: {
2676
+ args: {
2677
+ commitment: type(commitmentInputType()),
2678
+ dataSlice: type(dataSliceInputType()),
2679
+ encoding: type(accountEncodingInputType()),
2680
+ minContextSlot: bigint()
2681
+ },
2682
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2683
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2684
+ type: accountInterface()
2685
+ },
2686
+ // Nested Account interface
2687
+ multisigAuthority: {
2688
+ args: {
2689
+ commitment: type(commitmentInputType()),
2690
+ dataSlice: type(dataSliceInputType()),
2691
+ encoding: type(accountEncodingInputType()),
2692
+ minContextSlot: bigint()
2693
+ },
2694
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2695
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigAuthority }, info),
2696
+ type: accountInterface()
2697
+ },
2698
+ source: {
2699
+ args: {
2700
+ commitment: type(commitmentInputType()),
2701
+ dataSlice: type(dataSliceInputType()),
2702
+ encoding: type(accountEncodingInputType()),
2703
+ minContextSlot: bigint()
2704
+ },
2705
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2706
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.source }, info),
2707
+ type: accountInterface()
2708
+ },
1441
2709
  tokenAmount: string()
1442
2710
  }),
1443
2711
  parsedTransactionInstructionType("SplTokenApproveCheckedInstruction", {
1444
- delegate: string(),
1445
- mint: string(),
1446
- multisigOwner: string(),
1447
- owner: string(),
1448
- source: string(),
2712
+ // Nested Account interface
2713
+ delegate: {
2714
+ args: {
2715
+ commitment: type(commitmentInputType()),
2716
+ dataSlice: type(dataSliceInputType()),
2717
+ encoding: type(accountEncodingInputType()),
2718
+ minContextSlot: bigint()
2719
+ },
2720
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2721
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.delegate }, info),
2722
+ type: accountInterface()
2723
+ },
2724
+ mint: {
2725
+ args: {
2726
+ commitment: type(commitmentInputType()),
2727
+ dataSlice: type(dataSliceInputType()),
2728
+ encoding: type(accountEncodingInputType()),
2729
+ minContextSlot: bigint()
2730
+ },
2731
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2732
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2733
+ type: accountInterface()
2734
+ },
2735
+ // Nested Account interface
2736
+ multisigOwner: {
2737
+ args: {
2738
+ commitment: type(commitmentInputType()),
2739
+ dataSlice: type(dataSliceInputType()),
2740
+ encoding: type(accountEncodingInputType()),
2741
+ minContextSlot: bigint()
2742
+ },
2743
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2744
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigOwner }, info),
2745
+ type: accountInterface()
2746
+ },
2747
+ // Nested Account interface
2748
+ owner: {
2749
+ args: {
2750
+ commitment: type(commitmentInputType()),
2751
+ dataSlice: type(dataSliceInputType()),
2752
+ encoding: type(accountEncodingInputType()),
2753
+ minContextSlot: bigint()
2754
+ },
2755
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2756
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
2757
+ type: accountInterface()
2758
+ },
2759
+ source: {
2760
+ args: {
2761
+ commitment: type(commitmentInputType()),
2762
+ dataSlice: type(dataSliceInputType()),
2763
+ encoding: type(accountEncodingInputType()),
2764
+ minContextSlot: bigint()
2765
+ },
2766
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2767
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.source }, info),
2768
+ type: accountInterface()
2769
+ },
1449
2770
  tokenAmount: string()
1450
2771
  }),
1451
2772
  parsedTransactionInstructionType("SplTokenMintToCheckedInstruction", {
1452
- account: string(),
1453
- authority: string(),
1454
- mint: string(),
1455
- mintAuthority: string(),
1456
- multisigMintAuthority: string(),
2773
+ // Nested Account interface
2774
+ account: {
2775
+ args: {
2776
+ commitment: type(commitmentInputType()),
2777
+ dataSlice: type(dataSliceInputType()),
2778
+ encoding: type(accountEncodingInputType()),
2779
+ minContextSlot: bigint()
2780
+ },
2781
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2782
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2783
+ type: accountInterface()
2784
+ },
2785
+ // Nested Account interface
2786
+ authority: {
2787
+ args: {
2788
+ commitment: type(commitmentInputType()),
2789
+ dataSlice: type(dataSliceInputType()),
2790
+ encoding: type(accountEncodingInputType()),
2791
+ minContextSlot: bigint()
2792
+ },
2793
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2794
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
2795
+ type: accountInterface()
2796
+ },
2797
+ mint: {
2798
+ args: {
2799
+ commitment: type(commitmentInputType()),
2800
+ dataSlice: type(dataSliceInputType()),
2801
+ encoding: type(accountEncodingInputType()),
2802
+ minContextSlot: bigint()
2803
+ },
2804
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2805
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2806
+ type: accountInterface()
2807
+ },
2808
+ mintAuthority: {
2809
+ args: {
2810
+ commitment: type(commitmentInputType()),
2811
+ dataSlice: type(dataSliceInputType()),
2812
+ encoding: type(accountEncodingInputType()),
2813
+ minContextSlot: bigint()
2814
+ },
2815
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2816
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mintAuthority }, info),
2817
+ type: accountInterface()
2818
+ },
2819
+ // Nested Account interface
2820
+ multisigMintAuthority: {
2821
+ args: {
2822
+ commitment: type(commitmentInputType()),
2823
+ dataSlice: type(dataSliceInputType()),
2824
+ encoding: type(accountEncodingInputType()),
2825
+ minContextSlot: bigint()
2826
+ },
2827
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2828
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigMintAuthority }, info),
2829
+ type: accountInterface()
2830
+ },
1457
2831
  tokenAmount: string()
1458
2832
  }),
1459
2833
  parsedTransactionInstructionType("SplTokenBurnCheckedInstruction", {
1460
- account: string(),
1461
- authority: string(),
1462
- mint: string(),
1463
- multisigAuthority: string(),
2834
+ // Nested Account interface
2835
+ account: {
2836
+ args: {
2837
+ commitment: type(commitmentInputType()),
2838
+ dataSlice: type(dataSliceInputType()),
2839
+ encoding: type(accountEncodingInputType()),
2840
+ minContextSlot: bigint()
2841
+ },
2842
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2843
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2844
+ type: accountInterface()
2845
+ },
2846
+ // Nested Account interface
2847
+ authority: {
2848
+ args: {
2849
+ commitment: type(commitmentInputType()),
2850
+ dataSlice: type(dataSliceInputType()),
2851
+ encoding: type(accountEncodingInputType()),
2852
+ minContextSlot: bigint()
2853
+ },
2854
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2855
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
2856
+ type: accountInterface()
2857
+ },
2858
+ mint: {
2859
+ args: {
2860
+ commitment: type(commitmentInputType()),
2861
+ dataSlice: type(dataSliceInputType()),
2862
+ encoding: type(accountEncodingInputType()),
2863
+ minContextSlot: bigint()
2864
+ },
2865
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2866
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2867
+ type: accountInterface()
2868
+ },
2869
+ // Nested Account interface
2870
+ multisigAuthority: {
2871
+ args: {
2872
+ commitment: type(commitmentInputType()),
2873
+ dataSlice: type(dataSliceInputType()),
2874
+ encoding: type(accountEncodingInputType()),
2875
+ minContextSlot: bigint()
2876
+ },
2877
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2878
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.multisigAuthority }, info),
2879
+ type: accountInterface()
2880
+ },
1464
2881
  tokenAmount: string()
1465
2882
  }),
1466
2883
  parsedTransactionInstructionType("SplTokenSyncNativeInstruction", {
1467
- account: string()
2884
+ // Nested Account interface
2885
+ account: {
2886
+ args: {
2887
+ commitment: type(commitmentInputType()),
2888
+ dataSlice: type(dataSliceInputType()),
2889
+ encoding: type(accountEncodingInputType()),
2890
+ minContextSlot: bigint()
2891
+ },
2892
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2893
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2894
+ type: accountInterface()
2895
+ }
1468
2896
  }),
1469
2897
  parsedTransactionInstructionType("SplTokenGetAccountDataSizeInstruction", {
1470
2898
  extensionTypes: list(string()),
1471
- mint: string()
2899
+ mint: {
2900
+ args: {
2901
+ commitment: type(commitmentInputType()),
2902
+ dataSlice: type(dataSliceInputType()),
2903
+ encoding: type(accountEncodingInputType()),
2904
+ minContextSlot: bigint()
2905
+ },
2906
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2907
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2908
+ type: accountInterface()
2909
+ }
1472
2910
  }),
1473
2911
  parsedTransactionInstructionType("SplTokenInitializeImmutableOwnerInstruction", {
1474
- account: string()
2912
+ // Nested Account interface
2913
+ account: {
2914
+ args: {
2915
+ commitment: type(commitmentInputType()),
2916
+ dataSlice: type(dataSliceInputType()),
2917
+ encoding: type(accountEncodingInputType()),
2918
+ minContextSlot: bigint()
2919
+ },
2920
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2921
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
2922
+ type: accountInterface()
2923
+ }
1475
2924
  }),
1476
2925
  parsedTransactionInstructionType("SplTokenAmountToUiAmountInstruction", {
1477
2926
  amount: string(),
1478
- mint: string()
2927
+ mint: {
2928
+ args: {
2929
+ commitment: type(commitmentInputType()),
2930
+ dataSlice: type(dataSliceInputType()),
2931
+ encoding: type(accountEncodingInputType()),
2932
+ minContextSlot: bigint()
2933
+ },
2934
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2935
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2936
+ type: accountInterface()
2937
+ }
1479
2938
  }),
1480
2939
  parsedTransactionInstructionType("SplTokenUiAmountToAmountInstruction", {
1481
- mint: string(),
2940
+ mint: {
2941
+ args: {
2942
+ commitment: type(commitmentInputType()),
2943
+ dataSlice: type(dataSliceInputType()),
2944
+ encoding: type(accountEncodingInputType()),
2945
+ minContextSlot: bigint()
2946
+ },
2947
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2948
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2949
+ type: accountInterface()
2950
+ },
1482
2951
  uiAmount: string()
1483
2952
  }),
1484
2953
  parsedTransactionInstructionType("SplTokenInitializeMintCloseAuthorityInstruction", {
1485
- mint: string(),
1486
- newAuthority: string()
2954
+ mint: {
2955
+ args: {
2956
+ commitment: type(commitmentInputType()),
2957
+ dataSlice: type(dataSliceInputType()),
2958
+ encoding: type(accountEncodingInputType()),
2959
+ minContextSlot: bigint()
2960
+ },
2961
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2962
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.mint }, info),
2963
+ type: accountInterface()
2964
+ },
2965
+ // Nested Account interface
2966
+ newAuthority: {
2967
+ args: {
2968
+ commitment: type(commitmentInputType()),
2969
+ dataSlice: type(dataSliceInputType()),
2970
+ encoding: type(accountEncodingInputType()),
2971
+ minContextSlot: bigint()
2972
+ },
2973
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2974
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthority }, info),
2975
+ type: accountInterface()
2976
+ }
1487
2977
  })
1488
2978
  // TODO: Extensions!
1489
2979
  // - TransferFeeExtension
@@ -1508,7 +2998,18 @@ var lockup = () => {
1508
2998
  if (!memoisedLockup)
1509
2999
  memoisedLockup = new GraphQLObjectType({
1510
3000
  fields: {
1511
- custodian: string(),
3001
+ // Nested Account interface
3002
+ custodian: {
3003
+ args: {
3004
+ commitment: type(commitmentInputType()),
3005
+ dataSlice: type(dataSliceInputType()),
3006
+ encoding: type(accountEncodingInputType()),
3007
+ minContextSlot: bigint()
3008
+ },
3009
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3010
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.custodian }, info),
3011
+ type: accountInterface()
3012
+ },
1512
3013
  epoch: bigint(),
1513
3014
  unixTimestamp: bigint()
1514
3015
  },
@@ -1522,113 +3023,649 @@ var parsedInstructionsStake = () => {
1522
3023
  memoisedParsedInstructionsStake = [
1523
3024
  parsedTransactionInstructionType("StakeInitializeInstruction", {
1524
3025
  authorized: object("StakeInitializeInstructionAuthorized", {
1525
- staker: string(),
1526
- withdrawer: string()
3026
+ // Nested Account interface
3027
+ staker: {
3028
+ args: {
3029
+ commitment: type(commitmentInputType()),
3030
+ dataSlice: type(dataSliceInputType()),
3031
+ encoding: type(accountEncodingInputType()),
3032
+ minContextSlot: bigint()
3033
+ },
3034
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3035
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.staker }, info),
3036
+ type: accountInterface()
3037
+ },
3038
+ // Nested Account interface
3039
+ withdrawer: {
3040
+ args: {
3041
+ commitment: type(commitmentInputType()),
3042
+ dataSlice: type(dataSliceInputType()),
3043
+ encoding: type(accountEncodingInputType()),
3044
+ minContextSlot: bigint()
3045
+ },
3046
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3047
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.withdrawer }, info),
3048
+ type: accountInterface()
3049
+ }
1527
3050
  }),
1528
3051
  lockup: object("StakeInitializeInstructionLockup", {
1529
- custodian: string(),
3052
+ // Nested Account interface
3053
+ custodian: {
3054
+ args: {
3055
+ commitment: type(commitmentInputType()),
3056
+ dataSlice: type(dataSliceInputType()),
3057
+ encoding: type(accountEncodingInputType()),
3058
+ minContextSlot: bigint()
3059
+ },
3060
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3061
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.custodian }, info),
3062
+ type: accountInterface()
3063
+ },
1530
3064
  epoch: bigint(),
1531
3065
  unixTimestamp: bigint()
1532
3066
  }),
1533
3067
  rentSysvar: string(),
1534
- stakeAccount: string()
3068
+ // Nested Account interface
3069
+ stakeAccount: {
3070
+ args: {
3071
+ commitment: type(commitmentInputType()),
3072
+ dataSlice: type(dataSliceInputType()),
3073
+ encoding: type(accountEncodingInputType()),
3074
+ minContextSlot: bigint()
3075
+ },
3076
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3077
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3078
+ type: accountInterface()
3079
+ }
1535
3080
  }),
1536
3081
  parsedTransactionInstructionType("StakeAuthorizeInstruction", {
1537
- authority: string(),
3082
+ // Nested Account interface
3083
+ authority: {
3084
+ args: {
3085
+ commitment: type(commitmentInputType()),
3086
+ dataSlice: type(dataSliceInputType()),
3087
+ encoding: type(accountEncodingInputType()),
3088
+ minContextSlot: bigint()
3089
+ },
3090
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3091
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
3092
+ type: accountInterface()
3093
+ },
1538
3094
  authorityType: string(),
1539
3095
  clockSysvar: string(),
1540
- custodian: string(),
1541
- newAuthority: string(),
1542
- stakeAccount: string()
3096
+ // Nested Account interface
3097
+ custodian: {
3098
+ args: {
3099
+ commitment: type(commitmentInputType()),
3100
+ dataSlice: type(dataSliceInputType()),
3101
+ encoding: type(accountEncodingInputType()),
3102
+ minContextSlot: bigint()
3103
+ },
3104
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3105
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.custodian }, info),
3106
+ type: accountInterface()
3107
+ },
3108
+ // Nested Account interface
3109
+ newAuthority: {
3110
+ args: {
3111
+ commitment: type(commitmentInputType()),
3112
+ dataSlice: type(dataSliceInputType()),
3113
+ encoding: type(accountEncodingInputType()),
3114
+ minContextSlot: bigint()
3115
+ },
3116
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3117
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthority }, info),
3118
+ type: accountInterface()
3119
+ },
3120
+ // Nested Account interface
3121
+ stakeAccount: {
3122
+ args: {
3123
+ commitment: type(commitmentInputType()),
3124
+ dataSlice: type(dataSliceInputType()),
3125
+ encoding: type(accountEncodingInputType()),
3126
+ minContextSlot: bigint()
3127
+ },
3128
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3129
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3130
+ type: accountInterface()
3131
+ }
1543
3132
  }),
1544
3133
  parsedTransactionInstructionType("StakeDelegateStakeInstruction", {
1545
3134
  clockSysvar: string(),
1546
- stakeAccount: string(),
1547
- stakeAuthority: string(),
1548
- stakeConfigAccount: string(),
3135
+ // Nested Account interface
3136
+ stakeAccount: {
3137
+ args: {
3138
+ commitment: type(commitmentInputType()),
3139
+ dataSlice: type(dataSliceInputType()),
3140
+ encoding: type(accountEncodingInputType()),
3141
+ minContextSlot: bigint()
3142
+ },
3143
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3144
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3145
+ type: accountInterface()
3146
+ },
3147
+ // Nested Account interface
3148
+ stakeAuthority: {
3149
+ args: {
3150
+ commitment: type(commitmentInputType()),
3151
+ dataSlice: type(dataSliceInputType()),
3152
+ encoding: type(accountEncodingInputType()),
3153
+ minContextSlot: bigint()
3154
+ },
3155
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3156
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAuthority }, info),
3157
+ type: accountInterface()
3158
+ },
3159
+ // Nested Account interface
3160
+ stakeConfigAccount: {
3161
+ args: {
3162
+ commitment: type(commitmentInputType()),
3163
+ dataSlice: type(dataSliceInputType()),
3164
+ encoding: type(accountEncodingInputType()),
3165
+ minContextSlot: bigint()
3166
+ },
3167
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3168
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeConfigAccount }, info),
3169
+ type: accountInterface()
3170
+ },
1549
3171
  stakeHistorySysvar: string(),
1550
- voteAccount: string()
3172
+ // Nested Account interface
3173
+ voteAccount: {
3174
+ args: {
3175
+ commitment: type(commitmentInputType()),
3176
+ dataSlice: type(dataSliceInputType()),
3177
+ encoding: type(accountEncodingInputType()),
3178
+ minContextSlot: bigint()
3179
+ },
3180
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3181
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
3182
+ type: accountInterface()
3183
+ }
1551
3184
  }),
1552
3185
  parsedTransactionInstructionType("StakeSplitInstruction", {
1553
3186
  lamports: bigint(),
1554
3187
  newSplitAccount: string(),
1555
- stakeAccount: string(),
1556
- stakeAuthority: string()
3188
+ // Nested Account interface
3189
+ stakeAccount: {
3190
+ args: {
3191
+ commitment: type(commitmentInputType()),
3192
+ dataSlice: type(dataSliceInputType()),
3193
+ encoding: type(accountEncodingInputType()),
3194
+ minContextSlot: bigint()
3195
+ },
3196
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3197
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3198
+ type: accountInterface()
3199
+ },
3200
+ // Nested Account interface
3201
+ stakeAuthority: {
3202
+ args: {
3203
+ commitment: type(commitmentInputType()),
3204
+ dataSlice: type(dataSliceInputType()),
3205
+ encoding: type(accountEncodingInputType()),
3206
+ minContextSlot: bigint()
3207
+ },
3208
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3209
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAuthority }, info),
3210
+ type: accountInterface()
3211
+ }
1557
3212
  }),
1558
3213
  parsedTransactionInstructionType("StakeWithdrawInstruction", {
1559
3214
  clockSysvar: string(),
1560
- destination: string(),
3215
+ destination: {
3216
+ args: {
3217
+ commitment: type(commitmentInputType()),
3218
+ dataSlice: type(dataSliceInputType()),
3219
+ encoding: type(accountEncodingInputType()),
3220
+ minContextSlot: bigint()
3221
+ },
3222
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3223
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.destination }, info),
3224
+ type: accountInterface()
3225
+ },
1561
3226
  lamports: bigint(),
1562
- stakeAccount: string(),
1563
- withdrawAuthority: string()
3227
+ // Nested Account interface
3228
+ stakeAccount: {
3229
+ args: {
3230
+ commitment: type(commitmentInputType()),
3231
+ dataSlice: type(dataSliceInputType()),
3232
+ encoding: type(accountEncodingInputType()),
3233
+ minContextSlot: bigint()
3234
+ },
3235
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3236
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3237
+ type: accountInterface()
3238
+ },
3239
+ // Nested Account interface
3240
+ withdrawAuthority: {
3241
+ args: {
3242
+ commitment: type(commitmentInputType()),
3243
+ dataSlice: type(dataSliceInputType()),
3244
+ encoding: type(accountEncodingInputType()),
3245
+ minContextSlot: bigint()
3246
+ },
3247
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3248
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.withdrawAuthority }, info),
3249
+ type: accountInterface()
3250
+ }
1564
3251
  }),
1565
3252
  parsedTransactionInstructionType("StakeDeactivateInstruction", {
1566
3253
  clockSysvar: string(),
1567
- stakeAccount: string(),
1568
- stakeAuthority: string()
3254
+ // Nested Account interface
3255
+ stakeAccount: {
3256
+ args: {
3257
+ commitment: type(commitmentInputType()),
3258
+ dataSlice: type(dataSliceInputType()),
3259
+ encoding: type(accountEncodingInputType()),
3260
+ minContextSlot: bigint()
3261
+ },
3262
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3263
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3264
+ type: accountInterface()
3265
+ },
3266
+ // Nested Account interface
3267
+ stakeAuthority: {
3268
+ args: {
3269
+ commitment: type(commitmentInputType()),
3270
+ dataSlice: type(dataSliceInputType()),
3271
+ encoding: type(accountEncodingInputType()),
3272
+ minContextSlot: bigint()
3273
+ },
3274
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3275
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAuthority }, info),
3276
+ type: accountInterface()
3277
+ }
1569
3278
  }),
1570
3279
  parsedTransactionInstructionType("StakeSetLockupInstruction", {
1571
- custodian: string(),
3280
+ // Nested Account interface
3281
+ custodian: {
3282
+ args: {
3283
+ commitment: type(commitmentInputType()),
3284
+ dataSlice: type(dataSliceInputType()),
3285
+ encoding: type(accountEncodingInputType()),
3286
+ minContextSlot: bigint()
3287
+ },
3288
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3289
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.custodian }, info),
3290
+ type: accountInterface()
3291
+ },
1572
3292
  lockup: type(lockup()),
1573
- stakeAccount: string()
3293
+ // Nested Account interface
3294
+ stakeAccount: {
3295
+ args: {
3296
+ commitment: type(commitmentInputType()),
3297
+ dataSlice: type(dataSliceInputType()),
3298
+ encoding: type(accountEncodingInputType()),
3299
+ minContextSlot: bigint()
3300
+ },
3301
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3302
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3303
+ type: accountInterface()
3304
+ }
1574
3305
  }),
1575
3306
  parsedTransactionInstructionType("StakeMergeInstruction", {
1576
3307
  clockSysvar: string(),
1577
- destination: string(),
1578
- source: string(),
1579
- stakeAuthority: string(),
3308
+ destination: {
3309
+ args: {
3310
+ commitment: type(commitmentInputType()),
3311
+ dataSlice: type(dataSliceInputType()),
3312
+ encoding: type(accountEncodingInputType()),
3313
+ minContextSlot: bigint()
3314
+ },
3315
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3316
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.destination }, info),
3317
+ type: accountInterface()
3318
+ },
3319
+ source: {
3320
+ args: {
3321
+ commitment: type(commitmentInputType()),
3322
+ dataSlice: type(dataSliceInputType()),
3323
+ encoding: type(accountEncodingInputType()),
3324
+ minContextSlot: bigint()
3325
+ },
3326
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3327
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.source }, info),
3328
+ type: accountInterface()
3329
+ },
3330
+ // Nested Account interface
3331
+ stakeAuthority: {
3332
+ args: {
3333
+ commitment: type(commitmentInputType()),
3334
+ dataSlice: type(dataSliceInputType()),
3335
+ encoding: type(accountEncodingInputType()),
3336
+ minContextSlot: bigint()
3337
+ },
3338
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3339
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAuthority }, info),
3340
+ type: accountInterface()
3341
+ },
1580
3342
  stakeHistorySysvar: string()
1581
3343
  }),
1582
3344
  parsedTransactionInstructionType("StakeAuthorizeWithSeedInstruction", {
1583
- authorityBase: string(),
1584
- authorityOwner: string(),
3345
+ // Nested Account interface
3346
+ authorityBase: {
3347
+ args: {
3348
+ commitment: type(commitmentInputType()),
3349
+ dataSlice: type(dataSliceInputType()),
3350
+ encoding: type(accountEncodingInputType()),
3351
+ minContextSlot: bigint()
3352
+ },
3353
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3354
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authorityBase }, info),
3355
+ type: accountInterface()
3356
+ },
3357
+ // Nested Account interface
3358
+ authorityOwner: {
3359
+ args: {
3360
+ commitment: type(commitmentInputType()),
3361
+ dataSlice: type(dataSliceInputType()),
3362
+ encoding: type(accountEncodingInputType()),
3363
+ minContextSlot: bigint()
3364
+ },
3365
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3366
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authorityOwner }, info),
3367
+ type: accountInterface()
3368
+ },
1585
3369
  authoritySeed: string(),
1586
3370
  authorityType: string(),
1587
3371
  clockSysvar: string(),
1588
- custodian: string(),
1589
- newAuthorized: string(),
1590
- stakeAccount: string()
3372
+ // Nested Account interface
3373
+ custodian: {
3374
+ args: {
3375
+ commitment: type(commitmentInputType()),
3376
+ dataSlice: type(dataSliceInputType()),
3377
+ encoding: type(accountEncodingInputType()),
3378
+ minContextSlot: bigint()
3379
+ },
3380
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3381
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.custodian }, info),
3382
+ type: accountInterface()
3383
+ },
3384
+ // Nested Account interface
3385
+ newAuthorized: {
3386
+ args: {
3387
+ commitment: type(commitmentInputType()),
3388
+ dataSlice: type(dataSliceInputType()),
3389
+ encoding: type(accountEncodingInputType()),
3390
+ minContextSlot: bigint()
3391
+ },
3392
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3393
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthorized }, info),
3394
+ type: accountInterface()
3395
+ },
3396
+ // Nested Account interface
3397
+ stakeAccount: {
3398
+ args: {
3399
+ commitment: type(commitmentInputType()),
3400
+ dataSlice: type(dataSliceInputType()),
3401
+ encoding: type(accountEncodingInputType()),
3402
+ minContextSlot: bigint()
3403
+ },
3404
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3405
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3406
+ type: accountInterface()
3407
+ }
1591
3408
  }),
1592
3409
  parsedTransactionInstructionType("StakeInitializeCheckedInstruction", {
1593
3410
  rentSysvar: string(),
1594
- stakeAccount: string(),
1595
- staker: string(),
1596
- withdrawer: string()
3411
+ // Nested Account interface
3412
+ stakeAccount: {
3413
+ args: {
3414
+ commitment: type(commitmentInputType()),
3415
+ dataSlice: type(dataSliceInputType()),
3416
+ encoding: type(accountEncodingInputType()),
3417
+ minContextSlot: bigint()
3418
+ },
3419
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3420
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3421
+ type: accountInterface()
3422
+ },
3423
+ // Nested Account interface
3424
+ staker: {
3425
+ args: {
3426
+ commitment: type(commitmentInputType()),
3427
+ dataSlice: type(dataSliceInputType()),
3428
+ encoding: type(accountEncodingInputType()),
3429
+ minContextSlot: bigint()
3430
+ },
3431
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3432
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.staker }, info),
3433
+ type: accountInterface()
3434
+ },
3435
+ // Nested Account interface
3436
+ withdrawer: {
3437
+ args: {
3438
+ commitment: type(commitmentInputType()),
3439
+ dataSlice: type(dataSliceInputType()),
3440
+ encoding: type(accountEncodingInputType()),
3441
+ minContextSlot: bigint()
3442
+ },
3443
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3444
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.withdrawer }, info),
3445
+ type: accountInterface()
3446
+ }
1597
3447
  }),
1598
3448
  parsedTransactionInstructionType("StakeAuthorizeCheckedInstruction", {
1599
- authority: string(),
3449
+ // Nested Account interface
3450
+ authority: {
3451
+ args: {
3452
+ commitment: type(commitmentInputType()),
3453
+ dataSlice: type(dataSliceInputType()),
3454
+ encoding: type(accountEncodingInputType()),
3455
+ minContextSlot: bigint()
3456
+ },
3457
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3458
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
3459
+ type: accountInterface()
3460
+ },
1600
3461
  authorityType: string(),
1601
3462
  clockSysvar: string(),
1602
- custodian: string(),
1603
- newAuthority: string(),
1604
- stakeAccount: string()
3463
+ // Nested Account interface
3464
+ custodian: {
3465
+ args: {
3466
+ commitment: type(commitmentInputType()),
3467
+ dataSlice: type(dataSliceInputType()),
3468
+ encoding: type(accountEncodingInputType()),
3469
+ minContextSlot: bigint()
3470
+ },
3471
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3472
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.custodian }, info),
3473
+ type: accountInterface()
3474
+ },
3475
+ // Nested Account interface
3476
+ newAuthority: {
3477
+ args: {
3478
+ commitment: type(commitmentInputType()),
3479
+ dataSlice: type(dataSliceInputType()),
3480
+ encoding: type(accountEncodingInputType()),
3481
+ minContextSlot: bigint()
3482
+ },
3483
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3484
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthority }, info),
3485
+ type: accountInterface()
3486
+ },
3487
+ // Nested Account interface
3488
+ stakeAccount: {
3489
+ args: {
3490
+ commitment: type(commitmentInputType()),
3491
+ dataSlice: type(dataSliceInputType()),
3492
+ encoding: type(accountEncodingInputType()),
3493
+ minContextSlot: bigint()
3494
+ },
3495
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3496
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3497
+ type: accountInterface()
3498
+ }
1605
3499
  }),
1606
3500
  parsedTransactionInstructionType("StakeAuthorizeCheckedWithSeedInstruction", {
1607
- authorityBase: string(),
1608
- authorityOwner: string(),
3501
+ // Nested Account interface
3502
+ authorityBase: {
3503
+ args: {
3504
+ commitment: type(commitmentInputType()),
3505
+ dataSlice: type(dataSliceInputType()),
3506
+ encoding: type(accountEncodingInputType()),
3507
+ minContextSlot: bigint()
3508
+ },
3509
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3510
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authorityBase }, info),
3511
+ type: accountInterface()
3512
+ },
3513
+ // Nested Account interface
3514
+ authorityOwner: {
3515
+ args: {
3516
+ commitment: type(commitmentInputType()),
3517
+ dataSlice: type(dataSliceInputType()),
3518
+ encoding: type(accountEncodingInputType()),
3519
+ minContextSlot: bigint()
3520
+ },
3521
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3522
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authorityOwner }, info),
3523
+ type: accountInterface()
3524
+ },
1609
3525
  authoritySeed: string(),
1610
3526
  authorityType: string(),
1611
3527
  clockSysvar: string(),
1612
- custodian: string(),
1613
- newAuthorized: string(),
1614
- stakeAccount: string()
3528
+ // Nested Account interface
3529
+ custodian: {
3530
+ args: {
3531
+ commitment: type(commitmentInputType()),
3532
+ dataSlice: type(dataSliceInputType()),
3533
+ encoding: type(accountEncodingInputType()),
3534
+ minContextSlot: bigint()
3535
+ },
3536
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3537
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.custodian }, info),
3538
+ type: accountInterface()
3539
+ },
3540
+ // Nested Account interface
3541
+ newAuthorized: {
3542
+ args: {
3543
+ commitment: type(commitmentInputType()),
3544
+ dataSlice: type(dataSliceInputType()),
3545
+ encoding: type(accountEncodingInputType()),
3546
+ minContextSlot: bigint()
3547
+ },
3548
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3549
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthorized }, info),
3550
+ type: accountInterface()
3551
+ },
3552
+ // Nested Account interface
3553
+ stakeAccount: {
3554
+ args: {
3555
+ commitment: type(commitmentInputType()),
3556
+ dataSlice: type(dataSliceInputType()),
3557
+ encoding: type(accountEncodingInputType()),
3558
+ minContextSlot: bigint()
3559
+ },
3560
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3561
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3562
+ type: accountInterface()
3563
+ }
1615
3564
  }),
1616
3565
  parsedTransactionInstructionType("StakeSetLockupCheckedInstruction", {
1617
- custodian: string(),
3566
+ // Nested Account interface
3567
+ custodian: {
3568
+ args: {
3569
+ commitment: type(commitmentInputType()),
3570
+ dataSlice: type(dataSliceInputType()),
3571
+ encoding: type(accountEncodingInputType()),
3572
+ minContextSlot: bigint()
3573
+ },
3574
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3575
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.custodian }, info),
3576
+ type: accountInterface()
3577
+ },
1618
3578
  lockup: type(lockup()),
1619
- stakeAccount: string()
3579
+ // Nested Account interface
3580
+ stakeAccount: {
3581
+ args: {
3582
+ commitment: type(commitmentInputType()),
3583
+ dataSlice: type(dataSliceInputType()),
3584
+ encoding: type(accountEncodingInputType()),
3585
+ minContextSlot: bigint()
3586
+ },
3587
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3588
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3589
+ type: accountInterface()
3590
+ }
1620
3591
  }),
1621
3592
  parsedTransactionInstructionType("StakeDeactivateDelinquentInstruction", {
1622
3593
  referenceVoteAccount: string(),
1623
- stakeAccount: string(),
1624
- voteAccount: string()
3594
+ // Nested Account interface
3595
+ stakeAccount: {
3596
+ args: {
3597
+ commitment: type(commitmentInputType()),
3598
+ dataSlice: type(dataSliceInputType()),
3599
+ encoding: type(accountEncodingInputType()),
3600
+ minContextSlot: bigint()
3601
+ },
3602
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3603
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3604
+ type: accountInterface()
3605
+ },
3606
+ // Nested Account interface
3607
+ voteAccount: {
3608
+ args: {
3609
+ commitment: type(commitmentInputType()),
3610
+ dataSlice: type(dataSliceInputType()),
3611
+ encoding: type(accountEncodingInputType()),
3612
+ minContextSlot: bigint()
3613
+ },
3614
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3615
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
3616
+ type: accountInterface()
3617
+ }
1625
3618
  }),
1626
3619
  parsedTransactionInstructionType("StakeRedelegateInstruction", {
1627
3620
  newStakeAccount: string(),
1628
- stakeAccount: string(),
1629
- stakeAuthority: string(),
1630
- stakeConfigAccount: string(),
1631
- voteAccount: string()
3621
+ // Nested Account interface
3622
+ stakeAccount: {
3623
+ args: {
3624
+ commitment: type(commitmentInputType()),
3625
+ dataSlice: type(dataSliceInputType()),
3626
+ encoding: type(accountEncodingInputType()),
3627
+ minContextSlot: bigint()
3628
+ },
3629
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3630
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAccount }, info),
3631
+ type: accountInterface()
3632
+ },
3633
+ // Nested Account interface
3634
+ stakeAuthority: {
3635
+ args: {
3636
+ commitment: type(commitmentInputType()),
3637
+ dataSlice: type(dataSliceInputType()),
3638
+ encoding: type(accountEncodingInputType()),
3639
+ minContextSlot: bigint()
3640
+ },
3641
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3642
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeAuthority }, info),
3643
+ type: accountInterface()
3644
+ },
3645
+ // Nested Account interface
3646
+ stakeConfigAccount: {
3647
+ args: {
3648
+ commitment: type(commitmentInputType()),
3649
+ dataSlice: type(dataSliceInputType()),
3650
+ encoding: type(accountEncodingInputType()),
3651
+ minContextSlot: bigint()
3652
+ },
3653
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3654
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.stakeConfigAccount }, info),
3655
+ type: accountInterface()
3656
+ },
3657
+ // Nested Account interface
3658
+ voteAccount: {
3659
+ args: {
3660
+ commitment: type(commitmentInputType()),
3661
+ dataSlice: type(dataSliceInputType()),
3662
+ encoding: type(accountEncodingInputType()),
3663
+ minContextSlot: bigint()
3664
+ },
3665
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3666
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
3667
+ type: accountInterface()
3668
+ }
1632
3669
  })
1633
3670
  ];
1634
3671
  return memoisedParsedInstructionsStake;
@@ -1639,76 +3676,357 @@ var parsedInstructionsSystem = () => {
1639
3676
  memoisedParsedInstructionsSystem = [
1640
3677
  parsedTransactionInstructionType("CreateAccountInstruction", {
1641
3678
  lamports: bigint(),
1642
- newAccount: string(),
1643
- owner: string(),
1644
- source: string(),
3679
+ // Nested Account interface
3680
+ newAccount: {
3681
+ args: {
3682
+ commitment: type(commitmentInputType()),
3683
+ dataSlice: type(dataSliceInputType()),
3684
+ encoding: type(accountEncodingInputType()),
3685
+ minContextSlot: bigint()
3686
+ },
3687
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3688
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAccount }, info),
3689
+ type: accountInterface()
3690
+ },
3691
+ // Nested Account interface
3692
+ owner: {
3693
+ args: {
3694
+ commitment: type(commitmentInputType()),
3695
+ dataSlice: type(dataSliceInputType()),
3696
+ encoding: type(accountEncodingInputType()),
3697
+ minContextSlot: bigint()
3698
+ },
3699
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3700
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
3701
+ type: accountInterface()
3702
+ },
3703
+ source: {
3704
+ args: {
3705
+ commitment: type(commitmentInputType()),
3706
+ dataSlice: type(dataSliceInputType()),
3707
+ encoding: type(accountEncodingInputType()),
3708
+ minContextSlot: bigint()
3709
+ },
3710
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3711
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.source }, info),
3712
+ type: accountInterface()
3713
+ },
1645
3714
  space: bigint()
1646
3715
  }),
1647
3716
  parsedTransactionInstructionType("AssignInstruction", {
1648
- owner: string()
3717
+ // Nested Account interface
3718
+ owner: {
3719
+ args: {
3720
+ commitment: type(commitmentInputType()),
3721
+ dataSlice: type(dataSliceInputType()),
3722
+ encoding: type(accountEncodingInputType()),
3723
+ minContextSlot: bigint()
3724
+ },
3725
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3726
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
3727
+ type: accountInterface()
3728
+ }
1649
3729
  }),
1650
3730
  parsedTransactionInstructionType("TransferInstruction", {
1651
3731
  amount: string(),
1652
3732
  lamports: number(),
1653
- source: string()
3733
+ source: {
3734
+ args: {
3735
+ commitment: type(commitmentInputType()),
3736
+ dataSlice: type(dataSliceInputType()),
3737
+ encoding: type(accountEncodingInputType()),
3738
+ minContextSlot: bigint()
3739
+ },
3740
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3741
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.source }, info),
3742
+ type: accountInterface()
3743
+ }
1654
3744
  }),
1655
3745
  parsedTransactionInstructionType("CreateAccountWithSeedInstruction", {
1656
3746
  base: string(),
1657
3747
  lamports: bigint(),
1658
- owner: string(),
3748
+ // Nested Account interface
3749
+ owner: {
3750
+ args: {
3751
+ commitment: type(commitmentInputType()),
3752
+ dataSlice: type(dataSliceInputType()),
3753
+ encoding: type(accountEncodingInputType()),
3754
+ minContextSlot: bigint()
3755
+ },
3756
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3757
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
3758
+ type: accountInterface()
3759
+ },
1659
3760
  seed: string(),
1660
3761
  space: bigint()
1661
3762
  }),
1662
3763
  parsedTransactionInstructionType("AdvanceNonceAccountInstruction", {
1663
- nonceAccount: string(),
1664
- nonceAuthority: string(),
3764
+ // Nested Account interface
3765
+ nonceAccount: {
3766
+ args: {
3767
+ commitment: type(commitmentInputType()),
3768
+ dataSlice: type(dataSliceInputType()),
3769
+ encoding: type(accountEncodingInputType()),
3770
+ minContextSlot: bigint()
3771
+ },
3772
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3773
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nonceAccount }, info),
3774
+ type: accountInterface()
3775
+ },
3776
+ // Nested Account interface
3777
+ nonceAuthority: {
3778
+ args: {
3779
+ commitment: type(commitmentInputType()),
3780
+ dataSlice: type(dataSliceInputType()),
3781
+ encoding: type(accountEncodingInputType()),
3782
+ minContextSlot: bigint()
3783
+ },
3784
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3785
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nonceAuthority }, info),
3786
+ type: accountInterface()
3787
+ },
1665
3788
  recentBlockhashesSysvar: string()
1666
3789
  }),
1667
3790
  parsedTransactionInstructionType("WithdrawNonceAccountInstruction", {
1668
- destination: string(),
3791
+ destination: {
3792
+ args: {
3793
+ commitment: type(commitmentInputType()),
3794
+ dataSlice: type(dataSliceInputType()),
3795
+ encoding: type(accountEncodingInputType()),
3796
+ minContextSlot: bigint()
3797
+ },
3798
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3799
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.destination }, info),
3800
+ type: accountInterface()
3801
+ },
1669
3802
  lamports: bigint(),
1670
- nonceAccount: string(),
1671
- nonceAuthority: string(),
3803
+ // Nested Account interface
3804
+ nonceAccount: {
3805
+ args: {
3806
+ commitment: type(commitmentInputType()),
3807
+ dataSlice: type(dataSliceInputType()),
3808
+ encoding: type(accountEncodingInputType()),
3809
+ minContextSlot: bigint()
3810
+ },
3811
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3812
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nonceAccount }, info),
3813
+ type: accountInterface()
3814
+ },
3815
+ // Nested Account interface
3816
+ nonceAuthority: {
3817
+ args: {
3818
+ commitment: type(commitmentInputType()),
3819
+ dataSlice: type(dataSliceInputType()),
3820
+ encoding: type(accountEncodingInputType()),
3821
+ minContextSlot: bigint()
3822
+ },
3823
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3824
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nonceAuthority }, info),
3825
+ type: accountInterface()
3826
+ },
1672
3827
  recentBlockhashesSysvar: string(),
1673
3828
  rentSysvar: string()
1674
3829
  }),
1675
3830
  parsedTransactionInstructionType("InitializeNonceAccountInstruction", {
1676
- nonceAccount: string(),
1677
- nonceAuthority: string(),
3831
+ // Nested Account interface
3832
+ nonceAccount: {
3833
+ args: {
3834
+ commitment: type(commitmentInputType()),
3835
+ dataSlice: type(dataSliceInputType()),
3836
+ encoding: type(accountEncodingInputType()),
3837
+ minContextSlot: bigint()
3838
+ },
3839
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3840
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nonceAccount }, info),
3841
+ type: accountInterface()
3842
+ },
3843
+ // Nested Account interface
3844
+ nonceAuthority: {
3845
+ args: {
3846
+ commitment: type(commitmentInputType()),
3847
+ dataSlice: type(dataSliceInputType()),
3848
+ encoding: type(accountEncodingInputType()),
3849
+ minContextSlot: bigint()
3850
+ },
3851
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3852
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nonceAuthority }, info),
3853
+ type: accountInterface()
3854
+ },
1678
3855
  recentBlockhashesSysvar: string(),
1679
3856
  rentSysvar: string()
1680
3857
  }),
1681
3858
  parsedTransactionInstructionType("AuthorizeNonceAccountInstruction", {
1682
- newAuthorized: string(),
1683
- nonceAccount: string(),
1684
- nonceAuthority: string()
3859
+ // Nested Account interface
3860
+ newAuthorized: {
3861
+ args: {
3862
+ commitment: type(commitmentInputType()),
3863
+ dataSlice: type(dataSliceInputType()),
3864
+ encoding: type(accountEncodingInputType()),
3865
+ minContextSlot: bigint()
3866
+ },
3867
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3868
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthorized }, info),
3869
+ type: accountInterface()
3870
+ },
3871
+ // Nested Account interface
3872
+ nonceAccount: {
3873
+ args: {
3874
+ commitment: type(commitmentInputType()),
3875
+ dataSlice: type(dataSliceInputType()),
3876
+ encoding: type(accountEncodingInputType()),
3877
+ minContextSlot: bigint()
3878
+ },
3879
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3880
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nonceAccount }, info),
3881
+ type: accountInterface()
3882
+ },
3883
+ // Nested Account interface
3884
+ nonceAuthority: {
3885
+ args: {
3886
+ commitment: type(commitmentInputType()),
3887
+ dataSlice: type(dataSliceInputType()),
3888
+ encoding: type(accountEncodingInputType()),
3889
+ minContextSlot: bigint()
3890
+ },
3891
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3892
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nonceAuthority }, info),
3893
+ type: accountInterface()
3894
+ }
1685
3895
  }),
1686
3896
  parsedTransactionInstructionType("UpgradeNonceAccountInstruction", {
1687
- nonceAccount: string()
3897
+ // Nested Account interface
3898
+ nonceAccount: {
3899
+ args: {
3900
+ commitment: type(commitmentInputType()),
3901
+ dataSlice: type(dataSliceInputType()),
3902
+ encoding: type(accountEncodingInputType()),
3903
+ minContextSlot: bigint()
3904
+ },
3905
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3906
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.nonceAccount }, info),
3907
+ type: accountInterface()
3908
+ }
1688
3909
  }),
1689
3910
  parsedTransactionInstructionType("AllocateInstruction", {
1690
- account: string(),
3911
+ // Nested Account interface
3912
+ account: {
3913
+ args: {
3914
+ commitment: type(commitmentInputType()),
3915
+ dataSlice: type(dataSliceInputType()),
3916
+ encoding: type(accountEncodingInputType()),
3917
+ minContextSlot: bigint()
3918
+ },
3919
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3920
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
3921
+ type: accountInterface()
3922
+ },
1691
3923
  space: bigint()
1692
3924
  }),
1693
3925
  parsedTransactionInstructionType("AllocateWithSeedInstruction", {
1694
- account: string(),
3926
+ // Nested Account interface
3927
+ account: {
3928
+ args: {
3929
+ commitment: type(commitmentInputType()),
3930
+ dataSlice: type(dataSliceInputType()),
3931
+ encoding: type(accountEncodingInputType()),
3932
+ minContextSlot: bigint()
3933
+ },
3934
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3935
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
3936
+ type: accountInterface()
3937
+ },
1695
3938
  base: string(),
1696
- owner: string(),
3939
+ // Nested Account interface
3940
+ owner: {
3941
+ args: {
3942
+ commitment: type(commitmentInputType()),
3943
+ dataSlice: type(dataSliceInputType()),
3944
+ encoding: type(accountEncodingInputType()),
3945
+ minContextSlot: bigint()
3946
+ },
3947
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3948
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
3949
+ type: accountInterface()
3950
+ },
1697
3951
  seed: string(),
1698
3952
  space: bigint()
1699
3953
  }),
1700
3954
  parsedTransactionInstructionType("AssignWithSeedInstruction", {
1701
- account: string(),
3955
+ // Nested Account interface
3956
+ account: {
3957
+ args: {
3958
+ commitment: type(commitmentInputType()),
3959
+ dataSlice: type(dataSliceInputType()),
3960
+ encoding: type(accountEncodingInputType()),
3961
+ minContextSlot: bigint()
3962
+ },
3963
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3964
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.account }, info),
3965
+ type: accountInterface()
3966
+ },
1702
3967
  base: string(),
1703
- owner: string(),
3968
+ // Nested Account interface
3969
+ owner: {
3970
+ args: {
3971
+ commitment: type(commitmentInputType()),
3972
+ dataSlice: type(dataSliceInputType()),
3973
+ encoding: type(accountEncodingInputType()),
3974
+ minContextSlot: bigint()
3975
+ },
3976
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3977
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.owner }, info),
3978
+ type: accountInterface()
3979
+ },
1704
3980
  seed: string()
1705
3981
  }),
1706
3982
  parsedTransactionInstructionType("TransferWithSeedInstruction", {
1707
- destination: string(),
3983
+ destination: {
3984
+ args: {
3985
+ commitment: type(commitmentInputType()),
3986
+ dataSlice: type(dataSliceInputType()),
3987
+ encoding: type(accountEncodingInputType()),
3988
+ minContextSlot: bigint()
3989
+ },
3990
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
3991
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.destination }, info),
3992
+ type: accountInterface()
3993
+ },
1708
3994
  lamports: bigint(),
1709
- source: string(),
1710
- sourceBase: string(),
1711
- sourceOwner: string(),
3995
+ source: {
3996
+ args: {
3997
+ commitment: type(commitmentInputType()),
3998
+ dataSlice: type(dataSliceInputType()),
3999
+ encoding: type(accountEncodingInputType()),
4000
+ minContextSlot: bigint()
4001
+ },
4002
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4003
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.source }, info),
4004
+ type: accountInterface()
4005
+ },
4006
+ // Nested Account interface
4007
+ sourceBase: {
4008
+ args: {
4009
+ commitment: type(commitmentInputType()),
4010
+ dataSlice: type(dataSliceInputType()),
4011
+ encoding: type(accountEncodingInputType()),
4012
+ minContextSlot: bigint()
4013
+ },
4014
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4015
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.sourceBase }, info),
4016
+ type: accountInterface()
4017
+ },
4018
+ // Nested Account interface
4019
+ sourceOwner: {
4020
+ args: {
4021
+ commitment: type(commitmentInputType()),
4022
+ dataSlice: type(dataSliceInputType()),
4023
+ encoding: type(accountEncodingInputType()),
4024
+ minContextSlot: bigint()
4025
+ },
4026
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4027
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.sourceOwner }, info),
4028
+ type: accountInterface()
4029
+ },
1712
4030
  sourceSeed: string()
1713
4031
  })
1714
4032
  ];
@@ -1751,100 +4069,506 @@ var parsedInstructionsVote = () => {
1751
4069
  if (!memoisedParsedInstructionsVote)
1752
4070
  memoisedParsedInstructionsVote = [
1753
4071
  parsedTransactionInstructionType("VoteInitializeAccountInstruction", {
1754
- authorizedVoter: string(),
1755
- authorizedWithdrawer: string(),
4072
+ // Nested Account interface
4073
+ authorizedVoter: {
4074
+ args: {
4075
+ commitment: type(commitmentInputType()),
4076
+ dataSlice: type(dataSliceInputType()),
4077
+ encoding: type(accountEncodingInputType()),
4078
+ minContextSlot: bigint()
4079
+ },
4080
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4081
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authorizedVoter }, info),
4082
+ type: accountInterface()
4083
+ },
4084
+ // Nested Account interface
4085
+ authorizedWithdrawer: {
4086
+ args: {
4087
+ commitment: type(commitmentInputType()),
4088
+ dataSlice: type(dataSliceInputType()),
4089
+ encoding: type(accountEncodingInputType()),
4090
+ minContextSlot: bigint()
4091
+ },
4092
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4093
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authorizedWithdrawer }, info),
4094
+ type: accountInterface()
4095
+ },
1756
4096
  clockSysvar: string(),
1757
4097
  commission: number(),
1758
4098
  node: string(),
1759
4099
  rentSysvar: string(),
1760
- voteAccount: string()
4100
+ // Nested Account interface
4101
+ voteAccount: {
4102
+ args: {
4103
+ commitment: type(commitmentInputType()),
4104
+ dataSlice: type(dataSliceInputType()),
4105
+ encoding: type(accountEncodingInputType()),
4106
+ minContextSlot: bigint()
4107
+ },
4108
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4109
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4110
+ type: accountInterface()
4111
+ }
1761
4112
  }),
1762
4113
  parsedTransactionInstructionType("VoteAuthorizeInstruction", {
1763
- authority: string(),
4114
+ // Nested Account interface
4115
+ authority: {
4116
+ args: {
4117
+ commitment: type(commitmentInputType()),
4118
+ dataSlice: type(dataSliceInputType()),
4119
+ encoding: type(accountEncodingInputType()),
4120
+ minContextSlot: bigint()
4121
+ },
4122
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4123
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
4124
+ type: accountInterface()
4125
+ },
1764
4126
  authorityType: string(),
1765
4127
  clockSysvar: string(),
1766
- newAuthority: string(),
1767
- voteAccount: string()
4128
+ // Nested Account interface
4129
+ newAuthority: {
4130
+ args: {
4131
+ commitment: type(commitmentInputType()),
4132
+ dataSlice: type(dataSliceInputType()),
4133
+ encoding: type(accountEncodingInputType()),
4134
+ minContextSlot: bigint()
4135
+ },
4136
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4137
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthority }, info),
4138
+ type: accountInterface()
4139
+ },
4140
+ // Nested Account interface
4141
+ voteAccount: {
4142
+ args: {
4143
+ commitment: type(commitmentInputType()),
4144
+ dataSlice: type(dataSliceInputType()),
4145
+ encoding: type(accountEncodingInputType()),
4146
+ minContextSlot: bigint()
4147
+ },
4148
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4149
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4150
+ type: accountInterface()
4151
+ }
1768
4152
  }),
1769
4153
  parsedTransactionInstructionType("VoteAuthorizeWithSeedInstruction", {
1770
- authorityBaseKey: string(),
1771
- authorityOwner: string(),
4154
+ // Nested Account interface
4155
+ authorityBaseKey: {
4156
+ args: {
4157
+ commitment: type(commitmentInputType()),
4158
+ dataSlice: type(dataSliceInputType()),
4159
+ encoding: type(accountEncodingInputType()),
4160
+ minContextSlot: bigint()
4161
+ },
4162
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4163
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authorityBaseKey }, info),
4164
+ type: accountInterface()
4165
+ },
4166
+ // Nested Account interface
4167
+ authorityOwner: {
4168
+ args: {
4169
+ commitment: type(commitmentInputType()),
4170
+ dataSlice: type(dataSliceInputType()),
4171
+ encoding: type(accountEncodingInputType()),
4172
+ minContextSlot: bigint()
4173
+ },
4174
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4175
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authorityOwner }, info),
4176
+ type: accountInterface()
4177
+ },
1772
4178
  authoritySeed: string(),
1773
4179
  authorityType: string(),
1774
4180
  clockSysvar: string(),
1775
- newAuthority: string(),
1776
- voteAccount: string()
4181
+ // Nested Account interface
4182
+ newAuthority: {
4183
+ args: {
4184
+ commitment: type(commitmentInputType()),
4185
+ dataSlice: type(dataSliceInputType()),
4186
+ encoding: type(accountEncodingInputType()),
4187
+ minContextSlot: bigint()
4188
+ },
4189
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4190
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthority }, info),
4191
+ type: accountInterface()
4192
+ },
4193
+ // Nested Account interface
4194
+ voteAccount: {
4195
+ args: {
4196
+ commitment: type(commitmentInputType()),
4197
+ dataSlice: type(dataSliceInputType()),
4198
+ encoding: type(accountEncodingInputType()),
4199
+ minContextSlot: bigint()
4200
+ },
4201
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4202
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4203
+ type: accountInterface()
4204
+ }
1777
4205
  }),
1778
4206
  parsedTransactionInstructionType("VoteAuthorizeCheckedWithSeedInstruction", {
1779
- authorityBaseKey: string(),
1780
- authorityOwner: string(),
4207
+ // Nested Account interface
4208
+ authorityBaseKey: {
4209
+ args: {
4210
+ commitment: type(commitmentInputType()),
4211
+ dataSlice: type(dataSliceInputType()),
4212
+ encoding: type(accountEncodingInputType()),
4213
+ minContextSlot: bigint()
4214
+ },
4215
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4216
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authorityBaseKey }, info),
4217
+ type: accountInterface()
4218
+ },
4219
+ // Nested Account interface
4220
+ authorityOwner: {
4221
+ args: {
4222
+ commitment: type(commitmentInputType()),
4223
+ dataSlice: type(dataSliceInputType()),
4224
+ encoding: type(accountEncodingInputType()),
4225
+ minContextSlot: bigint()
4226
+ },
4227
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4228
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authorityOwner }, info),
4229
+ type: accountInterface()
4230
+ },
1781
4231
  authoritySeed: string(),
1782
4232
  authorityType: string(),
1783
4233
  clockSysvar: string(),
1784
- newAuthority: string(),
1785
- voteAccount: string()
4234
+ // Nested Account interface
4235
+ newAuthority: {
4236
+ args: {
4237
+ commitment: type(commitmentInputType()),
4238
+ dataSlice: type(dataSliceInputType()),
4239
+ encoding: type(accountEncodingInputType()),
4240
+ minContextSlot: bigint()
4241
+ },
4242
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4243
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthority }, info),
4244
+ type: accountInterface()
4245
+ },
4246
+ // Nested Account interface
4247
+ voteAccount: {
4248
+ args: {
4249
+ commitment: type(commitmentInputType()),
4250
+ dataSlice: type(dataSliceInputType()),
4251
+ encoding: type(accountEncodingInputType()),
4252
+ minContextSlot: bigint()
4253
+ },
4254
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4255
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4256
+ type: accountInterface()
4257
+ }
1786
4258
  }),
1787
4259
  parsedTransactionInstructionType("VoteVoteInstruction", {
1788
4260
  clockSysvar: string(),
1789
4261
  slotHashedSysvar: string(),
1790
4262
  vote: type(vote()),
1791
- voteAccount: string(),
1792
- voteAuthority: string()
4263
+ // Nested Account interface
4264
+ voteAccount: {
4265
+ args: {
4266
+ commitment: type(commitmentInputType()),
4267
+ dataSlice: type(dataSliceInputType()),
4268
+ encoding: type(accountEncodingInputType()),
4269
+ minContextSlot: bigint()
4270
+ },
4271
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4272
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4273
+ type: accountInterface()
4274
+ },
4275
+ // Nested Account interface
4276
+ voteAuthority: {
4277
+ args: {
4278
+ commitment: type(commitmentInputType()),
4279
+ dataSlice: type(dataSliceInputType()),
4280
+ encoding: type(accountEncodingInputType()),
4281
+ minContextSlot: bigint()
4282
+ },
4283
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4284
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAuthority }, info),
4285
+ type: accountInterface()
4286
+ }
1793
4287
  }),
1794
4288
  parsedTransactionInstructionType("VoteUpdateVoteStateInstruction", {
1795
4289
  hash: string(),
1796
- voteAccount: string(),
1797
- voteAuthority: string(),
4290
+ // Nested Account interface
4291
+ voteAccount: {
4292
+ args: {
4293
+ commitment: type(commitmentInputType()),
4294
+ dataSlice: type(dataSliceInputType()),
4295
+ encoding: type(accountEncodingInputType()),
4296
+ minContextSlot: bigint()
4297
+ },
4298
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4299
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4300
+ type: accountInterface()
4301
+ },
4302
+ // Nested Account interface
4303
+ voteAuthority: {
4304
+ args: {
4305
+ commitment: type(commitmentInputType()),
4306
+ dataSlice: type(dataSliceInputType()),
4307
+ encoding: type(accountEncodingInputType()),
4308
+ minContextSlot: bigint()
4309
+ },
4310
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4311
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAuthority }, info),
4312
+ type: accountInterface()
4313
+ },
1798
4314
  voteStateUpdate: type(voteStateUpdate())
1799
4315
  }),
1800
4316
  parsedTransactionInstructionType("VoteUpdateVoteStateSwitchInstruction", {
1801
4317
  hash: string(),
1802
- voteAccount: string(),
1803
- voteAuthority: string(),
4318
+ // Nested Account interface
4319
+ voteAccount: {
4320
+ args: {
4321
+ commitment: type(commitmentInputType()),
4322
+ dataSlice: type(dataSliceInputType()),
4323
+ encoding: type(accountEncodingInputType()),
4324
+ minContextSlot: bigint()
4325
+ },
4326
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4327
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4328
+ type: accountInterface()
4329
+ },
4330
+ // Nested Account interface
4331
+ voteAuthority: {
4332
+ args: {
4333
+ commitment: type(commitmentInputType()),
4334
+ dataSlice: type(dataSliceInputType()),
4335
+ encoding: type(accountEncodingInputType()),
4336
+ minContextSlot: bigint()
4337
+ },
4338
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4339
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAuthority }, info),
4340
+ type: accountInterface()
4341
+ },
1804
4342
  voteStateUpdate: type(voteStateUpdate())
1805
4343
  }),
1806
4344
  parsedTransactionInstructionType("VoteCompactUpdateVoteStateInstruction", {
1807
4345
  hash: string(),
1808
- voteAccount: string(),
1809
- voteAuthority: string(),
4346
+ // Nested Account interface
4347
+ voteAccount: {
4348
+ args: {
4349
+ commitment: type(commitmentInputType()),
4350
+ dataSlice: type(dataSliceInputType()),
4351
+ encoding: type(accountEncodingInputType()),
4352
+ minContextSlot: bigint()
4353
+ },
4354
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4355
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4356
+ type: accountInterface()
4357
+ },
4358
+ // Nested Account interface
4359
+ voteAuthority: {
4360
+ args: {
4361
+ commitment: type(commitmentInputType()),
4362
+ dataSlice: type(dataSliceInputType()),
4363
+ encoding: type(accountEncodingInputType()),
4364
+ minContextSlot: bigint()
4365
+ },
4366
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4367
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAuthority }, info),
4368
+ type: accountInterface()
4369
+ },
1810
4370
  voteStateUpdate: type(voteStateUpdate())
1811
4371
  }),
1812
4372
  parsedTransactionInstructionType("VoteCompactUpdateVoteStateSwitchInstruction", {
1813
4373
  hash: string(),
1814
- voteAccount: string(),
1815
- voteAuthority: string(),
4374
+ // Nested Account interface
4375
+ voteAccount: {
4376
+ args: {
4377
+ commitment: type(commitmentInputType()),
4378
+ dataSlice: type(dataSliceInputType()),
4379
+ encoding: type(accountEncodingInputType()),
4380
+ minContextSlot: bigint()
4381
+ },
4382
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4383
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4384
+ type: accountInterface()
4385
+ },
4386
+ // Nested Account interface
4387
+ voteAuthority: {
4388
+ args: {
4389
+ commitment: type(commitmentInputType()),
4390
+ dataSlice: type(dataSliceInputType()),
4391
+ encoding: type(accountEncodingInputType()),
4392
+ minContextSlot: bigint()
4393
+ },
4394
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4395
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAuthority }, info),
4396
+ type: accountInterface()
4397
+ },
1816
4398
  voteStateUpdate: type(voteStateUpdate())
1817
4399
  }),
1818
4400
  parsedTransactionInstructionType("VoteWithdrawInstruction", {
1819
- destination: string(),
4401
+ destination: {
4402
+ args: {
4403
+ commitment: type(commitmentInputType()),
4404
+ dataSlice: type(dataSliceInputType()),
4405
+ encoding: type(accountEncodingInputType()),
4406
+ minContextSlot: bigint()
4407
+ },
4408
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4409
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.destination }, info),
4410
+ type: accountInterface()
4411
+ },
1820
4412
  lamports: bigint(),
1821
- voteAccount: string(),
1822
- withdrawAuthority: string()
4413
+ // Nested Account interface
4414
+ voteAccount: {
4415
+ args: {
4416
+ commitment: type(commitmentInputType()),
4417
+ dataSlice: type(dataSliceInputType()),
4418
+ encoding: type(accountEncodingInputType()),
4419
+ minContextSlot: bigint()
4420
+ },
4421
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4422
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4423
+ type: accountInterface()
4424
+ },
4425
+ // Nested Account interface
4426
+ withdrawAuthority: {
4427
+ args: {
4428
+ commitment: type(commitmentInputType()),
4429
+ dataSlice: type(dataSliceInputType()),
4430
+ encoding: type(accountEncodingInputType()),
4431
+ minContextSlot: bigint()
4432
+ },
4433
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4434
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.withdrawAuthority }, info),
4435
+ type: accountInterface()
4436
+ }
1823
4437
  }),
1824
4438
  parsedTransactionInstructionType("VoteUpdateValidatorIdentityInstruction", {
1825
- newValidatorIdentity: string(),
1826
- voteAccount: string(),
1827
- withdrawAuthority: string()
4439
+ // Nested Account interface
4440
+ newValidatorIdentity: {
4441
+ args: {
4442
+ commitment: type(commitmentInputType()),
4443
+ dataSlice: type(dataSliceInputType()),
4444
+ encoding: type(accountEncodingInputType()),
4445
+ minContextSlot: bigint()
4446
+ },
4447
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4448
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newValidatorIdentity }, info),
4449
+ type: accountInterface()
4450
+ },
4451
+ // Nested Account interface
4452
+ voteAccount: {
4453
+ args: {
4454
+ commitment: type(commitmentInputType()),
4455
+ dataSlice: type(dataSliceInputType()),
4456
+ encoding: type(accountEncodingInputType()),
4457
+ minContextSlot: bigint()
4458
+ },
4459
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4460
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4461
+ type: accountInterface()
4462
+ },
4463
+ // Nested Account interface
4464
+ withdrawAuthority: {
4465
+ args: {
4466
+ commitment: type(commitmentInputType()),
4467
+ dataSlice: type(dataSliceInputType()),
4468
+ encoding: type(accountEncodingInputType()),
4469
+ minContextSlot: bigint()
4470
+ },
4471
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4472
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.withdrawAuthority }, info),
4473
+ type: accountInterface()
4474
+ }
1828
4475
  }),
1829
4476
  parsedTransactionInstructionType("VoteUpdateCommissionInstruction", {
1830
4477
  commission: string(),
1831
- voteAccount: string(),
1832
- withdrawAuthority: string()
4478
+ // Nested Account interface
4479
+ voteAccount: {
4480
+ args: {
4481
+ commitment: type(commitmentInputType()),
4482
+ dataSlice: type(dataSliceInputType()),
4483
+ encoding: type(accountEncodingInputType()),
4484
+ minContextSlot: bigint()
4485
+ },
4486
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4487
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4488
+ type: accountInterface()
4489
+ },
4490
+ // Nested Account interface
4491
+ withdrawAuthority: {
4492
+ args: {
4493
+ commitment: type(commitmentInputType()),
4494
+ dataSlice: type(dataSliceInputType()),
4495
+ encoding: type(accountEncodingInputType()),
4496
+ minContextSlot: bigint()
4497
+ },
4498
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4499
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.withdrawAuthority }, info),
4500
+ type: accountInterface()
4501
+ }
1833
4502
  }),
1834
4503
  parsedTransactionInstructionType("VoteVoteSwitchInstruction", {
1835
4504
  clockSysvar: string(),
1836
4505
  hash: string(),
1837
4506
  slotHashesSysvar: string(),
1838
4507
  vote: type(vote()),
1839
- voteAccount: string(),
1840
- voteAuthority: string()
4508
+ // Nested Account interface
4509
+ voteAccount: {
4510
+ args: {
4511
+ commitment: type(commitmentInputType()),
4512
+ dataSlice: type(dataSliceInputType()),
4513
+ encoding: type(accountEncodingInputType()),
4514
+ minContextSlot: bigint()
4515
+ },
4516
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4517
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4518
+ type: accountInterface()
4519
+ },
4520
+ // Nested Account interface
4521
+ voteAuthority: {
4522
+ args: {
4523
+ commitment: type(commitmentInputType()),
4524
+ dataSlice: type(dataSliceInputType()),
4525
+ encoding: type(accountEncodingInputType()),
4526
+ minContextSlot: bigint()
4527
+ },
4528
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4529
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAuthority }, info),
4530
+ type: accountInterface()
4531
+ }
1841
4532
  }),
1842
4533
  parsedTransactionInstructionType("VoteAuthorizeCheckedInstruction", {
1843
- authority: string(),
4534
+ // Nested Account interface
4535
+ authority: {
4536
+ args: {
4537
+ commitment: type(commitmentInputType()),
4538
+ dataSlice: type(dataSliceInputType()),
4539
+ encoding: type(accountEncodingInputType()),
4540
+ minContextSlot: bigint()
4541
+ },
4542
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4543
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.authority }, info),
4544
+ type: accountInterface()
4545
+ },
1844
4546
  authorityType: string(),
1845
4547
  clockSysvar: string(),
1846
- newAuthority: string(),
1847
- voteAccount: string()
4548
+ // Nested Account interface
4549
+ newAuthority: {
4550
+ args: {
4551
+ commitment: type(commitmentInputType()),
4552
+ dataSlice: type(dataSliceInputType()),
4553
+ encoding: type(accountEncodingInputType()),
4554
+ minContextSlot: bigint()
4555
+ },
4556
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4557
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.newAuthority }, info),
4558
+ type: accountInterface()
4559
+ },
4560
+ // Nested Account interface
4561
+ voteAccount: {
4562
+ args: {
4563
+ commitment: type(commitmentInputType()),
4564
+ dataSlice: type(dataSliceInputType()),
4565
+ encoding: type(accountEncodingInputType()),
4566
+ minContextSlot: bigint()
4567
+ },
4568
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
4569
+ resolve: (parent, args, context, info) => context.resolveAccount({ ...args, address: parent.voteAccount }, info),
4570
+ type: accountInterface()
4571
+ }
1848
4572
  })
1849
4573
  ];
1850
4574
  return memoisedParsedInstructionsVote;
@@ -2279,15 +5003,6 @@ var blockQuery = () => ({
2279
5003
  type: blockInterface()
2280
5004
  }
2281
5005
  });
2282
- var programAccount = () => new GraphQLObjectType({
2283
- fields: {
2284
- account: type(accountInterface()),
2285
- pubkey: string()
2286
- },
2287
- name: "ProgramAccount"
2288
- });
2289
-
2290
- // src/schema/program-accounts/query.ts
2291
5006
  var programAccountsQuery = () => ({
2292
5007
  programAccounts: {
2293
5008
  args: {
@@ -2300,7 +5015,7 @@ var programAccountsQuery = () => ({
2300
5015
  withContext: string()
2301
5016
  },
2302
5017
  resolve: (_parent, args, context) => context.resolveProgramAccounts(args),
2303
- type: new GraphQLList(programAccount())
5018
+ type: new GraphQLList(accountInterface())
2304
5019
  }
2305
5020
  });
2306
5021