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