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