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