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