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