@solana/rpc-graphql 2.0.0-experimental.a9e6db3 → 2.0.0-experimental.b755749

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