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