@solana/rpc-graphql 2.0.0-experimental.d085c72 → 2.0.0-experimental.d3af599

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.
Files changed (45) hide show
  1. package/dist/index.browser.cjs +598 -1021
  2. package/dist/index.browser.cjs.map +1 -1
  3. package/dist/index.browser.js +598 -1021
  4. package/dist/index.browser.js.map +1 -1
  5. package/dist/index.native.js +598 -1021
  6. package/dist/index.native.js.map +1 -1
  7. package/dist/index.node.cjs +598 -1021
  8. package/dist/index.node.cjs.map +1 -1
  9. package/dist/index.node.js +598 -1021
  10. package/dist/index.node.js.map +1 -1
  11. package/dist/types/context.d.ts.map +1 -0
  12. package/dist/types/index.d.ts.map +1 -0
  13. package/dist/types/loaders/account.d.ts +0 -21
  14. package/dist/types/loaders/account.d.ts.map +1 -0
  15. package/dist/types/loaders/block.d.ts +0 -9
  16. package/dist/types/loaders/block.d.ts.map +1 -0
  17. package/dist/types/loaders/common/resolve-info.d.ts.map +1 -0
  18. package/dist/types/loaders/program-accounts.d.ts +0 -19
  19. package/dist/types/loaders/program-accounts.d.ts.map +1 -0
  20. package/dist/types/loaders/transaction.d.ts +1 -33
  21. package/dist/types/loaders/transaction.d.ts.map +1 -0
  22. package/dist/types/loaders/transformers/account.d.ts +8 -0
  23. package/dist/types/loaders/transformers/account.d.ts.map +1 -0
  24. package/dist/types/loaders/transformers/block.d.ts +6 -0
  25. package/dist/types/loaders/transformers/block.d.ts.map +1 -0
  26. package/dist/types/loaders/transformers/transaction.d.ts +5 -0
  27. package/dist/types/loaders/transformers/transaction.d.ts.map +1 -0
  28. package/dist/types/resolvers/account.d.ts.map +1 -0
  29. package/dist/types/rpc.d.ts +2 -5
  30. package/dist/types/rpc.d.ts.map +1 -0
  31. package/dist/types/schema/account.d.ts +18 -30
  32. package/dist/types/schema/account.d.ts.map +1 -0
  33. package/dist/types/schema/block.d.ts +1 -1
  34. package/dist/types/schema/block.d.ts.map +1 -0
  35. package/dist/types/schema/common/inputs.d.ts.map +1 -0
  36. package/dist/types/schema/common/scalars.d.ts.map +1 -0
  37. package/dist/types/schema/common/types.d.ts.map +1 -0
  38. package/dist/types/schema/index.d.ts.map +1 -0
  39. package/dist/types/schema/instruction.d.ts +87 -92
  40. package/dist/types/schema/instruction.d.ts.map +1 -0
  41. package/dist/types/schema/program-accounts.d.ts +1 -1
  42. package/dist/types/schema/program-accounts.d.ts.map +1 -0
  43. package/dist/types/schema/transaction.d.ts +1 -1
  44. package/dist/types/schema/transaction.d.ts.map +1 -0
  45. package/package.json +9 -9
@@ -22,51 +22,67 @@ function onlyPresentFieldRequested(fieldName, info) {
22
22
  return false;
23
23
  }
24
24
 
25
- // src/loaders/account.ts
26
- function normalizeArgs(args) {
27
- const { address, commitment, dataSlice, encoding, minContextSlot } = args;
28
- return {
29
- address,
30
- commitment: commitment ?? "confirmed",
31
- dataSlice,
32
- encoding: encoding ?? "jsonParsed",
33
- minContextSlot
34
- };
25
+ // src/loaders/transformers/account.ts
26
+ function transformParsedAccountData(parsedAccountData) {
27
+ const {
28
+ parsed: { info: result, type: accountType },
29
+ program: programName,
30
+ programId
31
+ } = parsedAccountData;
32
+ result.accountType = accountType;
33
+ result.programId = programId;
34
+ result.programName = programName;
35
+ return result;
35
36
  }
36
- function refineJsonParsedAccountData(jsonParsedAccountData) {
37
- const meta = {
38
- program: jsonParsedAccountData.program,
39
- space: jsonParsedAccountData.space,
40
- type: jsonParsedAccountData.parsed.type
41
- };
42
- const data = jsonParsedAccountData.parsed.info;
43
- return { data, meta };
44
- }
45
- function processQueryResponse({ address, account, encoding }) {
46
- const [refinedData, responseEncoding] = Array.isArray(account.data) ? encoding === "jsonParsed" ? [account.data[0], "base64"] : [account.data[0], encoding] : [refineJsonParsedAccountData(account.data), "jsonParsed"];
47
- const responseBase = {
37
+ function transformLoadedAccount({
38
+ account,
39
+ address,
40
+ encoding
41
+ }) {
42
+ const [
43
+ // The account's data, either encoded or parsed.
44
+ data,
45
+ // Tells GraphQL which encoding has been returned
46
+ // by the RPC.
47
+ responseEncoding
48
+ ] = Array.isArray(account.data) ? encoding === "jsonParsed" ? (
49
+ // The requested encoding is jsonParsed,
50
+ // but the data could not be parsed.
51
+ // Defaults to base64 encoding.
52
+ [{ data: account.data[0] }, "base64"]
53
+ ) : (
54
+ // The requested encoding is base58,
55
+ // base64, or base64+zstd.
56
+ [{ data: account.data[0] }, encoding]
57
+ ) : (
58
+ // The account data was returned as an object,
59
+ // so it was parsed successfully.
60
+ [transformParsedAccountData(account.data), "jsonParsed"]
61
+ );
62
+ account.address = address;
63
+ account.encoding = responseEncoding;
64
+ account.ownerProgram = account.owner;
65
+ return {
48
66
  ...account,
49
- address,
50
- encoding: responseEncoding
51
- };
52
- return typeof refinedData === "object" && "meta" in refinedData ? {
53
- ...responseBase,
54
- data: refinedData.data,
55
- meta: refinedData.meta
56
- } : {
57
- ...responseBase,
58
- data: refinedData
67
+ ...data
59
68
  };
60
69
  }
70
+
71
+ // src/loaders/account.ts
72
+ function normalizeArgs({
73
+ address,
74
+ commitment = "confirmed",
75
+ dataSlice,
76
+ encoding = "jsonParsed",
77
+ minContextSlot
78
+ }) {
79
+ return { address, commitment, dataSlice, encoding, minContextSlot };
80
+ }
61
81
  async function loadAccount(rpc, { address, ...config }) {
62
- const { encoding } = config;
63
82
  const account = await rpc.getAccountInfo(address, config).send().then((res) => res.value).catch((e) => {
64
83
  throw e;
65
84
  });
66
- if (account === null) {
67
- return { address };
68
- }
69
- return processQueryResponse({ account, address, encoding });
85
+ return account === null ? { address } : transformLoadedAccount({ account, address, encoding: config.encoding });
70
86
  }
71
87
  function createAccountBatchLoadFn(rpc) {
72
88
  const resolveAccountUsingRpc = loadAccount.bind(null, rpc);
@@ -85,161 +101,90 @@ function createAccountLoader(rpc) {
85
101
  }
86
102
  };
87
103
  }
88
- function normalizeArgs2(args) {
89
- const { commitment, encoding, signature } = args;
90
- return {
91
- commitment: commitment ?? "confirmed",
92
- encoding: encoding ?? "jsonParsed",
93
- // Always use 0 to avoid silly errors
94
- maxSupportedTransactionVersion: 0,
95
- signature
96
- };
97
- }
98
- function refineJsonParsedInstructionData(jsonParsedInstructionData) {
99
- if ("parsed" in jsonParsedInstructionData) {
100
- const meta = {
101
- program: jsonParsedInstructionData.program,
102
- type: jsonParsedInstructionData.parsed.type
103
- };
104
- const programId = jsonParsedInstructionData.programId;
105
- const data = jsonParsedInstructionData.parsed.info;
106
- return { data, meta, programId };
104
+
105
+ // src/loaders/transformers/transaction.ts
106
+ function transformParsedInstruction(parsedInstruction) {
107
+ if ("parsed" in parsedInstruction) {
108
+ const {
109
+ parsed: { info: data, type: instructionType },
110
+ program: programName,
111
+ programId
112
+ } = parsedInstruction;
113
+ return { instructionType, programId, programName, ...data };
107
114
  } else {
108
- return jsonParsedInstructionData;
115
+ return parsedInstruction;
109
116
  }
110
117
  }
111
- function refineJsonParsedTransactionData(jsonParsedTransactionData) {
112
- const refinedInstructions = jsonParsedTransactionData.message.instructions.map(
113
- (instruction) => refineJsonParsedInstructionData(instruction)
114
- );
115
- const message = {
116
- ...jsonParsedTransactionData.message,
117
- instructions: refinedInstructions
118
- };
119
- return { message, signatures: jsonParsedTransactionData.signatures };
120
- }
121
- function refineJsonParsedTransactionMeta(jsonParsedTransactionMeta) {
122
- const refinedInnerInstructions = jsonParsedTransactionMeta.innerInstructions.map(
123
- ({ index, instructions }) => {
124
- return {
125
- index,
126
- instructions: instructions.map((instruction) => refineJsonParsedInstructionData(instruction))
127
- };
128
- }
129
- );
130
- return {
131
- ...jsonParsedTransactionMeta,
132
- innerInstructions: refinedInnerInstructions
133
- };
134
- }
135
- function refineJsonParsedTransaction({ encoding, transaction }) {
136
- const [transactionData, transactionMeta] = Array.isArray(transaction.transaction) ? [transaction.transaction[0], transaction.meta] : [refineJsonParsedTransactionData(transaction.transaction), refineJsonParsedTransactionMeta(transaction.meta)];
137
- return {
138
- data: transactionData,
139
- encoding,
140
- meta: transactionMeta,
141
- slot: transaction.slot,
142
- version: transaction.version
143
- };
144
- }
145
- function processQueryResponse2({ encoding, transaction }) {
146
- return refineJsonParsedTransaction({ encoding, transaction });
147
- }
148
- async function loadTransaction(rpc, { signature, ...config }) {
149
- const { encoding } = config;
150
- let transaction = await rpc.getTransaction(signature, config).send().catch((e) => {
151
- throw e;
118
+ function transformParsedTransaction(parsedTransaction) {
119
+ const transactionData = parsedTransaction.transaction;
120
+ const transactionMeta = parsedTransaction.meta;
121
+ transactionData.message.instructions = transactionData.message.instructions.map(transformParsedInstruction);
122
+ transactionMeta.innerInstructions = transactionMeta.innerInstructions.map((innerInstruction) => {
123
+ innerInstruction.instructions = innerInstruction.instructions.map(transformParsedInstruction);
124
+ return innerInstruction;
152
125
  });
153
- if (transaction === null) {
154
- return null;
155
- }
156
- if (encoding !== "jsonParsed") {
157
- const transactionJsonParsed = await rpc.getTransaction(signature, config).send().catch((e) => {
158
- throw e;
159
- });
160
- if (transactionJsonParsed === null) {
161
- return null;
162
- }
163
- transaction = {
164
- ...transaction,
165
- meta: transactionJsonParsed.meta
166
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
167
- };
168
- }
169
- const queryResponse = processQueryResponse2({ encoding, transaction });
170
- return queryResponse;
126
+ return [transactionData, transactionMeta];
171
127
  }
172
- function createTransactionBatchLoadFn(rpc) {
173
- const resolveTransactionUsingRpc = loadTransaction.bind(null, rpc);
174
- return async (transactionQueryArgs) => {
175
- return await Promise.all(transactionQueryArgs.map(async (args) => await resolveTransactionUsingRpc(args)));
176
- };
177
- }
178
- function createTransactionLoader(rpc) {
179
- const loader = new DataLoader(createTransactionBatchLoadFn(rpc), { cacheKeyFn: fastStableStringify });
180
- return {
181
- load: async (args, info) => {
182
- if (onlyPresentFieldRequested("signature", info)) {
183
- return { signature: args.signature };
184
- }
185
- return loader.load(normalizeArgs2(args));
186
- }
187
- };
128
+ function transformLoadedTransaction({ encoding, transaction }) {
129
+ const [transactionData, transactionMeta] = Array.isArray(transaction.transaction) ? (
130
+ // The requested encoding is base58 or base64.
131
+ [transaction.transaction[0], transaction.meta]
132
+ ) : (
133
+ // The transaction was either partially parsed or
134
+ // fully JSON-parsed, which will be sorted later.
135
+ transformParsedTransaction(transaction)
136
+ );
137
+ transaction.data = transactionData;
138
+ transaction.encoding = encoding;
139
+ transaction.meta = transactionMeta;
140
+ return transaction;
188
141
  }
189
142
 
190
- // src/loaders/block.ts
191
- function normalizeArgs3(args) {
192
- const { commitment, encoding, slot, transactionDetails } = args;
193
- return {
194
- commitment: commitment ?? "confirmed",
195
- encoding: encoding ?? "jsonParsed",
196
- // Always use 0 to avoid silly errors
197
- maxSupportedTransactionVersion: 0,
198
- slot,
199
- transactionDetails: transactionDetails ?? "full"
200
- };
201
- }
202
- function refineJsonParsedTransactionForAccounts({ transaction }) {
203
- return {
204
- data: transaction.transaction,
205
- meta: transaction.meta,
206
- version: transaction.version
207
- };
208
- }
209
- function processQueryResponse3({
143
+ // src/loaders/transformers/block.ts
144
+ function transformLoadedBlock({
210
145
  encoding,
211
146
  block,
212
147
  transactionDetails
213
148
  }) {
214
149
  if (typeof block === "object" && "transactions" in block) {
215
- const refinedBlock = {
216
- ...block,
217
- transactions: block.transactions.map((transaction) => {
218
- if (transactionDetails === "accounts") {
219
- return refineJsonParsedTransactionForAccounts({ transaction });
220
- } else {
221
- return refineJsonParsedTransaction({ encoding, transaction });
222
- }
223
- })
224
- };
225
- block = refinedBlock;
150
+ block.transactions = block.transactions.map((transaction) => {
151
+ if (transactionDetails === "accounts") {
152
+ return {
153
+ data: transaction.transaction,
154
+ meta: transaction.meta,
155
+ version: transaction.version
156
+ };
157
+ } else {
158
+ return transformLoadedTransaction({ encoding, transaction });
159
+ }
160
+ });
226
161
  }
162
+ block.encoding = encoding;
163
+ block.transactionDetails = transactionDetails;
164
+ return block;
165
+ }
166
+
167
+ // src/loaders/block.ts
168
+ function normalizeArgs2({
169
+ commitment = "confirmed",
170
+ encoding = "jsonParsed",
171
+ slot,
172
+ transactionDetails = "full"
173
+ }) {
227
174
  return {
228
- ...block,
175
+ commitment,
229
176
  encoding,
177
+ // Always use 0 to avoid silly errors
178
+ maxSupportedTransactionVersion: 0,
179
+ slot,
230
180
  transactionDetails
231
181
  };
232
182
  }
233
183
  async function loadBlock(rpc, { slot, ...config }) {
234
- const { encoding, transactionDetails } = config;
235
184
  const block = await rpc.getBlock(slot, config).send().catch((e) => {
236
185
  throw e;
237
186
  });
238
- if (block === null) {
239
- return { slot };
240
- }
241
- const queryResponse = processQueryResponse3({ block, encoding, transactionDetails });
242
- return queryResponse;
187
+ return block === null ? { slot } : transformLoadedBlock({ block, encoding: config.encoding, transactionDetails: config.transactionDetails });
243
188
  }
244
189
  function createBlockBatchLoadFn(rpc) {
245
190
  const resolveBlockUsingRpc = loadBlock.bind(null, rpc);
@@ -254,42 +199,21 @@ function createBlockLoader(rpc) {
254
199
  if (onlyPresentFieldRequested("slot", info)) {
255
200
  return { slot: args.slot };
256
201
  }
257
- return loader.load(normalizeArgs3(args));
202
+ return loader.load(normalizeArgs2(args));
258
203
  }
259
204
  };
260
205
  }
261
- function normalizeArgs4(args) {
262
- const { commitment, dataSlice, encoding, filters, minContextSlot, programAddress } = args;
263
- return {
264
- commitment: commitment ?? "confirmed",
265
- dataSlice,
266
- encoding: encoding ?? "jsonParsed",
267
- filters,
268
- minContextSlot,
269
- programAddress
270
- };
271
- }
272
- function processQueryResponse4({ encoding, programAccounts }) {
273
- return programAccounts.map((programAccount) => {
274
- const [refinedData, responseEncoding] = Array.isArray(programAccount.account.data) ? encoding === "jsonParsed" ? [programAccount.account.data[0], "base64"] : [programAccount.account.data[0], encoding] : [refineJsonParsedAccountData(programAccount.account.data), "jsonParsed"];
275
- const pubkey = programAccount.pubkey;
276
- const responseBase = {
277
- ...programAccount.account,
278
- address: pubkey,
279
- encoding: responseEncoding
280
- };
281
- return typeof refinedData === "object" && "meta" in refinedData ? {
282
- ...responseBase,
283
- data: refinedData.data,
284
- meta: refinedData.meta
285
- } : {
286
- ...responseBase,
287
- data: refinedData
288
- };
289
- });
206
+ function normalizeArgs3({
207
+ commitment = "confirmed",
208
+ dataSlice,
209
+ encoding = "jsonParsed",
210
+ filters,
211
+ minContextSlot,
212
+ programAddress
213
+ }) {
214
+ return { commitment, dataSlice, encoding, filters, minContextSlot, programAddress };
290
215
  }
291
216
  async function loadProgramAccounts(rpc, { programAddress, ...config }) {
292
- const { encoding } = config;
293
217
  const programAccounts = await rpc.getProgramAccounts(programAddress, config).send().then((res) => {
294
218
  if ("value" in res) {
295
219
  return res.value;
@@ -298,8 +222,13 @@ async function loadProgramAccounts(rpc, { programAddress, ...config }) {
298
222
  }).catch((e) => {
299
223
  throw e;
300
224
  });
301
- const queryResponse = processQueryResponse4({ encoding, programAccounts });
302
- return queryResponse;
225
+ return programAccounts.map(
226
+ (programAccount) => transformLoadedAccount({
227
+ account: programAccount.account,
228
+ address: programAccount.pubkey,
229
+ encoding: config.encoding
230
+ })
231
+ );
303
232
  }
304
233
  function createProgramAccountsBatchLoadFn(rpc) {
305
234
  const resolveProgramAccountsUsingRpc = loadProgramAccounts.bind(null, rpc);
@@ -316,6 +245,51 @@ function createProgramAccountsLoader(rpc) {
316
245
  if (onlyPresentFieldRequested("programAddress", info)) {
317
246
  return { programAddress: args.programAddress };
318
247
  }
248
+ return loader.load(normalizeArgs3(args));
249
+ }
250
+ };
251
+ }
252
+ function normalizeArgs4({ commitment = "confirmed", encoding = "jsonParsed", signature }) {
253
+ return {
254
+ commitment,
255
+ encoding,
256
+ // Always use 0 to avoid silly errors
257
+ maxSupportedTransactionVersion: 0,
258
+ signature
259
+ };
260
+ }
261
+ async function loadTransaction(rpc, { signature, ...config }) {
262
+ const { encoding } = config;
263
+ const transaction = await rpc.getTransaction(signature, config).send().catch((e) => {
264
+ throw e;
265
+ });
266
+ if (transaction === null) {
267
+ return null;
268
+ }
269
+ if (encoding !== "jsonParsed") {
270
+ const transactionJsonParsed = await rpc.getTransaction(signature, config).send().catch((e) => {
271
+ throw e;
272
+ });
273
+ if (transactionJsonParsed === null) {
274
+ return null;
275
+ }
276
+ transaction.meta = transactionJsonParsed.meta;
277
+ }
278
+ return transformLoadedTransaction({ encoding, transaction });
279
+ }
280
+ function createTransactionBatchLoadFn(rpc) {
281
+ const resolveTransactionUsingRpc = loadTransaction.bind(null, rpc);
282
+ return async (transactionQueryArgs) => {
283
+ return await Promise.all(transactionQueryArgs.map(async (args) => await resolveTransactionUsingRpc(args)));
284
+ };
285
+ }
286
+ function createTransactionLoader(rpc) {
287
+ const loader = new DataLoader(createTransactionBatchLoadFn(rpc), { cacheKeyFn: fastStableStringify });
288
+ return {
289
+ load: async (args, info) => {
290
+ if (onlyPresentFieldRequested("signature", info)) {
291
+ return { signature: args.signature };
292
+ }
319
293
  return loader.load(normalizeArgs4(args));
320
294
  }
321
295
  };
@@ -346,10 +320,10 @@ var accountTypeDefs = (
346
320
  # Account interface
347
321
  interface Account {
348
322
  address: Address
349
- encoding: AccountEncoding
350
323
  executable: Boolean
351
324
  lamports: BigInt
352
- owner: Account
325
+ ownerProgram: Account
326
+ space: BigInt
353
327
  rentEpoch: BigInt
354
328
  }
355
329
 
@@ -357,10 +331,10 @@ var accountTypeDefs = (
357
331
  type AccountBase58 implements Account {
358
332
  address: Address
359
333
  data: Base58EncodedBytes
360
- encoding: AccountEncoding
361
334
  executable: Boolean
362
335
  lamports: BigInt
363
- owner: Account
336
+ ownerProgram: Account
337
+ space: BigInt
364
338
  rentEpoch: BigInt
365
339
  }
366
340
 
@@ -368,10 +342,10 @@ var accountTypeDefs = (
368
342
  type AccountBase64 implements Account {
369
343
  address: Address
370
344
  data: Base64EncodedBytes
371
- encoding: AccountEncoding
372
345
  executable: Boolean
373
346
  lamports: BigInt
374
- owner: Account
347
+ ownerProgram: Account
348
+ space: BigInt
375
349
  rentEpoch: BigInt
376
350
  }
377
351
 
@@ -379,99 +353,73 @@ var accountTypeDefs = (
379
353
  type AccountBase64Zstd implements Account {
380
354
  address: Address
381
355
  data: Base64ZstdEncodedBytes
382
- encoding: AccountEncoding
383
356
  executable: Boolean
384
357
  lamports: BigInt
385
- owner: Account
386
- rentEpoch: BigInt
387
- }
388
-
389
- # Interface for JSON-parsed meta
390
- type JsonParsedAccountMeta {
391
- program: String
358
+ ownerProgram: Account
392
359
  space: BigInt
393
- type: String
394
- }
395
- interface AccountJsonParsed {
396
- meta: JsonParsedAccountMeta
360
+ rentEpoch: BigInt
397
361
  }
398
362
 
399
363
  # A nonce account
400
364
  type NonceAccountFeeCalculator {
401
365
  lamportsPerSignature: String
402
366
  }
403
- type NonceAccountData {
367
+ type NonceAccount implements Account {
368
+ address: Address
369
+ executable: Boolean
370
+ lamports: BigInt
371
+ ownerProgram: Account
372
+ space: BigInt
373
+ rentEpoch: BigInt
404
374
  authority: Account
405
375
  blockhash: String
406
376
  feeCalculator: NonceAccountFeeCalculator
407
377
  }
408
- type NonceAccount implements Account & AccountJsonParsed {
378
+
379
+ # A lookup table account
380
+ type LookupTableAccount implements Account {
409
381
  address: Address
410
- data: NonceAccountData
411
- encoding: AccountEncoding
412
382
  executable: Boolean
413
383
  lamports: BigInt
414
- meta: JsonParsedAccountMeta
415
- owner: Account
384
+ ownerProgram: Account
385
+ space: BigInt
416
386
  rentEpoch: BigInt
417
- }
418
-
419
- # A lookup table account
420
- type LookupTableAccountData {
421
- addresses: [String]
387
+ addresses: [Address]
422
388
  authority: Account
423
389
  deactivationSlot: String
424
390
  lastExtendedSlot: String
425
391
  lastExtendedSlotStartIndex: Int
426
392
  }
427
- type LookupTableAccount implements Account & AccountJsonParsed {
393
+
394
+ # A mint account
395
+ type MintAccount implements Account {
428
396
  address: Address
429
- data: LookupTableAccountData
430
- encoding: AccountEncoding
431
397
  executable: Boolean
432
398
  lamports: BigInt
433
- meta: JsonParsedAccountMeta
434
- owner: Account
399
+ ownerProgram: Account
400
+ space: BigInt
435
401
  rentEpoch: BigInt
436
- }
437
-
438
- # A mint account
439
- type MintAccountData {
440
402
  decimals: Int
441
403
  freezeAuthority: Account
442
404
  isInitialized: Boolean
443
405
  mintAuthority: Account
444
406
  supply: String
445
407
  }
446
- type MintAccount implements Account & AccountJsonParsed {
408
+
409
+ # A token account
410
+ type TokenAccount implements Account {
447
411
  address: Address
448
- data: MintAccountData
449
- encoding: AccountEncoding
450
412
  executable: Boolean
451
413
  lamports: BigInt
452
- meta: JsonParsedAccountMeta
453
- owner: Account
414
+ ownerProgram: Account
415
+ space: BigInt
454
416
  rentEpoch: BigInt
455
- }
456
-
457
- # A token account
458
- type TokenAccountData {
459
417
  isNative: Boolean
460
418
  mint: Account
461
419
  owner: Account
462
420
  state: String
463
421
  tokenAmount: TokenAmount
464
422
  }
465
- type TokenAccount implements Account & AccountJsonParsed {
466
- address: Address
467
- data: TokenAccountData
468
- encoding: AccountEncoding
469
- executable: Boolean
470
- lamports: BigInt
471
- meta: JsonParsedAccountMeta
472
- owner: Account
473
- rentEpoch: BigInt
474
- }
475
423
 
476
424
  # A stake account
477
425
  type StakeAccountDataMetaAuthorized {
@@ -499,19 +447,15 @@ var accountTypeDefs = (
499
447
  creditsObserved: BigInt
500
448
  delegation: StakeAccountDataStakeDelegation
501
449
  }
502
- type StakeAccountData {
503
- meta: StakeAccountDataMeta
504
- stake: StakeAccountDataStake
505
- }
506
- type StakeAccount implements Account & AccountJsonParsed {
450
+ type StakeAccount implements Account {
507
451
  address: Address
508
- data: StakeAccountData
509
- encoding: AccountEncoding
510
452
  executable: Boolean
511
453
  lamports: BigInt
512
- meta: JsonParsedAccountMeta
513
- owner: Account
454
+ ownerProgram: Account
455
+ space: BigInt
514
456
  rentEpoch: BigInt
457
+ meta: StakeAccountDataMeta
458
+ stake: StakeAccountDataStake
515
459
  }
516
460
 
517
461
  # A vote account
@@ -532,27 +476,23 @@ var accountTypeDefs = (
532
476
  confirmationCount: Int
533
477
  slot: BigInt
534
478
  }
535
- type VoteAccountData {
479
+ type VoteAccount implements Account {
480
+ address: Address
481
+ executable: Boolean
482
+ lamports: BigInt
483
+ ownerProgram: Account
484
+ space: BigInt
485
+ rentEpoch: BigInt
536
486
  authorizedVoters: [VoteAccountDataAuthorizedVoter]
537
487
  authorizedWithdrawer: Account
538
488
  commission: Int
539
489
  epochCredits: [VoteAccountDataEpochCredit]
540
490
  lastTimestamp: VoteAccountDataLastTimestamp
541
491
  node: Account
542
- priorVoters: [String]
492
+ priorVoters: [Address]
543
493
  rootSlot: BigInt
544
494
  votes: [VoteAccountDataVote]
545
495
  }
546
- type VoteAccount implements Account & AccountJsonParsed {
547
- address: Address
548
- data: VoteAccountData
549
- encoding: AccountEncoding
550
- executable: Boolean
551
- lamports: BigInt
552
- meta: JsonParsedAccountMeta
553
- owner: Account
554
- rentEpoch: BigInt
555
- }
556
496
  `
557
497
  );
558
498
  var accountResolvers = {
@@ -568,22 +508,22 @@ var accountResolvers = {
568
508
  return "AccountBase64Zstd";
569
509
  }
570
510
  if (account.encoding === "jsonParsed") {
571
- if (account.meta.program === "nonce") {
511
+ if (account.programName === "nonce") {
572
512
  return "NonceAccount";
573
513
  }
574
- if (account.meta.type === "mint" && account.meta.program === "spl-token") {
514
+ if (account.accountType === "mint" && account.programName === "spl-token") {
575
515
  return "MintAccount";
576
516
  }
577
- if (account.meta.type === "account" && account.meta.program === "spl-token") {
517
+ if (account.accountType === "account" && account.programName === "spl-token") {
578
518
  return "TokenAccount";
579
519
  }
580
- if (account.meta.program === "stake") {
520
+ if (account.programName === "stake") {
581
521
  return "StakeAccount";
582
522
  }
583
- if (account.meta.type === "vote" && account.meta.program === "vote") {
523
+ if (account.accountType === "vote" && account.programName === "vote") {
584
524
  return "VoteAccount";
585
525
  }
586
- if (account.meta.type === "lookupTable" && account.meta.program === "address-lookup-table") {
526
+ if (account.accountType === "lookupTable" && account.programName === "address-lookup-table") {
587
527
  return "LookupTableAccount";
588
528
  }
589
529
  }
@@ -591,39 +531,31 @@ var accountResolvers = {
591
531
  }
592
532
  },
593
533
  AccountBase58: {
594
- owner: resolveAccount("owner")
534
+ ownerProgram: resolveAccount("ownerProgram")
595
535
  },
596
536
  AccountBase64: {
597
- owner: resolveAccount("owner")
537
+ ownerProgram: resolveAccount("ownerProgram")
598
538
  },
599
539
  AccountBase64Zstd: {
600
- owner: resolveAccount("owner")
601
- },
602
- NonceAccountData: {
603
- authority: resolveAccount("authority")
540
+ ownerProgram: resolveAccount("ownerProgram")
604
541
  },
605
542
  NonceAccount: {
606
- owner: resolveAccount("owner")
607
- },
608
- LookupTableAccountData: {
609
- authority: resolveAccount("authority")
543
+ authority: resolveAccount("authority"),
544
+ ownerProgram: resolveAccount("ownerProgram")
610
545
  },
611
546
  LookupTableAccount: {
612
- owner: resolveAccount("owner")
613
- },
614
- MintAccountData: {
615
- freezeAuthority: resolveAccount("freezeAuthority"),
616
- mintAuthority: resolveAccount("mintAuthority")
547
+ authority: resolveAccount("authority"),
548
+ ownerProgram: resolveAccount("ownerProgram")
617
549
  },
618
550
  MintAccount: {
619
- owner: resolveAccount("owner")
620
- },
621
- TokenAccountData: {
622
- mint: resolveAccount("mint"),
623
- owner: resolveAccount("owner")
551
+ freezeAuthority: resolveAccount("freezeAuthority"),
552
+ mintAuthority: resolveAccount("mintAuthority"),
553
+ ownerProgram: resolveAccount("ownerProgram")
624
554
  },
625
555
  TokenAccount: {
626
- owner: resolveAccount("owner")
556
+ mint: resolveAccount("mint"),
557
+ owner: resolveAccount("owner"),
558
+ ownerProgram: resolveAccount("ownerProgram")
627
559
  },
628
560
  StakeAccountDataMetaAuthorized: {
629
561
  staker: resolveAccount("staker"),
@@ -636,17 +568,15 @@ var accountResolvers = {
636
568
  voter: resolveAccount("voter")
637
569
  },
638
570
  StakeAccount: {
639
- owner: resolveAccount("owner")
571
+ ownerProgram: resolveAccount("ownerProgram")
640
572
  },
641
573
  VoteAccountDataAuthorizedVoter: {
642
574
  authorizedVoter: resolveAccount("authorizedVoter")
643
575
  },
644
- VoteAccountData: {
645
- authorizedWithdrawer: resolveAccount("authorizedWithdrawer"),
646
- node: resolveAccount("nodePubkey")
647
- },
648
576
  VoteAccount: {
649
- owner: resolveAccount("owner")
577
+ authorizedWithdrawer: resolveAccount("authorizedWithdrawer"),
578
+ node: resolveAccount("nodePubkey"),
579
+ ownerProgram: resolveAccount("ownerProgram")
650
580
  }
651
581
  };
652
582
 
@@ -904,11 +834,6 @@ var commonResolvers = {
904
834
  var instructionTypeDefs = (
905
835
  /* GraphQL */
906
836
  `
907
- type JsonParsedInstructionMeta {
908
- program: String
909
- type: String
910
- }
911
-
912
837
  # Transaction instruction interface
913
838
  interface TransactionInstruction {
914
839
  programId: Address
@@ -922,7 +847,8 @@ var instructionTypeDefs = (
922
847
  }
923
848
 
924
849
  # AddressLookupTable: CreateLookupTable
925
- type CreateLookupTableInstructionData {
850
+ type CreateLookupTableInstruction implements TransactionInstruction {
851
+ programId: Address
926
852
  bumpSeed: BigInt # FIXME:*
927
853
  lookupTableAccount: Account
928
854
  lookupTableAuthority: Account
@@ -930,107 +856,71 @@ var instructionTypeDefs = (
930
856
  recentSlot: BigInt
931
857
  systemProgram: Account
932
858
  }
933
- type CreateLookupTableInstruction implements TransactionInstruction {
934
- data: CreateLookupTableInstructionData
935
- meta: JsonParsedInstructionMeta
936
- programId: Address
937
- }
938
859
 
939
860
  # AddressLookupTable: ExtendLookupTable
940
- type ExtendLookupTableInstructionData {
861
+ type ExtendLookupTableInstruction implements TransactionInstruction {
862
+ programId: Address
941
863
  lookupTableAccount: Account
942
864
  lookupTableAuthority: Account
943
865
  newAddresses: [Address]
944
866
  payerAccount: Account
945
867
  systemProgram: Account
946
868
  }
947
- type ExtendLookupTableInstruction implements TransactionInstruction {
948
- data: ExtendLookupTableInstructionData
949
- meta: JsonParsedInstructionMeta
950
- programId: Address
951
- }
952
869
 
953
870
  # AddressLookupTable: FreezeLookupTable
954
- type FreezeLookupTableInstructionData {
955
- lookupTableAccount: Account
956
- lookupTableAuthority: Account
957
- }
958
871
  type FreezeLookupTableInstruction implements TransactionInstruction {
959
- data: FreezeLookupTableInstructionData
960
- meta: JsonParsedInstructionMeta
961
872
  programId: Address
962
- }
963
-
964
- # AddressLookupTable: DeactivateLookupTable
965
- type DeactivateLookupTableInstructionData {
966
873
  lookupTableAccount: Account
967
874
  lookupTableAuthority: Account
968
875
  }
876
+
877
+ # AddressLookupTable: DeactivateLookupTable
969
878
  type DeactivateLookupTableInstruction implements TransactionInstruction {
970
- data: DeactivateLookupTableInstructionData
971
- meta: JsonParsedInstructionMeta
972
879
  programId: Address
880
+ lookupTableAccount: Account
881
+ lookupTableAuthority: Account
973
882
  }
974
883
 
975
884
  # AddressLookupTable: CloseLookupTable
976
- type CloseLookupTableInstructionData {
885
+ type CloseLookupTableInstruction implements TransactionInstruction {
886
+ programId: Address
977
887
  lookupTableAccount: Account
978
888
  lookupTableAuthority: Account
979
889
  recipient: Account
980
890
  }
981
- type CloseLookupTableInstruction implements TransactionInstruction {
982
- data: CloseLookupTableInstructionData
983
- meta: JsonParsedInstructionMeta
984
- programId: Address
985
- }
986
891
 
987
892
  # BpfLoader: Write
988
- type BpfLoaderWriteInstructionData {
893
+ type BpfLoaderWriteInstruction implements TransactionInstruction {
894
+ programId: Address
989
895
  account: Account
990
896
  bytes: Base64EncodedBytes
991
897
  offset: BigInt # FIXME:*
992
898
  }
993
- type BpfLoaderWriteInstruction implements TransactionInstruction {
994
- data: BpfLoaderWriteInstructionData
995
- meta: JsonParsedInstructionMeta
996
- programId: Address
997
- }
998
899
 
999
900
  # BpfLoader: Finalize
1000
- type BpfLoaderFinalizeInstructionData {
1001
- account: Account
1002
- }
1003
901
  type BpfLoaderFinalizeInstruction implements TransactionInstruction {
1004
- data: BpfLoaderFinalizeInstructionData
1005
- meta: JsonParsedInstructionMeta
1006
902
  programId: Address
903
+ account: Account
1007
904
  }
1008
905
 
1009
906
  # BpfUpgradeableLoader: InitializeBuffer
1010
- type BpfUpgradeableLoaderInitializeBufferInstructionData {
1011
- account: Account
1012
- }
1013
907
  type BpfUpgradeableLoaderInitializeBufferInstruction implements TransactionInstruction {
1014
- data: BpfUpgradeableLoaderInitializeBufferInstructionData
1015
- meta: JsonParsedInstructionMeta
1016
908
  programId: Address
909
+ account: Account
1017
910
  }
1018
911
 
1019
912
  # BpfUpgradeableLoader: Write
1020
- type BpfUpgradeableLoaderWriteInstructionData {
913
+ type BpfUpgradeableLoaderWriteInstruction implements TransactionInstruction {
914
+ programId: Address
1021
915
  account: Account
1022
916
  authority: Account
1023
917
  bytes: Base64EncodedBytes
1024
918
  offset: BigInt # FIXME:*
1025
919
  }
1026
- type BpfUpgradeableLoaderWriteInstruction implements TransactionInstruction {
1027
- data: BpfUpgradeableLoaderWriteInstructionData
1028
- meta: JsonParsedInstructionMeta
1029
- programId: Address
1030
- }
1031
920
 
1032
921
  # BpfUpgradeableLoader: DeployWithMaxDataLen
1033
- type BpfUpgradeableLoaderDeployWithMaxDataLenInstructionData {
922
+ type BpfUpgradeableLoaderDeployWithMaxDataLenInstruction implements TransactionInstruction {
923
+ programId: Address
1034
924
  authority: Account
1035
925
  bufferAccount: Account
1036
926
  clockSysvar: Address
@@ -1040,14 +930,10 @@ var instructionTypeDefs = (
1040
930
  programDataAccount: Account
1041
931
  rentSysvar: Address
1042
932
  }
1043
- type BpfUpgradeableLoaderDeployWithMaxDataLenInstruction implements TransactionInstruction {
1044
- data: BpfUpgradeableLoaderDeployWithMaxDataLenInstructionData
1045
- meta: JsonParsedInstructionMeta
1046
- programId: Address
1047
- }
1048
933
 
1049
934
  # BpfUpgradeableLoader: Upgrade
1050
- type BpfUpgradeableLoaderUpgradeInstructionData {
935
+ type BpfUpgradeableLoaderUpgradeInstruction implements TransactionInstruction {
936
+ programId: Address
1051
937
  authority: Account
1052
938
  bufferAccount: Account
1053
939
  clockSysvar: Address
@@ -1056,65 +942,46 @@ var instructionTypeDefs = (
1056
942
  rentSysvar: Address
1057
943
  spillAccount: Account
1058
944
  }
1059
- type BpfUpgradeableLoaderUpgradeInstruction implements TransactionInstruction {
1060
- data: BpfUpgradeableLoaderUpgradeInstructionData
1061
- meta: JsonParsedInstructionMeta
1062
- programId: Address
1063
- }
1064
945
 
1065
946
  # BpfUpgradeableLoader: SetAuthority
1066
- type BpfUpgradeableLoaderSetAuthorityInstructionData {
947
+
948
+ type BpfUpgradeableLoaderSetAuthorityInstruction implements TransactionInstruction {
949
+ programId: Address
1067
950
  account: Account
1068
951
  authority: Account
1069
952
  newAuthority: Account
1070
953
  }
1071
- type BpfUpgradeableLoaderSetAuthorityInstruction implements TransactionInstruction {
1072
- data: BpfUpgradeableLoaderSetAuthorityInstructionData
1073
- meta: JsonParsedInstructionMeta
1074
- programId: Address
1075
- }
1076
954
 
1077
955
  # BpfUpgradeableLoader: SetAuthorityChecked
1078
- type BpfUpgradeableLoaderSetAuthorityCheckedInstructionData {
956
+ type BpfUpgradeableLoaderSetAuthorityCheckedInstruction implements TransactionInstruction {
957
+ programId: Address
1079
958
  account: Account
1080
959
  authority: Account
1081
960
  newAuthority: Account
1082
961
  }
1083
- type BpfUpgradeableLoaderSetAuthorityCheckedInstruction implements TransactionInstruction {
1084
- data: BpfUpgradeableLoaderSetAuthorityCheckedInstructionData
1085
- meta: JsonParsedInstructionMeta
1086
- programId: Address
1087
- }
1088
962
 
1089
963
  # BpfUpgradeableLoader: Close
1090
- type BpfUpgradeableLoaderCloseInstructionData {
964
+ type BpfUpgradeableLoaderCloseInstruction implements TransactionInstruction {
965
+ programId: Address
1091
966
  account: Account
1092
967
  authority: Account
1093
968
  programAccount: Account
1094
969
  recipient: Account
1095
970
  }
1096
- type BpfUpgradeableLoaderCloseInstruction implements TransactionInstruction {
1097
- data: BpfUpgradeableLoaderCloseInstructionData
1098
- meta: JsonParsedInstructionMeta
1099
- programId: Address
1100
- }
1101
971
 
1102
972
  # BpfUpgradeableLoader: ExtendProgram
1103
- type BpfUpgradeableLoaderExtendProgramInstructionData {
973
+ type BpfUpgradeableLoaderExtendProgramInstruction implements TransactionInstruction {
974
+ programId: Address
1104
975
  additionalBytes: BigInt
1105
976
  payerAccount: Account
1106
977
  programAccount: Account
1107
978
  programDataAccount: Account
1108
979
  systemProgram: Account
1109
980
  }
1110
- type BpfUpgradeableLoaderExtendProgramInstruction implements TransactionInstruction {
1111
- data: BpfUpgradeableLoaderExtendProgramInstructionData
1112
- meta: JsonParsedInstructionMeta
1113
- programId: Address
1114
- }
1115
981
 
1116
982
  # SplAssociatedTokenAccount: Create
1117
- type SplAssociatedTokenCreateInstructionData {
983
+ type SplAssociatedTokenCreateInstruction implements TransactionInstruction {
984
+ programId: Address
1118
985
  account: Account
1119
986
  mint: Address
1120
987
  source: Account
@@ -1122,14 +989,10 @@ var instructionTypeDefs = (
1122
989
  tokenProgram: Account
1123
990
  wallet: Account
1124
991
  }
1125
- type SplAssociatedTokenCreateInstruction implements TransactionInstruction {
1126
- data: SplAssociatedTokenCreateInstructionData
1127
- meta: JsonParsedInstructionMeta
1128
- programId: Address
1129
- }
1130
992
 
1131
993
  # SplAssociatedTokenAccount: CreateIdempotent
1132
- type SplAssociatedTokenCreateIdempotentInstructionData {
994
+ type SplAssociatedTokenCreateIdempotentInstruction implements TransactionInstruction {
995
+ programId: Address
1133
996
  account: Account
1134
997
  mint: Address
1135
998
  source: Account
@@ -1137,14 +1000,10 @@ var instructionTypeDefs = (
1137
1000
  tokenProgram: Account
1138
1001
  wallet: Account
1139
1002
  }
1140
- type SplAssociatedTokenCreateIdempotentInstruction implements TransactionInstruction {
1141
- data: SplAssociatedTokenCreateIdempotentInstructionData
1142
- meta: JsonParsedInstructionMeta
1143
- programId: Address
1144
- }
1145
1003
 
1146
1004
  # SplAssociatedTokenAccount: RecoverNested
1147
- type SplAssociatedTokenRecoverNestedInstructionData {
1005
+ type SplAssociatedTokenRecoverNestedInstruction implements TransactionInstruction {
1006
+ programId: Address
1148
1007
  destination: Account
1149
1008
  nestedMint: Account
1150
1009
  nestedOwner: Account
@@ -1153,167 +1012,115 @@ var instructionTypeDefs = (
1153
1012
  tokenProgram: Account
1154
1013
  wallet: Account
1155
1014
  }
1156
- type SplAssociatedTokenRecoverNestedInstruction implements TransactionInstruction {
1157
- data: SplAssociatedTokenRecoverNestedInstructionData
1158
- meta: JsonParsedInstructionMeta
1159
- programId: Address
1160
- }
1161
1015
 
1162
1016
  # SplMemo
1163
- type SplMemoInstructionData {
1164
- data: String
1165
- }
1166
1017
  type SplMemoInstruction implements TransactionInstruction {
1167
- data: SplMemoInstructionData
1168
- meta: JsonParsedInstructionMeta
1169
1018
  programId: Address
1019
+ data: String
1170
1020
  }
1171
1021
 
1172
1022
  # SplToken: InitializeMint
1173
- type SplTokenInitializeMintInstructionData {
1023
+ type SplTokenInitializeMintInstruction implements TransactionInstruction {
1024
+ programId: Address
1174
1025
  decimals: BigInt # FIXME:*
1175
1026
  freezeAuthority: Account
1176
1027
  mint: Account
1177
1028
  mintAuthority: Account
1178
1029
  rentSysvar: Address
1179
1030
  }
1180
- type SplTokenInitializeMintInstruction implements TransactionInstruction {
1181
- data: SplTokenInitializeMintInstructionData
1182
- meta: JsonParsedInstructionMeta
1183
- programId: Address
1184
- }
1185
1031
 
1186
1032
  # SplToken: InitializeMint2
1187
- type SplTokenInitializeMint2InstructionData {
1033
+ type SplTokenInitializeMint2Instruction implements TransactionInstruction {
1034
+ programId: Address
1188
1035
  decimals: BigInt # FIXME:*
1189
1036
  freezeAuthority: Account
1190
1037
  mint: Account
1191
1038
  mintAuthority: Account
1192
1039
  }
1193
- type SplTokenInitializeMint2Instruction implements TransactionInstruction {
1194
- data: SplTokenInitializeMint2InstructionData
1195
- meta: JsonParsedInstructionMeta
1196
- programId: Address
1197
- }
1198
1040
 
1199
1041
  # SplToken: InitializeAccount
1200
- type SplTokenInitializeAccountInstructionData {
1042
+ type SplTokenInitializeAccountInstruction implements TransactionInstruction {
1043
+ programId: Address
1201
1044
  account: Account
1202
1045
  mint: Account
1203
1046
  owner: Account
1204
1047
  rentSysvar: Address
1205
1048
  }
1206
- type SplTokenInitializeAccountInstruction implements TransactionInstruction {
1207
- data: SplTokenInitializeAccountInstructionData
1208
- meta: JsonParsedInstructionMeta
1209
- programId: Address
1210
- }
1211
1049
 
1212
1050
  # SplToken: InitializeAccount2
1213
- type SplTokenInitializeAccount2InstructionData {
1051
+ type SplTokenInitializeAccount2Instruction implements TransactionInstruction {
1052
+ programId: Address
1214
1053
  account: Account
1215
1054
  mint: Account
1216
1055
  owner: Account
1217
1056
  rentSysvar: Address
1218
1057
  }
1219
- type SplTokenInitializeAccount2Instruction implements TransactionInstruction {
1220
- data: SplTokenInitializeAccount2InstructionData
1221
- meta: JsonParsedInstructionMeta
1222
- programId: Address
1223
- }
1224
1058
 
1225
1059
  # SplToken: InitializeAccount3
1226
- type SplTokenInitializeAccount3InstructionData {
1060
+ type SplTokenInitializeAccount3Instruction implements TransactionInstruction {
1061
+ programId: Address
1227
1062
  account: Account
1228
1063
  mint: Account
1229
1064
  owner: Account
1230
1065
  }
1231
- type SplTokenInitializeAccount3Instruction implements TransactionInstruction {
1232
- data: SplTokenInitializeAccount3InstructionData
1233
- meta: JsonParsedInstructionMeta
1234
- programId: Address
1235
- }
1236
1066
 
1237
1067
  # SplToken: InitializeMultisig
1238
- type SplTokenInitializeMultisigInstructionData {
1068
+ type SplTokenInitializeMultisigInstruction implements TransactionInstruction {
1069
+ programId: Address
1239
1070
  m: BigInt # FIXME:*
1240
1071
  multisig: Account
1241
1072
  rentSysvar: Address
1242
1073
  signers: [Address]
1243
1074
  }
1244
- type SplTokenInitializeMultisigInstruction implements TransactionInstruction {
1245
- data: SplTokenInitializeMultisigInstructionData
1246
- meta: JsonParsedInstructionMeta
1247
- programId: Address
1248
- }
1249
1075
 
1250
1076
  # SplToken: InitializeMultisig2
1251
- type SplTokenInitializeMultisig2InstructionData {
1077
+ type SplTokenInitializeMultisig2Instruction implements TransactionInstruction {
1078
+ programId: Address
1252
1079
  m: BigInt # FIXME:*
1253
1080
  multisig: Account
1254
1081
  signers: [Address]
1255
1082
  }
1256
- type SplTokenInitializeMultisig2Instruction implements TransactionInstruction {
1257
- data: SplTokenInitializeMultisig2InstructionData
1258
- meta: JsonParsedInstructionMeta
1259
- programId: Address
1260
- }
1261
1083
 
1262
1084
  # SplToken: Transfer
1263
- type SplTokenTransferInstructionData {
1085
+ type SplTokenTransferInstruction implements TransactionInstruction {
1086
+ programId: Address
1264
1087
  amount: String
1265
1088
  authority: Account
1266
1089
  destination: Account
1267
1090
  multisigAuthority: Account
1268
1091
  source: Account
1269
1092
  }
1270
- type SplTokenTransferInstruction implements TransactionInstruction {
1271
- data: SplTokenTransferInstructionData
1272
- meta: JsonParsedInstructionMeta
1273
- programId: Address
1274
- }
1275
1093
 
1276
1094
  # SplToken: Approve
1277
- type SplTokenApproveInstructionData {
1095
+ type SplTokenApproveInstruction implements TransactionInstruction {
1096
+ programId: Address
1278
1097
  amount: String
1279
1098
  delegate: Account
1280
1099
  multisigOwner: Account
1281
1100
  owner: Account
1282
1101
  source: Account
1283
1102
  }
1284
- type SplTokenApproveInstruction implements TransactionInstruction {
1285
- data: SplTokenApproveInstructionData
1286
- meta: JsonParsedInstructionMeta
1287
- programId: Address
1288
- }
1289
1103
 
1290
1104
  # SplToken: Revoke
1291
- type SplTokenRevokeInstructionData {
1105
+ type SplTokenRevokeInstruction implements TransactionInstruction {
1106
+ programId: Address
1292
1107
  multisigOwner: Account
1293
1108
  owner: Account
1294
1109
  source: Account
1295
1110
  }
1296
- type SplTokenRevokeInstruction implements TransactionInstruction {
1297
- data: SplTokenRevokeInstructionData
1298
- meta: JsonParsedInstructionMeta
1299
- programId: Address
1300
- }
1301
1111
 
1302
1112
  # SplToken: SetAuthority
1303
- type SplTokenSetAuthorityInstructionData {
1113
+ type SplTokenSetAuthorityInstruction implements TransactionInstruction {
1114
+ programId: Address
1304
1115
  authority: Account
1305
1116
  authorityType: String
1306
1117
  multisigAuthority: Account
1307
1118
  newAuthority: Account
1308
1119
  }
1309
- type SplTokenSetAuthorityInstruction implements TransactionInstruction {
1310
- data: SplTokenSetAuthorityInstructionData
1311
- meta: JsonParsedInstructionMeta
1312
- programId: Address
1313
- }
1314
1120
 
1315
1121
  # SplToken: MintTo
1316
- type SplTokenMintToInstructionData {
1122
+ type SplTokenMintToInstruction implements TransactionInstruction {
1123
+ programId: Address
1317
1124
  account: Account
1318
1125
  amount: String
1319
1126
  authority: Account
@@ -1321,67 +1128,47 @@ var instructionTypeDefs = (
1321
1128
  mintAuthority: Account
1322
1129
  multisigMintAuthority: Account
1323
1130
  }
1324
- type SplTokenMintToInstruction implements TransactionInstruction {
1325
- data: SplTokenMintToInstructionData
1326
- meta: JsonParsedInstructionMeta
1327
- programId: Address
1328
- }
1329
1131
 
1330
1132
  # SplToken: Burn
1331
- type SplTokenBurnInstructionData {
1133
+ type SplTokenBurnInstruction implements TransactionInstruction {
1134
+ programId: Address
1332
1135
  account: Account
1333
1136
  amount: String
1334
1137
  authority: Account
1335
1138
  mint: Account
1336
1139
  multisigAuthority: Account
1337
1140
  }
1338
- type SplTokenBurnInstruction implements TransactionInstruction {
1339
- data: SplTokenBurnInstructionData
1340
- meta: JsonParsedInstructionMeta
1341
- programId: Address
1342
- }
1343
1141
 
1344
1142
  # SplToken: CloseAccount
1345
- type SplTokenCloseAccountInstructionData {
1143
+ type SplTokenCloseAccountInstruction implements TransactionInstruction {
1144
+ programId: Address
1346
1145
  account: Account
1347
1146
  destination: Account
1348
1147
  multisigOwner: Account
1349
1148
  owner: Account
1350
1149
  }
1351
- type SplTokenCloseAccountInstruction implements TransactionInstruction {
1352
- data: SplTokenCloseAccountInstructionData
1353
- meta: JsonParsedInstructionMeta
1354
- programId: Address
1355
- }
1356
1150
 
1357
1151
  # SplToken: FreezeAccount
1358
- type SplTokenFreezeAccountInstructionData {
1152
+ type SplTokenFreezeAccountInstruction implements TransactionInstruction {
1153
+ programId: Address
1359
1154
  account: Account
1360
1155
  freezeAuthority: Account
1361
1156
  mint: Account
1362
1157
  multisigFreezeAuthority: Account
1363
1158
  }
1364
- type SplTokenFreezeAccountInstruction implements TransactionInstruction {
1365
- data: SplTokenFreezeAccountInstructionData
1366
- meta: JsonParsedInstructionMeta
1367
- programId: Address
1368
- }
1369
1159
 
1370
1160
  # SplToken: ThawAccount
1371
- type SplTokenThawAccountInstructionData {
1161
+ type SplTokenThawAccountInstruction implements TransactionInstruction {
1162
+ programId: Address
1372
1163
  account: Account
1373
1164
  freezeAuthority: Account
1374
1165
  mint: Account
1375
1166
  multisigFreezeAuthority: Account
1376
1167
  }
1377
- type SplTokenThawAccountInstruction implements TransactionInstruction {
1378
- data: SplTokenThawAccountInstructionData
1379
- meta: JsonParsedInstructionMeta
1380
- programId: Address
1381
- }
1382
1168
 
1383
1169
  # SplToken: TransferChecked
1384
- type SplTokenTransferCheckedInstructionData {
1170
+ type SplTokenTransferCheckedInstruction implements TransactionInstruction {
1171
+ programId: Address
1385
1172
  amount: String
1386
1173
  authority: Account
1387
1174
  decimals: BigInt # FIXME:*
@@ -1391,14 +1178,10 @@ var instructionTypeDefs = (
1391
1178
  source: Account
1392
1179
  tokenAmount: String
1393
1180
  }
1394
- type SplTokenTransferCheckedInstruction implements TransactionInstruction {
1395
- data: SplTokenTransferCheckedInstructionData
1396
- meta: JsonParsedInstructionMeta
1397
- programId: Address
1398
- }
1399
1181
 
1400
1182
  # SplToken: ApproveChecked
1401
- type SplTokenApproveCheckedInstructionData {
1183
+ type SplTokenApproveCheckedInstruction implements TransactionInstruction {
1184
+ programId: Address
1402
1185
  delegate: Account
1403
1186
  mint: Account
1404
1187
  multisigOwner: Account
@@ -1406,14 +1189,10 @@ var instructionTypeDefs = (
1406
1189
  source: Account
1407
1190
  tokenAmount: String
1408
1191
  }
1409
- type SplTokenApproveCheckedInstruction implements TransactionInstruction {
1410
- data: SplTokenApproveCheckedInstructionData
1411
- meta: JsonParsedInstructionMeta
1412
- programId: Address
1413
- }
1414
1192
 
1415
1193
  # SplToken: MintToChecked
1416
- type SplTokenMintToCheckedInstructionData {
1194
+ type SplTokenMintToCheckedInstruction implements TransactionInstruction {
1195
+ programId: Address
1417
1196
  account: Account
1418
1197
  authority: Account
1419
1198
  mint: Account
@@ -1421,88 +1200,55 @@ var instructionTypeDefs = (
1421
1200
  multisigMintAuthority: Account
1422
1201
  tokenAmount: String
1423
1202
  }
1424
- type SplTokenMintToCheckedInstruction implements TransactionInstruction {
1425
- data: SplTokenMintToCheckedInstructionData
1426
- meta: JsonParsedInstructionMeta
1427
- programId: Address
1428
- }
1429
1203
 
1430
1204
  # SplToken: BurnChecked
1431
- type SplTokenBurnCheckedInstructionData {
1205
+ type SplTokenBurnCheckedInstruction implements TransactionInstruction {
1206
+ programId: Address
1432
1207
  account: Account
1433
1208
  authority: Account
1434
1209
  mint: Account
1435
1210
  multisigAuthority: Account
1436
1211
  tokenAmount: String
1437
1212
  }
1438
- type SplTokenBurnCheckedInstruction implements TransactionInstruction {
1439
- data: SplTokenBurnCheckedInstructionData
1440
- meta: JsonParsedInstructionMeta
1441
- programId: Address
1442
- }
1443
1213
 
1444
1214
  # SplToken: SyncNative
1445
- type SplTokenSyncNativeInstructionData {
1446
- account: Account
1447
- }
1448
1215
  type SplTokenSyncNativeInstruction implements TransactionInstruction {
1449
- data: SplTokenSyncNativeInstructionData
1450
- meta: JsonParsedInstructionMeta
1451
1216
  programId: Address
1217
+ account: Account
1452
1218
  }
1453
1219
 
1454
1220
  # SplToken: GetAccountDataSize
1455
- type SplTokenGetAccountDataSizeInstructionData {
1456
- extensionTypes: [String]
1457
- mint: Account
1458
- }
1459
1221
  type SplTokenGetAccountDataSizeInstruction implements TransactionInstruction {
1460
- data: SplTokenGetAccountDataSizeInstructionData
1461
- meta: JsonParsedInstructionMeta
1462
1222
  programId: Address
1223
+ extensionTypes: [String]
1224
+ mint: Account
1463
1225
  }
1464
1226
 
1465
1227
  # SplToken: InitializeImmutableOwner
1466
- type SplTokenInitializeImmutableOwnerInstructionData {
1467
- account: Account
1468
- }
1469
1228
  type SplTokenInitializeImmutableOwnerInstruction implements TransactionInstruction {
1470
- data: SplTokenInitializeImmutableOwnerInstructionData
1471
- meta: JsonParsedInstructionMeta
1472
1229
  programId: Address
1230
+ account: Account
1473
1231
  }
1474
1232
 
1475
1233
  # SplToken: AmountToUiAmount
1476
- type SplTokenAmountToUiAmountInstructionData {
1477
- amount: String
1478
- mint: Account
1479
- }
1480
1234
  type SplTokenAmountToUiAmountInstruction implements TransactionInstruction {
1481
- data: SplTokenAmountToUiAmountInstructionData
1482
- meta: JsonParsedInstructionMeta
1483
1235
  programId: Address
1236
+ amount: String
1237
+ mint: Account
1484
1238
  }
1485
1239
 
1486
1240
  # SplToken: UiAmountToAmount
1487
- type SplTokenUiAmountToAmountInstructionData {
1488
- mint: Account
1489
- uiAmount: String
1490
- }
1491
1241
  type SplTokenUiAmountToAmountInstruction implements TransactionInstruction {
1492
- data: SplTokenUiAmountToAmountInstructionData
1493
- meta: JsonParsedInstructionMeta
1494
1242
  programId: Address
1243
+ mint: Account
1244
+ uiAmount: String
1495
1245
  }
1496
1246
 
1497
1247
  # SplToken: InitializeMintCloseAuthority
1498
- type SplTokenInitializeMintCloseAuthorityInstructionData {
1499
- mint: Account
1500
- newAuthority: Account
1501
- }
1502
1248
  type SplTokenInitializeMintCloseAuthorityInstruction implements TransactionInstruction {
1503
- data: SplTokenInitializeMintCloseAuthorityInstructionData
1504
- meta: JsonParsedInstructionMeta
1505
1249
  programId: Address
1250
+ mint: Account
1251
+ newAuthority: Account
1506
1252
  }
1507
1253
 
1508
1254
  # TODO: Extensions!
@@ -1532,20 +1278,17 @@ var instructionTypeDefs = (
1532
1278
  staker: Account
1533
1279
  withdrawer: Account
1534
1280
  }
1535
- type StakeInitializeInstructionData {
1281
+ type StakeInitializeInstruction implements TransactionInstruction {
1282
+ programId: Address
1536
1283
  authorized: StakeInitializeInstructionDataAuthorized
1537
1284
  lockup: Lockup
1538
1285
  rentSysvar: Address
1539
1286
  stakeAccount: Account
1540
1287
  }
1541
- type StakeInitializeInstruction implements TransactionInstruction {
1542
- data: StakeInitializeInstructionData
1543
- meta: JsonParsedInstructionMeta
1544
- programId: Address
1545
- }
1546
1288
 
1547
1289
  # Stake: Authorize
1548
- type StakeAuthorizeInstructionData {
1290
+ type StakeAuthorizeInstruction implements TransactionInstruction {
1291
+ programId: Address
1549
1292
  authority: Account
1550
1293
  authorityType: String
1551
1294
  clockSysvar: Address
@@ -1553,14 +1296,10 @@ var instructionTypeDefs = (
1553
1296
  newAuthority: Account
1554
1297
  stakeAccount: Account
1555
1298
  }
1556
- type StakeAuthorizeInstruction implements TransactionInstruction {
1557
- data: StakeAuthorizeInstructionData
1558
- meta: JsonParsedInstructionMeta
1559
- programId: Address
1560
- }
1561
1299
 
1562
1300
  # Stake: DelegateStake
1563
- type StakeDelegateStakeInstructionData {
1301
+ type StakeDelegateStakeInstruction implements TransactionInstruction {
1302
+ programId: Address
1564
1303
  clockSysvar: Address
1565
1304
  stakeAccount: Account
1566
1305
  stakeAuthority: Account
@@ -1568,79 +1307,55 @@ var instructionTypeDefs = (
1568
1307
  stakeHistorySysvar: Address
1569
1308
  voteAccount: Account
1570
1309
  }
1571
- type StakeDelegateStakeInstruction implements TransactionInstruction {
1572
- data: StakeDelegateStakeInstructionData
1573
- meta: JsonParsedInstructionMeta
1574
- programId: Address
1575
- }
1576
1310
 
1577
1311
  # Stake: Split
1578
- type StakeSplitInstructionData {
1312
+ type StakeSplitInstruction implements TransactionInstruction {
1313
+ programId: Address
1579
1314
  lamports: BigInt
1580
1315
  newSplitAccount: Account
1581
1316
  stakeAccount: Account
1582
1317
  stakeAuthority: Account
1583
1318
  }
1584
- type StakeSplitInstruction implements TransactionInstruction {
1585
- data: StakeSplitInstructionData
1586
- meta: JsonParsedInstructionMeta
1587
- programId: Address
1588
- }
1589
1319
 
1590
1320
  # Stake: Withdraw
1591
- type StakeWithdrawInstructionData {
1321
+ type StakeWithdrawInstruction implements TransactionInstruction {
1322
+ programId: Address
1592
1323
  clockSysvar: Address
1593
1324
  destination: Account
1594
1325
  lamports: BigInt
1595
1326
  stakeAccount: Account
1596
1327
  withdrawAuthority: Account
1597
1328
  }
1598
- type StakeWithdrawInstruction implements TransactionInstruction {
1599
- data: StakeWithdrawInstructionData
1600
- meta: JsonParsedInstructionMeta
1601
- programId: Address
1602
- }
1603
1329
 
1604
1330
  # Stake: Deactivate
1605
- type StakeDeactivateInstructionData {
1331
+ type StakeDeactivateInstruction implements TransactionInstruction {
1332
+ programId: Address
1606
1333
  clockSysvar: Address
1607
1334
  stakeAccount: Account
1608
1335
  stakeAuthority: Account
1609
1336
  }
1610
- type StakeDeactivateInstruction implements TransactionInstruction {
1611
- data: StakeDeactivateInstructionData
1612
- meta: JsonParsedInstructionMeta
1613
- programId: Address
1614
- }
1615
1337
 
1616
1338
  # Stake: SetLockup
1617
- type StakeSetLockupInstructionData {
1339
+ type StakeSetLockupInstruction implements TransactionInstruction {
1340
+ programId: Address
1618
1341
  custodian: Account
1619
1342
  lockup: Lockup
1620
1343
  stakeAccount: Account
1621
1344
  }
1622
- type StakeSetLockupInstruction implements TransactionInstruction {
1623
- data: StakeSetLockupInstructionData
1624
- meta: JsonParsedInstructionMeta
1625
- programId: Address
1626
- }
1627
1345
 
1628
1346
  # Stake: Merge
1629
- type StakeMergeInstructionData {
1347
+ type StakeMergeInstruction implements TransactionInstruction {
1348
+ programId: Address
1630
1349
  clockSysvar: Address
1631
1350
  destination: Account
1632
1351
  source: Account
1633
1352
  stakeAuthority: Account
1634
1353
  stakeHistorySysvar: Address
1635
1354
  }
1636
- type StakeMergeInstruction implements TransactionInstruction {
1637
- data: StakeMergeInstructionData
1638
- meta: JsonParsedInstructionMeta
1639
- programId: Address
1640
- }
1641
1355
 
1642
1356
  # Stake: AuthorizeWithSeed
1643
- type StakeAuthorizeWithSeedInstructionData {
1357
+ type StakeAuthorizeWithSeedInstruction implements TransactionInstruction {
1358
+ programId: Address
1644
1359
  authorityBase: Account
1645
1360
  authorityOwner: Account
1646
1361
  authoritySeed: String
@@ -1650,27 +1365,23 @@ var instructionTypeDefs = (
1650
1365
  newAuthorized: Account
1651
1366
  stakeAccount: Account
1652
1367
  }
1653
- type StakeAuthorizeWithSeedInstruction implements TransactionInstruction {
1654
- data: StakeAuthorizeWithSeedInstructionData
1655
- meta: JsonParsedInstructionMeta
1656
- programId: Address
1657
- }
1658
1368
 
1659
1369
  # Stake: InitializeChecked
1660
1370
  type StakeInitializeCheckedInstructionDataAuthorized {
1661
- rentSysvar: Address
1662
- stakeAccount: Account
1663
1371
  staker: Account
1664
1372
  withdrawer: Account
1665
1373
  }
1666
1374
  type StakeInitializeCheckedInstruction implements TransactionInstruction {
1667
- data: StakeInitializeCheckedInstructionDataAuthorized
1668
- meta: JsonParsedInstructionMeta
1669
1375
  programId: Address
1376
+ authorized: StakeInitializeCheckedInstructionDataAuthorized
1377
+ lockup: Lockup
1378
+ rentSysvar: Address
1379
+ stakeAccount: Account
1670
1380
  }
1671
1381
 
1672
1382
  # Stake: AuthorizeChecked
1673
- type StakeAuthorizeCheckedInstructionData {
1383
+ type StakeAuthorizeCheckedInstruction implements TransactionInstruction {
1384
+ programId: Address
1674
1385
  authority: Account
1675
1386
  authorityType: String
1676
1387
  clockSysvar: Address
@@ -1678,14 +1389,10 @@ var instructionTypeDefs = (
1678
1389
  newAuthority: Account
1679
1390
  stakeAccount: Account
1680
1391
  }
1681
- type StakeAuthorizeCheckedInstruction implements TransactionInstruction {
1682
- data: StakeAuthorizeCheckedInstructionData
1683
- meta: JsonParsedInstructionMeta
1684
- programId: Address
1685
- }
1686
1392
 
1687
1393
  # Stake: AuthorizeCheckedWithSeed
1688
- type StakeAuthorizeCheckedWithSeedInstructionData {
1394
+ type StakeAuthorizeCheckedWithSeedInstruction implements TransactionInstruction {
1395
+ programId: Address
1689
1396
  authorityBase: Account
1690
1397
  authorityOwner: Account
1691
1398
  authoritySeed: String
@@ -1695,115 +1402,79 @@ var instructionTypeDefs = (
1695
1402
  newAuthorized: Account
1696
1403
  stakeAccount: Account
1697
1404
  }
1698
- type StakeAuthorizeCheckedWithSeedInstruction implements TransactionInstruction {
1699
- data: StakeAuthorizeCheckedWithSeedInstructionData
1700
- meta: JsonParsedInstructionMeta
1701
- programId: Address
1702
- }
1703
1405
 
1704
1406
  # Stake: SetLockupChecked
1705
- type StakeSetLockupCheckedInstructionData {
1407
+ type StakeSetLockupCheckedInstruction implements TransactionInstruction {
1408
+ programId: Address
1706
1409
  custodian: Account
1707
1410
  lockup: Lockup
1708
1411
  stakeAccount: Account
1709
1412
  }
1710
- type StakeSetLockupCheckedInstruction implements TransactionInstruction {
1711
- data: StakeSetLockupCheckedInstructionData
1712
- meta: JsonParsedInstructionMeta
1713
- programId: Address
1714
- }
1715
1413
 
1716
1414
  # Stake: DeactivateDelinquent
1717
- type StakeDeactivateDelinquentInstructionData {
1415
+ type StakeDeactivateDelinquentInstruction implements TransactionInstruction {
1416
+ programId: Address
1718
1417
  referenceVoteAccount: Account
1719
1418
  stakeAccount: Account
1720
1419
  voteAccount: Account
1721
1420
  }
1722
- type StakeDeactivateDelinquentInstruction implements TransactionInstruction {
1723
- data: StakeDeactivateDelinquentInstructionData
1724
- meta: JsonParsedInstructionMeta
1725
- programId: Address
1726
- }
1727
1421
 
1728
1422
  # Stake: Redelegate
1729
- type StakeRedelegateInstructionData {
1423
+ type StakeRedelegateInstruction implements TransactionInstruction {
1424
+ programId: Address
1730
1425
  newStakeAccount: Account
1731
1426
  stakeAccount: Account
1732
1427
  stakeAuthority: Account
1733
1428
  stakeConfigAccount: Account
1734
1429
  voteAccount: Account
1735
1430
  }
1736
- type StakeRedelegateInstruction implements TransactionInstruction {
1737
- data: StakeRedelegateInstructionData
1738
- meta: JsonParsedInstructionMeta
1739
- programId: Address
1740
- }
1741
1431
 
1742
1432
  # System: CreateAccount
1743
- type CreateAccountInstructionData {
1433
+ type CreateAccountInstruction implements TransactionInstruction {
1434
+ programId: Address
1744
1435
  lamports: BigInt
1745
1436
  newAccount: Account
1746
1437
  owner: Account
1747
1438
  source: Account
1748
1439
  space: BigInt
1749
1440
  }
1750
- type CreateAccountInstruction implements TransactionInstruction {
1751
- data: CreateAccountInstructionData
1752
- meta: JsonParsedInstructionMeta
1753
- programId: Address
1754
- }
1755
1441
 
1756
1442
  # System: Assign
1757
- type AssignInstructionData {
1758
- account: Account
1759
- owner: Account
1760
- }
1761
1443
  type AssignInstruction implements TransactionInstruction {
1762
- data: AssignInstructionData
1763
- meta: JsonParsedInstructionMeta
1764
1444
  programId: Address
1445
+ account: Account
1446
+ owner: Account
1765
1447
  }
1766
1448
 
1767
1449
  # System: Transfer
1768
- type TransferInstructionData {
1450
+ type TransferInstruction implements TransactionInstruction {
1451
+ programId: Address
1769
1452
  destination: Account
1770
1453
  lamports: BigInt
1771
1454
  source: Account
1772
1455
  }
1773
- type TransferInstruction implements TransactionInstruction {
1774
- data: TransferInstructionData
1775
- meta: JsonParsedInstructionMeta
1776
- programId: Address
1777
- }
1778
1456
 
1779
1457
  # System: CreateAccountWithSeed
1780
- type CreateAccountWithSeedInstructionData {
1458
+ type CreateAccountWithSeedInstruction implements TransactionInstruction {
1459
+ programId: Address
1781
1460
  base: Account
1782
1461
  lamports: BigInt
1783
1462
  owner: Account
1784
1463
  seed: String
1785
1464
  space: BigInt
1786
1465
  }
1787
- type CreateAccountWithSeedInstruction implements TransactionInstruction {
1788
- data: CreateAccountWithSeedInstructionData
1789
- meta: JsonParsedInstructionMeta
1790
- programId: Address
1791
- }
1792
1466
 
1793
1467
  # System: AdvanceNonceAccount
1794
- type AdvanceNonceAccountInstructionData {
1468
+ type AdvanceNonceAccountInstruction implements TransactionInstruction {
1469
+ programId: Address
1795
1470
  nonceAccount: Account
1796
1471
  nonceAuthority: Account
1797
1472
  recentBlockhashesSysvar: Address
1798
1473
  }
1799
- type AdvanceNonceAccountInstruction implements TransactionInstruction {
1800
- data: AdvanceNonceAccountInstructionData
1801
- meta: JsonParsedInstructionMeta
1802
- programId: Address
1803
- }
1804
1474
 
1805
1475
  # System: WithdrawNonceAccount
1806
- type WithdrawNonceAccountInstructionData {
1476
+ type WithdrawNonceAccountInstruction implements TransactionInstruction {
1477
+ programId: Address
1807
1478
  destination: Account
1808
1479
  lamports: BigInt
1809
1480
  nonceAccount: Account
@@ -1811,88 +1482,60 @@ var instructionTypeDefs = (
1811
1482
  recentBlockhashesSysvar: Address
1812
1483
  rentSysvar: Address
1813
1484
  }
1814
- type WithdrawNonceAccountInstruction implements TransactionInstruction {
1815
- data: WithdrawNonceAccountInstructionData
1816
- meta: JsonParsedInstructionMeta
1817
- programId: Address
1818
- }
1819
1485
 
1820
1486
  # System: InitializeNonceAccount
1821
- type InitializeNonceAccountInstructionData {
1487
+ type InitializeNonceAccountInstruction implements TransactionInstruction {
1488
+ programId: Address
1822
1489
  nonceAccount: Account
1823
1490
  nonceAuthority: Account
1824
1491
  recentBlockhashesSysvar: Address
1825
1492
  rentSysvar: Address
1826
1493
  }
1827
- type InitializeNonceAccountInstruction implements TransactionInstruction {
1828
- data: InitializeNonceAccountInstructionData
1829
- meta: JsonParsedInstructionMeta
1830
- programId: Address
1831
- }
1832
1494
 
1833
1495
  # System: AuthorizeNonceAccount
1834
- type AuthorizeNonceAccountInstructionData {
1496
+ type AuthorizeNonceAccountInstruction implements TransactionInstruction {
1497
+ programId: Address
1835
1498
  newAuthorized: Account
1836
1499
  nonceAccount: Account
1837
1500
  nonceAuthority: Account
1838
1501
  }
1839
- type AuthorizeNonceAccountInstruction implements TransactionInstruction {
1840
- data: AuthorizeNonceAccountInstructionData
1841
- meta: JsonParsedInstructionMeta
1842
- programId: Address
1843
- }
1844
1502
 
1845
1503
  # System: UpgradeNonceAccount
1846
- type UpgradeNonceAccountInstructionData {
1847
- nonceAccount: Account
1848
- nonceAuthority: Account
1849
- }
1850
1504
  type UpgradeNonceAccountInstruction implements TransactionInstruction {
1851
- data: UpgradeNonceAccountInstructionData
1852
- meta: JsonParsedInstructionMeta
1853
1505
  programId: Address
1506
+ nonceAccount: Account
1507
+ nonceAuthority: Account
1854
1508
  }
1855
1509
 
1856
1510
  # System: Allocate
1857
- type AllocateInstructionData {
1858
- account: Account
1859
- space: BigInt
1860
- }
1861
1511
  type AllocateInstruction implements TransactionInstruction {
1862
- data: AllocateInstructionData
1863
- meta: JsonParsedInstructionMeta
1864
1512
  programId: Address
1513
+ account: Account
1514
+ space: BigInt
1865
1515
  }
1866
1516
 
1867
1517
  # System: AllocateWithSeed
1868
- type AllocateWithSeedInstructionData {
1518
+ type AllocateWithSeedInstruction implements TransactionInstruction {
1519
+ programId: Address
1869
1520
  account: Account
1870
1521
  base: Address
1871
1522
  owner: Account
1872
1523
  seed: String
1873
1524
  space: BigInt
1874
1525
  }
1875
- type AllocateWithSeedInstruction implements TransactionInstruction {
1876
- data: AllocateWithSeedInstructionData
1877
- meta: JsonParsedInstructionMeta
1878
- programId: Address
1879
- }
1880
1526
 
1881
1527
  # System: AssignWithSeed
1882
- type AssignWithSeedInstructionData {
1528
+ type AssignWithSeedInstruction implements TransactionInstruction {
1529
+ programId: Address
1883
1530
  account: Account
1884
1531
  base: Address
1885
1532
  owner: Account
1886
1533
  seed: String
1887
1534
  }
1888
- type AssignWithSeedInstruction implements TransactionInstruction {
1889
- data: AssignWithSeedInstructionData
1890
- meta: JsonParsedInstructionMeta
1891
- programId: Address
1892
- }
1893
1535
 
1894
1536
  # System: TransferWithSeed
1895
- type TransferWithSeedInstructionData {
1537
+ type TransferWithSeedInstruction implements TransactionInstruction {
1538
+ programId: Address
1896
1539
  destination: Account
1897
1540
  lamports: BigInt
1898
1541
  source: Account
@@ -1900,14 +1543,10 @@ var instructionTypeDefs = (
1900
1543
  sourceOwner: Account
1901
1544
  sourceSeed: String
1902
1545
  }
1903
- type TransferWithSeedInstruction implements TransactionInstruction {
1904
- data: TransferWithSeedInstructionData
1905
- meta: JsonParsedInstructionMeta
1906
- programId: Address
1907
- }
1908
1546
 
1909
1547
  # Vote: InitializeAccount
1910
- type VoteInitializeAccountInstructionData {
1548
+ type VoteInitializeAccountInstruction implements TransactionInstruction {
1549
+ programId: Address
1911
1550
  authorizedVoter: Account
1912
1551
  authorizedWithdrawer: Account
1913
1552
  clockSysvar: Address
@@ -1916,29 +1555,21 @@ var instructionTypeDefs = (
1916
1555
  rentSysvar: Address
1917
1556
  voteAccount: Account
1918
1557
  }
1919
- type VoteInitializeAccountInstruction implements TransactionInstruction {
1920
- data: VoteInitializeAccountInstructionData
1921
- meta: JsonParsedInstructionMeta
1922
- programId: Address
1923
- }
1924
1558
 
1925
1559
  # Vote: Authorize
1926
- type VoteAuthorizeInstructionData {
1560
+ type VoteAuthorizeInstruction implements TransactionInstruction {
1561
+ programId: Address
1927
1562
  authority: Account
1928
1563
  authorityType: String
1929
1564
  clockSysvar: Address
1930
1565
  newAuthority: Account
1931
1566
  voteAccount: Account
1932
1567
  }
1933
- type VoteAuthorizeInstruction implements TransactionInstruction {
1934
- data: VoteAuthorizeInstructionData
1935
- meta: JsonParsedInstructionMeta
1936
- programId: Address
1937
- }
1938
1568
 
1939
1569
  # Vote: AuthorizeWithSeed
1940
- type VoteAuthorizeWithSeedInstructionData {
1941
- authorityBaseKey: Address
1570
+ type VoteAuthorizeWithSeedInstruction implements TransactionInstruction {
1571
+ programId: Address
1572
+ authorityBaseKey: String
1942
1573
  authorityOwner: Account
1943
1574
  authoritySeed: String
1944
1575
  authorityType: String
@@ -1946,15 +1577,11 @@ var instructionTypeDefs = (
1946
1577
  newAuthority: Account
1947
1578
  voteAccount: Account
1948
1579
  }
1949
- type VoteAuthorizeWithSeedInstruction implements TransactionInstruction {
1950
- data: VoteAuthorizeWithSeedInstructionData
1951
- meta: JsonParsedInstructionMeta
1952
- programId: Address
1953
- }
1954
1580
 
1955
1581
  # Vote: AuthorizeCheckedWithSeed
1956
- type VoteAuthorizeCheckedWithSeedInstructionData {
1957
- authorityBaseKey: Address
1582
+ type VoteAuthorizeCheckedWithSeedInstruction implements TransactionInstruction {
1583
+ programId: Address
1584
+ authorityBaseKey: String
1958
1585
  authorityOwner: Account
1959
1586
  authoritySeed: String
1960
1587
  authorityType: String
@@ -1962,11 +1589,6 @@ var instructionTypeDefs = (
1962
1589
  newAuthority: Account
1963
1590
  voteAccount: Account
1964
1591
  }
1965
- type VoteAuthorizeCheckedWithSeedInstruction implements TransactionInstruction {
1966
- data: VoteAuthorizeCheckedWithSeedInstructionData
1967
- meta: JsonParsedInstructionMeta
1968
- programId: Address
1969
- }
1970
1592
 
1971
1593
  type Vote {
1972
1594
  hash: String
@@ -1975,18 +1597,14 @@ var instructionTypeDefs = (
1975
1597
  }
1976
1598
 
1977
1599
  # Vote: Vote
1978
- type VoteVoteInstructionData {
1600
+ type VoteVoteInstruction implements TransactionInstruction {
1601
+ programId: Address
1979
1602
  clockSysvar: Address
1980
1603
  slotHashesSysvar: Address
1981
1604
  vote: Vote
1982
1605
  voteAccount: Account
1983
1606
  voteAuthority: Account
1984
1607
  }
1985
- type VoteVoteInstruction implements TransactionInstruction {
1986
- data: VoteVoteInstructionData
1987
- meta: JsonParsedInstructionMeta
1988
- programId: Address
1989
- }
1990
1608
 
1991
1609
  type VoteStateUpdateLockout {
1992
1610
  confirmationCount: BigInt # FIXME:*
@@ -2000,96 +1618,69 @@ var instructionTypeDefs = (
2000
1618
  }
2001
1619
 
2002
1620
  # Vote: UpdateVoteState
2003
- type VoteUpdateVoteStateInstructionData {
1621
+ type VoteUpdateVoteStateInstruction implements TransactionInstruction {
1622
+ programId: Address
2004
1623
  hash: String
2005
1624
  voteAccount: Account
2006
1625
  voteAuthority: Account
2007
1626
  voteStateUpdate: VoteStateUpdate
2008
1627
  }
2009
- type VoteUpdateVoteStateInstruction implements TransactionInstruction {
2010
- data: VoteUpdateVoteStateInstructionData
2011
- meta: JsonParsedInstructionMeta
2012
- programId: Address
2013
- }
2014
1628
 
2015
1629
  # Vote: UpdateVoteStateSwitch
2016
- type VoteUpdateVoteStateSwitchInstructionData {
1630
+ type VoteUpdateVoteStateSwitchInstruction implements TransactionInstruction {
1631
+ programId: Address
2017
1632
  hash: String
2018
1633
  voteAccount: Account
2019
1634
  voteAuthority: Account
2020
1635
  voteStateUpdate: VoteStateUpdate
2021
1636
  }
2022
- type VoteUpdateVoteStateSwitchInstruction implements TransactionInstruction {
2023
- data: VoteUpdateVoteStateSwitchInstructionData
2024
- meta: JsonParsedInstructionMeta
2025
- programId: Address
2026
- }
2027
1637
 
2028
1638
  # Vote: CompactUpdateVoteState
2029
- type VoteCompactUpdateVoteStateInstructionData {
1639
+ type VoteCompactUpdateVoteStateInstruction implements TransactionInstruction {
1640
+ programId: Address
2030
1641
  hash: String
2031
1642
  voteAccount: Account
2032
1643
  voteAuthority: Account
2033
1644
  voteStateUpdate: VoteStateUpdate
2034
1645
  }
2035
- type VoteCompactUpdateVoteStateInstruction implements TransactionInstruction {
2036
- data: VoteCompactUpdateVoteStateInstructionData
2037
- meta: JsonParsedInstructionMeta
2038
- programId: Address
2039
- }
2040
1646
 
2041
1647
  # Vote: CompactUpdateVoteStateSwitch
2042
- type VoteCompactUpdateVoteStateSwitchInstructionData {
1648
+ type VoteCompactUpdateVoteStateSwitchInstruction implements TransactionInstruction {
1649
+ programId: Address
2043
1650
  hash: String
2044
1651
  voteAccount: Account
2045
1652
  voteAuthority: Account
2046
1653
  voteStateUpdate: VoteStateUpdate
2047
1654
  }
2048
- type VoteCompactUpdateVoteStateSwitchInstruction implements TransactionInstruction {
2049
- data: VoteCompactUpdateVoteStateSwitchInstructionData
2050
- meta: JsonParsedInstructionMeta
2051
- programId: Address
2052
- }
2053
1655
 
2054
1656
  # Vote: Withdraw
2055
- type VoteWithdrawInstructionData {
1657
+ type VoteWithdrawInstruction implements TransactionInstruction {
1658
+ programId: Address
2056
1659
  destination: Account
2057
1660
  lamports: BigInt
2058
1661
  voteAccount: Account
2059
1662
  withdrawAuthority: Account
2060
1663
  }
2061
- type VoteWithdrawInstruction implements TransactionInstruction {
2062
- data: VoteWithdrawInstructionData
2063
- meta: JsonParsedInstructionMeta
2064
- programId: Address
2065
- }
2066
1664
 
2067
1665
  # Vote: UpdateValidatorIdentity
2068
- type VoteUpdateValidatorIdentityInstructionData {
1666
+ type VoteUpdateValidatorIdentityInstruction implements TransactionInstruction {
1667
+ programId: Address
2069
1668
  newValidatorIdentity: Account
2070
1669
  voteAccount: Account
2071
1670
  withdrawAuthority: Account
2072
1671
  }
2073
- type VoteUpdateValidatorIdentityInstruction implements TransactionInstruction {
2074
- data: VoteUpdateValidatorIdentityInstructionData
2075
- meta: JsonParsedInstructionMeta
2076
- programId: Address
2077
- }
2078
1672
 
2079
1673
  # Vote: UpdateCommission
2080
- type VoteUpdateCommissionInstructionData {
1674
+ type VoteUpdateCommissionInstruction implements TransactionInstruction {
1675
+ programId: Address
2081
1676
  commission: BigInt # FIXME:*
2082
1677
  voteAccount: Account
2083
1678
  withdrawAuthority: Account
2084
1679
  }
2085
- type VoteUpdateCommissionInstruction implements TransactionInstruction {
2086
- data: VoteUpdateCommissionInstructionData
2087
- meta: JsonParsedInstructionMeta
2088
- programId: Address
2089
- }
2090
1680
 
2091
1681
  # Vote: VoteSwitch
2092
- type VoteVoteSwitchInstructionData {
1682
+ type VoteVoteSwitchInstruction implements TransactionInstruction {
1683
+ programId: Address
2093
1684
  clockSysvar: Address
2094
1685
  hash: String
2095
1686
  slotHashesSysvar: Address
@@ -2097,305 +1688,296 @@ var instructionTypeDefs = (
2097
1688
  voteAccount: Account
2098
1689
  voteAuthority: Account
2099
1690
  }
2100
- type VoteVoteSwitchInstruction implements TransactionInstruction {
2101
- data: VoteVoteSwitchInstructionData
2102
- meta: JsonParsedInstructionMeta
2103
- programId: Address
2104
- }
2105
1691
 
2106
1692
  # Vote: AuthorizeChecked
2107
- type VoteAuthorizeCheckedInstructionData {
1693
+ type VoteAuthorizeCheckedInstruction implements TransactionInstruction {
1694
+ programId: Address
2108
1695
  authority: Account
2109
1696
  authorityType: String
2110
1697
  clockSysvar: Address
2111
1698
  newAuthority: Account
2112
1699
  voteAccount: Account
2113
1700
  }
2114
- type VoteAuthorizeCheckedInstruction implements TransactionInstruction {
2115
- data: VoteAuthorizeCheckedInstructionData
2116
- meta: JsonParsedInstructionMeta
2117
- programId: Address
2118
- }
2119
1701
  `
2120
1702
  );
2121
1703
  var instructionResolvers = {
2122
1704
  TransactionInstruction: {
2123
1705
  __resolveType(instruction) {
2124
- if (instruction.meta) {
2125
- if (instruction.meta.program === "address-lookup-table") {
2126
- if (instruction.meta.type === "createLookupTable") {
1706
+ if (instruction.programName) {
1707
+ if (instruction.programName === "address-lookup-table") {
1708
+ if (instruction.instructionType === "createLookupTable") {
2127
1709
  return "CreateLookupTableInstruction";
2128
1710
  }
2129
- if (instruction.meta.type === "freezeLookupTable") {
1711
+ if (instruction.instructionType === "freezeLookupTable") {
2130
1712
  return "FreezeLookupTableInstruction";
2131
1713
  }
2132
- if (instruction.meta.type === "extendLookupTable") {
1714
+ if (instruction.instructionType === "extendLookupTable") {
2133
1715
  return "ExtendLookupTableInstruction";
2134
1716
  }
2135
- if (instruction.meta.type === "deactivateLookupTable") {
1717
+ if (instruction.instructionType === "deactivateLookupTable") {
2136
1718
  return "DeactivateLookupTableInstruction";
2137
1719
  }
2138
- if (instruction.meta.type === "closeLookupTable") {
1720
+ if (instruction.instructionType === "closeLookupTable") {
2139
1721
  return "CloseLookupTableInstruction";
2140
1722
  }
2141
1723
  }
2142
- if (instruction.meta.program === "bpf-loader") {
2143
- if (instruction.meta.type === "write") {
1724
+ if (instruction.programName === "bpf-loader") {
1725
+ if (instruction.instructionType === "write") {
2144
1726
  return "BpfLoaderWriteInstruction";
2145
1727
  }
2146
- if (instruction.meta.type === "finalize") {
1728
+ if (instruction.instructionType === "finalize") {
2147
1729
  return "BpfLoaderFinalizeInstruction";
2148
1730
  }
2149
1731
  }
2150
- if (instruction.meta.program === "bpf-upgradeable-loader") {
2151
- if (instruction.meta.type === "initializeBuffer") {
1732
+ if (instruction.programName === "bpf-upgradeable-loader") {
1733
+ if (instruction.instructionType === "initializeBuffer") {
2152
1734
  return "BpfUpgradeableLoaderInitializeBufferInstruction";
2153
1735
  }
2154
- if (instruction.meta.type === "write") {
1736
+ if (instruction.instructionType === "write") {
2155
1737
  return "BpfUpgradeableLoaderWriteInstruction";
2156
1738
  }
2157
- if (instruction.meta.type === "deployWithMaxDataLen") {
1739
+ if (instruction.instructionType === "deployWithMaxDataLen") {
2158
1740
  return "BpfUpgradeableLoaderDeployWithMaxDataLenInstruction";
2159
1741
  }
2160
- if (instruction.meta.type === "upgrade") {
1742
+ if (instruction.instructionType === "upgrade") {
2161
1743
  return "BpfUpgradeableLoaderUpgradeInstruction";
2162
1744
  }
2163
- if (instruction.meta.type === "setAuthority") {
1745
+ if (instruction.instructionType === "setAuthority") {
2164
1746
  return "BpfUpgradeableLoaderSetAuthorityInstruction";
2165
1747
  }
2166
- if (instruction.meta.type === "setAuthorityChecked") {
1748
+ if (instruction.instructionType === "setAuthorityChecked") {
2167
1749
  return "BpfUpgradeableLoaderSetAuthorityCheckedInstruction";
2168
1750
  }
2169
- if (instruction.meta.type === "close") {
1751
+ if (instruction.instructionType === "close") {
2170
1752
  return "BpfUpgradeableLoaderCloseInstruction";
2171
1753
  }
2172
- if (instruction.meta.type === "extendProgram") {
1754
+ if (instruction.instructionType === "extendProgram") {
2173
1755
  return "BpfUpgradeableLoaderExtendProgramInstruction";
2174
1756
  }
2175
1757
  }
2176
- if (instruction.meta.program === "spl-associated-token-account") {
2177
- if (instruction.meta.type === "create") {
1758
+ if (instruction.programName === "spl-associated-token-account") {
1759
+ if (instruction.instructionType === "create") {
2178
1760
  return "SplAssociatedTokenCreateInstruction";
2179
1761
  }
2180
- if (instruction.meta.type === "createIdempotent") {
1762
+ if (instruction.instructionType === "createIdempotent") {
2181
1763
  return "SplAssociatedTokenCreateIdempotentInstruction";
2182
1764
  }
2183
- if (instruction.meta.type === "recoverNested") {
1765
+ if (instruction.instructionType === "recoverNested") {
2184
1766
  return "SplAssociatedTokenRecoverNestedInstruction";
2185
1767
  }
2186
1768
  }
2187
- if (instruction.meta.program === "spl-memo") {
1769
+ if (instruction.programName === "spl-memo") {
2188
1770
  return "SplMemoInstruction";
2189
1771
  }
2190
- if (instruction.meta.program === "spl-token") {
2191
- if (instruction.meta.type === "initializeMint") {
1772
+ if (instruction.programName === "spl-token") {
1773
+ if (instruction.instructionType === "initializeMint") {
2192
1774
  return "SplTokenInitializeMintInstruction";
2193
1775
  }
2194
- if (instruction.meta.type === "initializeMint2") {
1776
+ if (instruction.instructionType === "initializeMint2") {
2195
1777
  return "SplTokenInitializeMint2Instruction";
2196
1778
  }
2197
- if (instruction.meta.type === "initializeAccount") {
1779
+ if (instruction.instructionType === "initializeAccount") {
2198
1780
  return "SplTokenInitializeAccountInstruction";
2199
1781
  }
2200
- if (instruction.meta.type === "initializeAccount2") {
1782
+ if (instruction.instructionType === "initializeAccount2") {
2201
1783
  return "SplTokenInitializeAccount2Instruction";
2202
1784
  }
2203
- if (instruction.meta.type === "initializeAccount3") {
1785
+ if (instruction.instructionType === "initializeAccount3") {
2204
1786
  return "SplTokenInitializeAccount3Instruction";
2205
1787
  }
2206
- if (instruction.meta.type === "initializeMultisig") {
1788
+ if (instruction.instructionType === "initializeMultisig") {
2207
1789
  return "SplTokenInitializeMultisigInstruction";
2208
1790
  }
2209
- if (instruction.meta.type === "initializeMultisig2") {
1791
+ if (instruction.instructionType === "initializeMultisig2") {
2210
1792
  return "SplTokenInitializeMultisig2Instruction";
2211
1793
  }
2212
- if (instruction.meta.type === "transfer") {
1794
+ if (instruction.instructionType === "transfer") {
2213
1795
  return "SplTokenTransferInstruction";
2214
1796
  }
2215
- if (instruction.meta.type === "approve") {
1797
+ if (instruction.instructionType === "approve") {
2216
1798
  return "SplTokenApproveInstruction";
2217
1799
  }
2218
- if (instruction.meta.type === "revoke") {
1800
+ if (instruction.instructionType === "revoke") {
2219
1801
  return "SplTokenRevokeInstruction";
2220
1802
  }
2221
- if (instruction.meta.type === "setAuthority") {
1803
+ if (instruction.instructionType === "setAuthority") {
2222
1804
  return "SplTokenSetAuthorityInstruction";
2223
1805
  }
2224
- if (instruction.meta.type === "mintTo") {
1806
+ if (instruction.instructionType === "mintTo") {
2225
1807
  return "SplTokenMintToInstruction";
2226
1808
  }
2227
- if (instruction.meta.type === "burn") {
1809
+ if (instruction.instructionType === "burn") {
2228
1810
  return "SplTokenBurnInstruction";
2229
1811
  }
2230
- if (instruction.meta.type === "closeAccount") {
1812
+ if (instruction.instructionType === "closeAccount") {
2231
1813
  return "SplTokenCloseAccountInstruction";
2232
1814
  }
2233
- if (instruction.meta.type === "freezeAccount") {
1815
+ if (instruction.instructionType === "freezeAccount") {
2234
1816
  return "SplTokenFreezeAccountInstruction";
2235
1817
  }
2236
- if (instruction.meta.type === "thawAccount") {
1818
+ if (instruction.instructionType === "thawAccount") {
2237
1819
  return "SplTokenThawAccountInstruction";
2238
1820
  }
2239
- if (instruction.meta.type === "transferChecked") {
1821
+ if (instruction.instructionType === "transferChecked") {
2240
1822
  return "SplTokenTransferCheckedInstruction";
2241
1823
  }
2242
- if (instruction.meta.type === "approveChecked") {
1824
+ if (instruction.instructionType === "approveChecked") {
2243
1825
  return "SplTokenApproveCheckedInstruction";
2244
1826
  }
2245
- if (instruction.meta.type === "mintToChecked") {
1827
+ if (instruction.instructionType === "mintToChecked") {
2246
1828
  return "SplTokenMintToCheckedInstruction";
2247
1829
  }
2248
- if (instruction.meta.type === "burnChecked") {
1830
+ if (instruction.instructionType === "burnChecked") {
2249
1831
  return "SplTokenBurnCheckedInstruction";
2250
1832
  }
2251
- if (instruction.meta.type === "syncNative") {
1833
+ if (instruction.instructionType === "syncNative") {
2252
1834
  return "SplTokenSyncNativeInstruction";
2253
1835
  }
2254
- if (instruction.meta.type === "getAccountDataSize") {
1836
+ if (instruction.instructionType === "getAccountDataSize") {
2255
1837
  return "SplTokenGetAccountDataSizeInstruction";
2256
1838
  }
2257
- if (instruction.meta.type === "initializeImmutableOwner") {
1839
+ if (instruction.instructionType === "initializeImmutableOwner") {
2258
1840
  return "SplTokenInitializeImmutableOwnerInstruction";
2259
1841
  }
2260
- if (instruction.meta.type === "amountToUiAmount") {
1842
+ if (instruction.instructionType === "amountToUiAmount") {
2261
1843
  return "SplTokenAmountToUiAmountInstruction";
2262
1844
  }
2263
- if (instruction.meta.type === "uiAmountToAmount") {
1845
+ if (instruction.instructionType === "uiAmountToAmount") {
2264
1846
  return "SplTokenUiAmountToAmountInstruction";
2265
1847
  }
2266
- if (instruction.meta.type === "initializeMintCloseAuthority") {
1848
+ if (instruction.instructionType === "initializeMintCloseAuthority") {
2267
1849
  return "SplTokenInitializeMintCloseAuthorityInstruction";
2268
1850
  }
2269
1851
  }
2270
- if (instruction.meta.program === "stake") {
2271
- if (instruction.meta.type === "initialize") {
1852
+ if (instruction.programName === "stake") {
1853
+ if (instruction.instructionType === "initialize") {
2272
1854
  return "StakeInitializeInstruction";
2273
1855
  }
2274
- if (instruction.meta.type === "authorize") {
1856
+ if (instruction.instructionType === "authorize") {
2275
1857
  return "StakeAuthorizeInstruction";
2276
1858
  }
2277
- if (instruction.meta.type === "delegate") {
1859
+ if (instruction.instructionType === "delegate") {
2278
1860
  return "StakeDelegateStakeInstruction";
2279
1861
  }
2280
- if (instruction.meta.type === "split") {
1862
+ if (instruction.instructionType === "split") {
2281
1863
  return "StakeSplitInstruction";
2282
1864
  }
2283
- if (instruction.meta.type === "withdraw") {
1865
+ if (instruction.instructionType === "withdraw") {
2284
1866
  return "StakeWithdrawInstruction";
2285
1867
  }
2286
- if (instruction.meta.type === "deactivate") {
1868
+ if (instruction.instructionType === "deactivate") {
2287
1869
  return "StakeDeactivateInstruction";
2288
1870
  }
2289
- if (instruction.meta.type === "setLockup") {
1871
+ if (instruction.instructionType === "setLockup") {
2290
1872
  return "StakeSetLockupInstruction";
2291
1873
  }
2292
- if (instruction.meta.type === "merge") {
1874
+ if (instruction.instructionType === "merge") {
2293
1875
  return "StakeMergeInstruction";
2294
1876
  }
2295
- if (instruction.meta.type === "authorizeWithSeed") {
1877
+ if (instruction.instructionType === "authorizeWithSeed") {
2296
1878
  return "StakeAuthorizeWithSeedInstruction";
2297
1879
  }
2298
- if (instruction.meta.type === "initializeChecked") {
1880
+ if (instruction.instructionType === "initializeChecked") {
2299
1881
  return "StakeInitializeCheckedInstruction";
2300
1882
  }
2301
- if (instruction.meta.type === "authorizeChecked") {
1883
+ if (instruction.instructionType === "authorizeChecked") {
2302
1884
  return "StakeAuthorizeCheckedInstruction";
2303
1885
  }
2304
- if (instruction.meta.type === "authorizeCheckedWithSeed") {
1886
+ if (instruction.instructionType === "authorizeCheckedWithSeed") {
2305
1887
  return "StakeAuthorizeCheckedWithSeedInstruction";
2306
1888
  }
2307
- if (instruction.meta.type === "setLockupChecked") {
1889
+ if (instruction.instructionType === "setLockupChecked") {
2308
1890
  return "StakeSetLockupCheckedInstruction";
2309
1891
  }
2310
- if (instruction.meta.type === "deactivateDelinquent") {
1892
+ if (instruction.instructionType === "deactivateDelinquent") {
2311
1893
  return "StakeDeactivateDelinquentInstruction";
2312
1894
  }
2313
- if (instruction.meta.type === "redelegate") {
1895
+ if (instruction.instructionType === "redelegate") {
2314
1896
  return "StakeRedelegateInstruction";
2315
1897
  }
2316
1898
  }
2317
- if (instruction.meta.program === "system") {
2318
- if (instruction.meta.type === "createAccount") {
1899
+ if (instruction.programName === "system") {
1900
+ if (instruction.instructionType === "createAccount") {
2319
1901
  return "CreateAccountInstruction";
2320
1902
  }
2321
- if (instruction.meta.type === "assign") {
1903
+ if (instruction.instructionType === "assign") {
2322
1904
  return "AssignInstruction";
2323
1905
  }
2324
- if (instruction.meta.type === "transfer") {
1906
+ if (instruction.instructionType === "transfer") {
2325
1907
  return "TransferInstruction";
2326
1908
  }
2327
- if (instruction.meta.type === "createAccountWithSeed") {
1909
+ if (instruction.instructionType === "createAccountWithSeed") {
2328
1910
  return "CreateAccountWithSeedInstruction";
2329
1911
  }
2330
- if (instruction.meta.type === "advanceNonceAccount") {
1912
+ if (instruction.instructionType === "advanceNonceAccount") {
2331
1913
  return "AdvanceNonceAccountInstruction";
2332
1914
  }
2333
- if (instruction.meta.type === "withdrawNonceAccount") {
1915
+ if (instruction.instructionType === "withdrawNonceAccount") {
2334
1916
  return "WithdrawNonceAccountInstruction";
2335
1917
  }
2336
- if (instruction.meta.type === "initializeNonceAccount") {
1918
+ if (instruction.instructionType === "initializeNonceAccount") {
2337
1919
  return "InitializeNonceAccountInstruction";
2338
1920
  }
2339
- if (instruction.meta.type === "authorizeNonceAccount") {
1921
+ if (instruction.instructionType === "authorizeNonceAccount") {
2340
1922
  return "AuthorizeNonceAccountInstruction";
2341
1923
  }
2342
- if (instruction.meta.type === "upgradeNonceAccount") {
1924
+ if (instruction.instructionType === "upgradeNonceAccount") {
2343
1925
  return "UpgradeNonceAccountInstruction";
2344
1926
  }
2345
- if (instruction.meta.type === "allocate") {
1927
+ if (instruction.instructionType === "allocate") {
2346
1928
  return "AllocateInstruction";
2347
1929
  }
2348
- if (instruction.meta.type === "allocateWithSeed") {
1930
+ if (instruction.instructionType === "allocateWithSeed") {
2349
1931
  return "AllocateWithSeedInstruction";
2350
1932
  }
2351
- if (instruction.meta.type === "assignWithSeed") {
1933
+ if (instruction.instructionType === "assignWithSeed") {
2352
1934
  return "AssignWithSeedInstruction";
2353
1935
  }
2354
- if (instruction.meta.type === "transferWithSeed") {
1936
+ if (instruction.instructionType === "transferWithSeed") {
2355
1937
  return "TransferWithSeedInstruction";
2356
1938
  }
2357
1939
  }
2358
- if (instruction.meta.program === "vote") {
2359
- if (instruction.meta.type === "initialize") {
1940
+ if (instruction.programName === "vote") {
1941
+ if (instruction.instructionType === "initialize") {
2360
1942
  return "VoteInitializeAccountInstruction";
2361
1943
  }
2362
- if (instruction.meta.type === "authorize") {
1944
+ if (instruction.instructionType === "authorize") {
2363
1945
  return "VoteAuthorizeInstruction";
2364
1946
  }
2365
- if (instruction.meta.type === "authorizeWithSeed") {
1947
+ if (instruction.instructionType === "authorizeWithSeed") {
2366
1948
  return "VoteAuthorizeWithSeedInstruction";
2367
1949
  }
2368
- if (instruction.meta.type === "authorizeCheckedWithSeed") {
1950
+ if (instruction.instructionType === "authorizeCheckedWithSeed") {
2369
1951
  return "VoteAuthorizeCheckedWithSeedInstruction";
2370
1952
  }
2371
- if (instruction.meta.type === "vote") {
1953
+ if (instruction.instructionType === "vote") {
2372
1954
  return "VoteVoteInstruction";
2373
1955
  }
2374
- if (instruction.meta.type === "updatevotestate") {
1956
+ if (instruction.instructionType === "updatevotestate") {
2375
1957
  return "VoteUpdateVoteStateInstruction";
2376
1958
  }
2377
- if (instruction.meta.type === "updatevotestateswitch") {
1959
+ if (instruction.instructionType === "updatevotestateswitch") {
2378
1960
  return "VoteUpdateVoteStateSwitchInstruction";
2379
1961
  }
2380
- if (instruction.meta.type === "compactupdatevotestate") {
1962
+ if (instruction.instructionType === "compactupdatevotestate") {
2381
1963
  return "VoteCompactUpdateVoteStateInstruction";
2382
1964
  }
2383
- if (instruction.meta.type === "compactupdatevotestateswitch") {
1965
+ if (instruction.instructionType === "compactupdatevotestateswitch") {
2384
1966
  return "VoteCompactUpdateVoteStateSwitchInstruction";
2385
1967
  }
2386
- if (instruction.meta.type === "withdraw") {
1968
+ if (instruction.instructionType === "withdraw") {
2387
1969
  return "VoteWithdrawInstruction";
2388
1970
  }
2389
- if (instruction.meta.type === "updateValidatorIdentity") {
1971
+ if (instruction.instructionType === "updateValidatorIdentity") {
2390
1972
  return "VoteUpdateValidatorIdentityInstruction";
2391
1973
  }
2392
- if (instruction.meta.type === "updateCommission") {
1974
+ if (instruction.instructionType === "updateCommission") {
2393
1975
  return "VoteUpdateCommissionInstruction";
2394
1976
  }
2395
- if (instruction.meta.type === "voteSwitch") {
1977
+ if (instruction.instructionType === "voteSwitch") {
2396
1978
  return "VoteVoteSwitchInstruction";
2397
1979
  }
2398
- if (instruction.meta.type === "authorizeChecked") {
1980
+ if (instruction.instructionType === "authorizeChecked") {
2399
1981
  return "VoteAuthorizeCheckedInstruction";
2400
1982
  }
2401
1983
  }
@@ -2403,80 +1985,80 @@ var instructionResolvers = {
2403
1985
  return "GenericInstruction";
2404
1986
  }
2405
1987
  },
2406
- CreateLookupTableInstructionData: {
1988
+ CreateLookupTableInstruction: {
2407
1989
  lookupTableAccount: resolveAccount("lookupTableAccount"),
2408
1990
  lookupTableAuthority: resolveAccount("lookupTableAuthority"),
2409
1991
  payerAccount: resolveAccount("payerAccount"),
2410
1992
  systemProgram: resolveAccount("systemProgram")
2411
1993
  },
2412
- ExtendLookupTableInstructionData: {
1994
+ ExtendLookupTableInstruction: {
2413
1995
  lookupTableAccount: resolveAccount("lookupTableAccount"),
2414
1996
  lookupTableAuthority: resolveAccount("lookupTableAuthority"),
2415
1997
  payerAccount: resolveAccount("payerAccount"),
2416
1998
  systemProgram: resolveAccount("systemProgram")
2417
1999
  },
2418
- FreezeLookupTableInstructionData: {
2000
+ FreezeLookupTableInstruction: {
2419
2001
  lookupTableAccount: resolveAccount("lookupTableAccount"),
2420
2002
  lookupTableAuthority: resolveAccount("lookupTableAuthority")
2421
2003
  },
2422
- DeactivateLookupTableInstructionData: {
2004
+ DeactivateLookupTableInstruction: {
2423
2005
  lookupTableAccount: resolveAccount("lookupTableAccount"),
2424
2006
  lookupTableAuthority: resolveAccount("lookupTableAuthority")
2425
2007
  },
2426
- CloseLookupTableInstructionData: {
2008
+ CloseLookupTableInstruction: {
2427
2009
  lookupTableAccount: resolveAccount("lookupTableAccount"),
2428
2010
  lookupTableAuthority: resolveAccount("lookupTableAuthority"),
2429
2011
  recipient: resolveAccount("recipient")
2430
2012
  },
2431
- BpfLoaderWriteInstructionData: {
2013
+ BpfLoaderWriteInstruction: {
2432
2014
  account: resolveAccount("account")
2433
2015
  },
2434
- BpfLoaderFinalizeInstructionData: {
2016
+ BpfLoaderFinalizeInstruction: {
2435
2017
  account: resolveAccount("account")
2436
2018
  },
2437
- BpfUpgradeableLoaderInitializeBufferInstructionData: {
2019
+ BpfUpgradeableLoaderInitializeBufferInstruction: {
2438
2020
  account: resolveAccount("account")
2439
2021
  },
2440
- BpfUpgradeableLoaderWriteInstructionData: {
2022
+ BpfUpgradeableLoaderWriteInstruction: {
2441
2023
  account: resolveAccount("account"),
2442
2024
  authority: resolveAccount("authority")
2443
2025
  },
2444
- BpfUpgradeableLoaderDeployWithMaxDataLenInstructionData: {
2026
+ BpfUpgradeableLoaderDeployWithMaxDataLenInstruction: {
2445
2027
  authority: resolveAccount("authority"),
2446
2028
  bufferAccount: resolveAccount("bufferAccount"),
2447
2029
  payerAccount: resolveAccount("payerAccount"),
2448
2030
  programAccount: resolveAccount("programAccount"),
2449
2031
  programDataAccount: resolveAccount("programDataAccount")
2450
2032
  },
2451
- BpfUpgradeableLoaderUpgradeInstructionData: {
2033
+ BpfUpgradeableLoaderUpgradeInstruction: {
2452
2034
  authority: resolveAccount("authority"),
2453
2035
  bufferAccount: resolveAccount("bufferAccount"),
2454
2036
  programAccount: resolveAccount("programAccount"),
2455
2037
  programDataAccount: resolveAccount("programDataAccount")
2456
2038
  },
2457
- BpfUpgradeableLoaderSetAuthorityInstructionData: {
2039
+ BpfUpgradeableLoaderSetAuthorityInstruction: {
2458
2040
  account: resolveAccount("account"),
2459
2041
  authority: resolveAccount("authority"),
2460
2042
  newAuthority: resolveAccount("newAuthority")
2461
2043
  },
2462
- BpfUpgradeableLoaderSetAuthorityCheckedInstructionData: {
2044
+ BpfUpgradeableLoaderSetAuthorityCheckedInstruction: {
2463
2045
  account: resolveAccount("account"),
2464
2046
  authority: resolveAccount("authority"),
2465
2047
  newAuthority: resolveAccount("newAuthority")
2466
2048
  },
2467
- BpfUpgradeableLoaderCloseInstructionData: {
2049
+ BpfUpgradeableLoaderCloseInstruction: {
2468
2050
  account: resolveAccount("account"),
2469
2051
  authority: resolveAccount("authority"),
2470
2052
  programAccount: resolveAccount("programAccount"),
2471
2053
  recipient: resolveAccount("recipient")
2472
2054
  },
2473
- BpfUpgradeableLoaderExtendProgramInstructionData: {
2055
+ BpfUpgradeableLoaderExtendProgramInstruction: {
2474
2056
  payerAccount: resolveAccount("payerAccount"),
2475
2057
  programAccount: resolveAccount("programAccount"),
2476
2058
  programDataAccount: resolveAccount("programDataAccount"),
2477
2059
  systemProgram: resolveAccount("systemProgram")
2478
2060
  },
2479
- SplAssociatedTokenCreateInstructionData: {
2061
+ SplAssociatedTokenCreateInstruction: {
2480
2062
  account: resolveAccount("account"),
2481
2063
  mint: resolveAccount("mint"),
2482
2064
  source: resolveAccount("source"),
@@ -2484,7 +2066,7 @@ var instructionResolvers = {
2484
2066
  tokenProgram: resolveAccount("tokenProgram"),
2485
2067
  wallet: resolveAccount("wallet")
2486
2068
  },
2487
- SplAssociatedTokenCreateIdempotentInstructionData: {
2069
+ SplAssociatedTokenCreateIdempotentInstruction: {
2488
2070
  account: resolveAccount("account"),
2489
2071
  mint: resolveAccount("mint"),
2490
2072
  source: resolveAccount("source"),
@@ -2492,7 +2074,7 @@ var instructionResolvers = {
2492
2074
  tokenProgram: resolveAccount("tokenProgram"),
2493
2075
  wallet: resolveAccount("wallet")
2494
2076
  },
2495
- SplAssociatedTokenRecoverNestedInstructionData: {
2077
+ SplAssociatedTokenRecoverNestedInstruction: {
2496
2078
  destination: resolveAccount("destination"),
2497
2079
  nestedMint: resolveAccount("nestedMint"),
2498
2080
  nestedOwner: resolveAccount("nestedOwner"),
@@ -2501,130 +2083,130 @@ var instructionResolvers = {
2501
2083
  tokenProgram: resolveAccount("tokenProgram"),
2502
2084
  wallet: resolveAccount("wallet")
2503
2085
  },
2504
- SplTokenInitializeMintInstructionData: {
2086
+ SplTokenInitializeMintInstruction: {
2505
2087
  freezeAuthority: resolveAccount("freezeAuthority"),
2506
2088
  mint: resolveAccount("mint"),
2507
2089
  mintAuthority: resolveAccount("mintAuthority")
2508
2090
  },
2509
- SplTokenInitializeMint2InstructionData: {
2091
+ SplTokenInitializeMint2Instruction: {
2510
2092
  freezeAuthority: resolveAccount("freezeAuthority"),
2511
2093
  mint: resolveAccount("mint"),
2512
2094
  mintAuthority: resolveAccount("mintAuthority")
2513
2095
  },
2514
- SplTokenInitializeAccountInstructionData: {
2096
+ SplTokenInitializeAccountInstruction: {
2515
2097
  account: resolveAccount("account"),
2516
2098
  mint: resolveAccount("mint"),
2517
2099
  owner: resolveAccount("owner")
2518
2100
  },
2519
- SplTokenInitializeAccount2InstructionData: {
2101
+ SplTokenInitializeAccount2Instruction: {
2520
2102
  account: resolveAccount("account"),
2521
2103
  mint: resolveAccount("mint"),
2522
2104
  owner: resolveAccount("owner")
2523
2105
  },
2524
- SplTokenInitializeAccount3InstructionData: {
2106
+ SplTokenInitializeAccount3Instruction: {
2525
2107
  account: resolveAccount("account"),
2526
2108
  mint: resolveAccount("mint"),
2527
2109
  owner: resolveAccount("owner")
2528
2110
  },
2529
- SplTokenInitializeMultisigInstructionData: {
2111
+ SplTokenInitializeMultisigInstruction: {
2530
2112
  multisig: resolveAccount("multisig")
2531
2113
  },
2532
- SplTokenInitializeMultisig2InstructionData: {
2114
+ SplTokenInitializeMultisig2Instruction: {
2533
2115
  multisig: resolveAccount("multisig")
2534
2116
  },
2535
- SplTokenTransferInstructionData: {
2117
+ SplTokenTransferInstruction: {
2536
2118
  authority: resolveAccount("authority"),
2537
2119
  destination: resolveAccount("destination"),
2538
2120
  multisigAuthority: resolveAccount("multisigAuthority"),
2539
2121
  source: resolveAccount("source")
2540
2122
  },
2541
- SplTokenApproveInstructionData: {
2123
+ SplTokenApproveInstruction: {
2542
2124
  delegate: resolveAccount("delegate"),
2543
2125
  multisigOwner: resolveAccount("multisigOwner"),
2544
2126
  owner: resolveAccount("owner"),
2545
2127
  source: resolveAccount("source")
2546
2128
  },
2547
- SplTokenRevokeInstructionData: {
2129
+ SplTokenRevokeInstruction: {
2548
2130
  multisigOwner: resolveAccount("multisigOwner"),
2549
2131
  owner: resolveAccount("owner"),
2550
2132
  source: resolveAccount("source")
2551
2133
  },
2552
- SplTokenSetAuthorityInstructionData: {
2134
+ SplTokenSetAuthorityInstruction: {
2553
2135
  authority: resolveAccount("authority"),
2554
2136
  multisigAuthority: resolveAccount("multisigAuthority"),
2555
2137
  newAuthority: resolveAccount("newAuthority")
2556
2138
  },
2557
- SplTokenMintToInstructionData: {
2139
+ SplTokenMintToInstruction: {
2558
2140
  account: resolveAccount("account"),
2559
2141
  authority: resolveAccount("authority"),
2560
2142
  mint: resolveAccount("mint"),
2561
2143
  mintAuthority: resolveAccount("mintAuthority"),
2562
2144
  multisigMintAuthority: resolveAccount("multisigMintAuthority")
2563
2145
  },
2564
- SplTokenBurnInstructionData: {
2146
+ SplTokenBurnInstruction: {
2565
2147
  account: resolveAccount("account"),
2566
2148
  authority: resolveAccount("authority"),
2567
2149
  mint: resolveAccount("mint"),
2568
2150
  multisigAuthority: resolveAccount("multisigAuthority")
2569
2151
  },
2570
- SplTokenCloseAccountInstructionData: {
2152
+ SplTokenCloseAccountInstruction: {
2571
2153
  account: resolveAccount("account"),
2572
2154
  destination: resolveAccount("destination"),
2573
2155
  multisigOwner: resolveAccount("multisigOwner"),
2574
2156
  owner: resolveAccount("owner")
2575
2157
  },
2576
- SplTokenFreezeAccountInstructionData: {
2158
+ SplTokenFreezeAccountInstruction: {
2577
2159
  account: resolveAccount("account"),
2578
2160
  freezeAuthority: resolveAccount("freezeAuthority"),
2579
2161
  mint: resolveAccount("mint"),
2580
2162
  multisigFreezeAuthority: resolveAccount("multisigFreezeAuthority")
2581
2163
  },
2582
- SplTokenThawAccountInstructionData: {
2164
+ SplTokenThawAccountInstruction: {
2583
2165
  account: resolveAccount("account"),
2584
2166
  freezeAuthority: resolveAccount("freezeAuthority"),
2585
2167
  mint: resolveAccount("mint"),
2586
2168
  multisigFreezeAuthority: resolveAccount("multisigFreezeAuthority")
2587
2169
  },
2588
- SplTokenTransferCheckedInstructionData: {
2170
+ SplTokenTransferCheckedInstruction: {
2589
2171
  authority: resolveAccount("authority"),
2590
2172
  destination: resolveAccount("destination"),
2591
2173
  mint: resolveAccount("mint"),
2592
2174
  multisigAuthority: resolveAccount("multisigAuthority"),
2593
2175
  source: resolveAccount("source")
2594
2176
  },
2595
- SplTokenApproveCheckedInstructionData: {
2177
+ SplTokenApproveCheckedInstruction: {
2596
2178
  delegate: resolveAccount("delegate"),
2597
2179
  mint: resolveAccount("mint"),
2598
2180
  multisigOwner: resolveAccount("multisigOwner"),
2599
2181
  owner: resolveAccount("owner"),
2600
2182
  source: resolveAccount("source")
2601
2183
  },
2602
- SplTokenMintToCheckedInstructionData: {
2184
+ SplTokenMintToCheckedInstruction: {
2603
2185
  account: resolveAccount("account"),
2604
2186
  authority: resolveAccount("authority"),
2605
2187
  mint: resolveAccount("mint"),
2606
2188
  mintAuthority: resolveAccount("mintAuthority"),
2607
2189
  multisigMintAuthority: resolveAccount("multisigMintAuthority")
2608
2190
  },
2609
- SplTokenBurnCheckedInstructionData: {
2191
+ SplTokenBurnCheckedInstruction: {
2610
2192
  account: resolveAccount("account"),
2611
2193
  authority: resolveAccount("authority"),
2612
2194
  mint: resolveAccount("mint"),
2613
2195
  multisigAuthority: resolveAccount("multisigAuthority")
2614
2196
  },
2615
- SplTokenSyncNativeInstructionData: {
2197
+ SplTokenSyncNativeInstruction: {
2616
2198
  account: resolveAccount("account")
2617
2199
  },
2618
- SplTokenGetAccountDataSizeInstructionData: {
2200
+ SplTokenGetAccountDataSizeInstruction: {
2619
2201
  mint: resolveAccount("mint")
2620
2202
  },
2621
- SplTokenAmountToUiAmountInstructionData: {
2203
+ SplTokenAmountToUiAmountInstruction: {
2622
2204
  mint: resolveAccount("mint")
2623
2205
  },
2624
- SplTokenUiAmountToAmountInstructionData: {
2206
+ SplTokenUiAmountToAmountInstruction: {
2625
2207
  mint: resolveAccount("mint")
2626
2208
  },
2627
- SplTokenInitializeMintCloseAuthorityInstructionData: {
2209
+ SplTokenInitializeMintCloseAuthorityInstruction: {
2628
2210
  mint: resolveAccount("mint"),
2629
2211
  newAuthority: resolveAccount("newAuthority")
2630
2212
  },
@@ -2635,45 +2217,45 @@ var instructionResolvers = {
2635
2217
  staker: resolveAccount("staker"),
2636
2218
  withdrawer: resolveAccount("withdrawer")
2637
2219
  },
2638
- StakeInitializeInstructionData: {
2220
+ StakeInitializeInstruction: {
2639
2221
  stakeAccount: resolveAccount("stakeAccount")
2640
2222
  },
2641
- StakeAuthorizeInstructionData: {
2223
+ StakeAuthorizeInstruction: {
2642
2224
  authority: resolveAccount("authority"),
2643
2225
  custodian: resolveAccount("custodian"),
2644
2226
  newAuthority: resolveAccount("newAuthority"),
2645
2227
  stakeAccount: resolveAccount("stakeAccount")
2646
2228
  },
2647
- StakeDelegateStakeInstructionData: {
2229
+ StakeDelegateStakeInstruction: {
2648
2230
  stakeAccount: resolveAccount("stakeAccount"),
2649
2231
  stakeAuthority: resolveAccount("stakeAuthority"),
2650
2232
  stakeConfigAccount: resolveAccount("stakeConfigAccount"),
2651
2233
  voteAccount: resolveAccount("voteAccount")
2652
2234
  },
2653
- StakeSplitInstructionData: {
2235
+ StakeSplitInstruction: {
2654
2236
  newSplitAccount: resolveAccount("newSplitAccount"),
2655
2237
  stakeAccount: resolveAccount("stakeAccount"),
2656
2238
  stakeAuthority: resolveAccount("stakeAuthority")
2657
2239
  },
2658
- StakeWithdrawInstructionData: {
2240
+ StakeWithdrawInstruction: {
2659
2241
  destination: resolveAccount("destination"),
2660
2242
  stakeAccount: resolveAccount("stakeAccount"),
2661
2243
  withdrawAuthority: resolveAccount("withdrawAuthority")
2662
2244
  },
2663
- StakeDeactivateInstructionData: {
2245
+ StakeDeactivateInstruction: {
2664
2246
  stakeAccount: resolveAccount("stakeAccount"),
2665
2247
  stakeAuthority: resolveAccount("stakeAuthority")
2666
2248
  },
2667
- StakeSetLockupInstructionData: {
2249
+ StakeSetLockupInstruction: {
2668
2250
  custodian: resolveAccount("custodian"),
2669
2251
  stakeAccount: resolveAccount("stakeAccount")
2670
2252
  },
2671
- StakeMergeInstructionData: {
2253
+ StakeMergeInstruction: {
2672
2254
  destination: resolveAccount("destination"),
2673
2255
  source: resolveAccount("source"),
2674
2256
  stakeAuthority: resolveAccount("stakeAuthority")
2675
2257
  },
2676
- StakeAuthorizeWithSeedInstructionData: {
2258
+ StakeAuthorizeWithSeedInstruction: {
2677
2259
  authorityBase: resolveAccount("authorityBase"),
2678
2260
  authorityOwner: resolveAccount("authorityOwner"),
2679
2261
  custodian: resolveAccount("custodian"),
@@ -2681,154 +2263,153 @@ var instructionResolvers = {
2681
2263
  stakeAccount: resolveAccount("stakeAccount")
2682
2264
  },
2683
2265
  StakeInitializeCheckedInstructionDataAuthorized: {
2684
- stakeAccount: resolveAccount("stakeAccount"),
2685
2266
  staker: resolveAccount("staker"),
2686
2267
  withdrawer: resolveAccount("withdrawer")
2687
2268
  },
2688
- StakeAuthorizeCheckedInstructionData: {
2269
+ StakeAuthorizeCheckedInstruction: {
2689
2270
  authority: resolveAccount("authority"),
2690
2271
  custodian: resolveAccount("custodian"),
2691
2272
  newAuthority: resolveAccount("newAuthority"),
2692
2273
  stakeAccount: resolveAccount("stakeAccount")
2693
2274
  },
2694
- StakeAuthorizeCheckedWithSeedInstructionData: {
2275
+ StakeAuthorizeCheckedWithSeedInstruction: {
2695
2276
  authorityBase: resolveAccount("authorityBase"),
2696
2277
  authorityOwner: resolveAccount("authorityOwner"),
2697
2278
  custodian: resolveAccount("custodian"),
2698
2279
  newAuthorized: resolveAccount("newAuthorized"),
2699
2280
  stakeAccount: resolveAccount("stakeAccount")
2700
2281
  },
2701
- StakeSetLockupCheckedInstructionData: {
2282
+ StakeSetLockupCheckedInstruction: {
2702
2283
  custodian: resolveAccount("custodian"),
2703
2284
  stakeAccount: resolveAccount("stakeAccount")
2704
2285
  },
2705
- StakeDeactivateDelinquentInstructionData: {
2286
+ StakeDeactivateDelinquentInstruction: {
2706
2287
  referenceVoteAccount: resolveAccount("referenceVoteAccount"),
2707
2288
  stakeAccount: resolveAccount("stakeAccount"),
2708
2289
  voteAccount: resolveAccount("voteAccount")
2709
2290
  },
2710
- StakeRedelegateInstructionData: {
2291
+ StakeRedelegateInstruction: {
2711
2292
  newStakeAccount: resolveAccount("newStakeAccount"),
2712
2293
  stakeAccount: resolveAccount("stakeAccount"),
2713
2294
  stakeAuthority: resolveAccount("stakeAuthority"),
2714
2295
  stakeConfigAccount: resolveAccount("stakeConfigAccount"),
2715
2296
  voteAccount: resolveAccount("voteAccount")
2716
2297
  },
2717
- CreateAccountInstructionData: {
2298
+ CreateAccountInstruction: {
2718
2299
  newAccount: resolveAccount("newAccount"),
2719
2300
  owner: resolveAccount("owner"),
2720
2301
  source: resolveAccount("source")
2721
2302
  },
2722
- AssignInstructionData: {
2303
+ AssignInstruction: {
2723
2304
  account: resolveAccount("account"),
2724
2305
  owner: resolveAccount("owner")
2725
2306
  },
2726
- TransferInstructionData: {
2307
+ TransferInstruction: {
2727
2308
  destination: resolveAccount("destination"),
2728
2309
  source: resolveAccount("source")
2729
2310
  },
2730
- CreateAccountWithSeedInstructionData: {
2311
+ CreateAccountWithSeedInstruction: {
2731
2312
  base: resolveAccount("base"),
2732
2313
  owner: resolveAccount("owner"),
2733
2314
  seed: resolveAccount("seed")
2734
2315
  },
2735
- AdvanceNonceAccountInstructionData: {
2316
+ AdvanceNonceAccountInstruction: {
2736
2317
  nonceAccount: resolveAccount("nonceAccount"),
2737
2318
  nonceAuthority: resolveAccount("nonceAuthority")
2738
2319
  },
2739
- WithdrawNonceAccountInstructionData: {
2320
+ WithdrawNonceAccountInstruction: {
2740
2321
  destination: resolveAccount("destination"),
2741
2322
  nonceAccount: resolveAccount("nonceAccount"),
2742
2323
  nonceAuthority: resolveAccount("nonceAuthority")
2743
2324
  },
2744
- InitializeNonceAccountInstructionData: {
2325
+ InitializeNonceAccountInstruction: {
2745
2326
  nonceAccount: resolveAccount("nonceAccount"),
2746
2327
  nonceAuthority: resolveAccount("nonceAuthority")
2747
2328
  },
2748
- AuthorizeNonceAccountInstructionData: {
2329
+ AuthorizeNonceAccountInstruction: {
2749
2330
  newAuthorized: resolveAccount("newAuthorized"),
2750
2331
  nonceAccount: resolveAccount("nonceAccount"),
2751
2332
  nonceAuthority: resolveAccount("nonceAuthority")
2752
2333
  },
2753
- UpgradeNonceAccountInstructionData: {
2334
+ UpgradeNonceAccountInstruction: {
2754
2335
  nonceAccount: resolveAccount("nonceAccount"),
2755
2336
  nonceAuthority: resolveAccount("nonceAuthority")
2756
2337
  },
2757
- AllocateInstructionData: {
2338
+ AllocateInstruction: {
2758
2339
  account: resolveAccount("account")
2759
2340
  },
2760
- AllocateWithSeedInstructionData: {
2341
+ AllocateWithSeedInstruction: {
2761
2342
  account: resolveAccount("account"),
2762
2343
  owner: resolveAccount("owner")
2763
2344
  },
2764
- AssignWithSeedInstructionData: {
2345
+ AssignWithSeedInstruction: {
2765
2346
  account: resolveAccount("account"),
2766
2347
  owner: resolveAccount("owner")
2767
2348
  },
2768
- TransferWithSeedInstructionData: {
2349
+ TransferWithSeedInstruction: {
2769
2350
  destination: resolveAccount("destination"),
2770
2351
  source: resolveAccount("source"),
2771
2352
  sourceOwner: resolveAccount("sourceOwner")
2772
2353
  },
2773
- VoteInitializeAccountInstructionData: {
2354
+ VoteInitializeAccountInstruction: {
2774
2355
  authorizedVoter: resolveAccount("authorizedVoter"),
2775
2356
  authorizedWithdrawer: resolveAccount("authorizedWithdrawer"),
2776
2357
  node: resolveAccount("node"),
2777
2358
  voteAccount: resolveAccount("voteAccount")
2778
2359
  },
2779
- VoteAuthorizeInstructionData: {
2360
+ VoteAuthorizeInstruction: {
2780
2361
  authority: resolveAccount("authority"),
2781
2362
  newAuthority: resolveAccount("newAuthority"),
2782
2363
  voteAccount: resolveAccount("voteAccount")
2783
2364
  },
2784
- VoteAuthorizeWithSeedInstructionData: {
2365
+ VoteAuthorizeWithSeedInstruction: {
2785
2366
  authorityOwner: resolveAccount("authorityOwner"),
2786
2367
  newAuthority: resolveAccount("newAuthority"),
2787
2368
  voteAccount: resolveAccount("voteAccount")
2788
2369
  },
2789
- VoteAuthorizeCheckedWithSeedInstructionData: {
2370
+ VoteAuthorizeCheckedWithSeedInstruction: {
2790
2371
  authorityOwner: resolveAccount("authorityOwner"),
2791
2372
  newAuthority: resolveAccount("newAuthority"),
2792
2373
  voteAccount: resolveAccount("voteAccount")
2793
2374
  },
2794
- VoteVoteInstructionData: {
2375
+ VoteVoteInstruction: {
2795
2376
  voteAccount: resolveAccount("voteAccount"),
2796
2377
  voteAuthority: resolveAccount("voteAuthority")
2797
2378
  },
2798
- VoteUpdateVoteStateInstructionData: {
2379
+ VoteUpdateVoteStateInstruction: {
2799
2380
  voteAccount: resolveAccount("voteAccount"),
2800
2381
  voteAuthority: resolveAccount("voteAuthority")
2801
2382
  },
2802
- VoteUpdateVoteStateSwitchInstructionData: {
2383
+ VoteUpdateVoteStateSwitchInstruction: {
2803
2384
  voteAccount: resolveAccount("voteAccount"),
2804
2385
  voteAuthority: resolveAccount("voteAuthority")
2805
2386
  },
2806
- VoteCompactUpdateVoteStateInstructionData: {
2387
+ VoteCompactUpdateVoteStateInstruction: {
2807
2388
  voteAccount: resolveAccount("voteAccount"),
2808
2389
  voteAuthority: resolveAccount("voteAuthority")
2809
2390
  },
2810
- VoteCompactUpdateVoteStateSwitchInstructionData: {
2391
+ VoteCompactUpdateVoteStateSwitchInstruction: {
2811
2392
  voteAccount: resolveAccount("voteAccount"),
2812
2393
  voteAuthority: resolveAccount("voteAuthority")
2813
2394
  },
2814
- VoteWithdrawInstructionData: {
2395
+ VoteWithdrawInstruction: {
2815
2396
  voteAccount: resolveAccount("voteAccount"),
2816
2397
  withdrawAuthority: resolveAccount("withdrawAuthority")
2817
2398
  },
2818
- VoteUpdateValidatorIdentityInstructionData: {
2399
+ VoteUpdateValidatorIdentityInstruction: {
2819
2400
  newValidatorIdentity: resolveAccount("newValidatorIdentity"),
2820
2401
  voteAccount: resolveAccount("voteAccount"),
2821
2402
  withdrawAuthority: resolveAccount("withdrawAuthority")
2822
2403
  },
2823
- VoteUpdateCommissionInstructionData: {
2404
+ VoteUpdateCommissionInstruction: {
2824
2405
  voteAccount: resolveAccount("voteAccount"),
2825
2406
  withdrawAuthority: resolveAccount("withdrawAuthority")
2826
2407
  },
2827
- VoteVoteSwitchInstructionData: {
2408
+ VoteVoteSwitchInstruction: {
2828
2409
  voteAccount: resolveAccount("voteAccount"),
2829
2410
  voteAuthority: resolveAccount("voteAuthority")
2830
2411
  },
2831
- VoteAuthorizeCheckedInstructionData: {
2412
+ VoteAuthorizeCheckedInstruction: {
2832
2413
  authority: resolveAccount("authority"),
2833
2414
  newAuthority: resolveAccount("newAuthority"),
2834
2415
  voteAccount: resolveAccount("voteAccount")
@@ -2903,7 +2484,6 @@ var transactionTypeDefs = (
2903
2484
  # Transaction interface
2904
2485
  interface Transaction {
2905
2486
  blockTime: String
2906
- encoding: TransactionEncoding
2907
2487
  meta: TransactionMeta
2908
2488
  slot: BigInt
2909
2489
  version: String
@@ -2913,7 +2493,6 @@ var transactionTypeDefs = (
2913
2493
  type TransactionBase58 implements Transaction {
2914
2494
  blockTime: String
2915
2495
  data: Base58EncodedBytes
2916
- encoding: TransactionEncoding
2917
2496
  meta: TransactionMeta
2918
2497
  slot: BigInt
2919
2498
  version: String
@@ -2923,7 +2502,6 @@ var transactionTypeDefs = (
2923
2502
  type TransactionBase64 implements Transaction {
2924
2503
  blockTime: String
2925
2504
  data: Base64EncodedBytes
2926
- encoding: TransactionEncoding
2927
2505
  meta: TransactionMeta
2928
2506
  slot: BigInt
2929
2507
  version: String
@@ -2937,7 +2515,6 @@ var transactionTypeDefs = (
2937
2515
  type TransactionParsed implements Transaction {
2938
2516
  blockTime: String
2939
2517
  data: TransactionDataParsed
2940
- encoding: TransactionEncoding
2941
2518
  meta: TransactionMeta
2942
2519
  slot: BigInt
2943
2520
  version: String