@macalinao/clients-mpl-bubblegum 0.3.0 → 0.3.2
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.
- package/dist/generated/accounts/index.d.ts +2 -1
- package/dist/generated/accounts/treeConfig.d.ts +22 -7
- package/dist/generated/accounts/treeConfig.d.ts.map +1 -1
- package/dist/generated/accounts/treeConfig.js +7 -0
- package/dist/generated/accounts/treeConfig.js.map +1 -1
- package/dist/generated/accounts/voucher.d.ts +14 -7
- package/dist/generated/accounts/voucher.d.ts.map +1 -1
- package/dist/generated/accounts/voucher.js +7 -0
- package/dist/generated/accounts/voucher.js.map +1 -1
- package/dist/generated/errors/bubblegum.d.ts +0 -1
- package/dist/generated/errors/bubblegum.d.ts.map +1 -1
- package/dist/generated/errors/bubblegum.js +66 -59
- package/dist/generated/errors/bubblegum.js.map +1 -1
- package/dist/generated/errors/index.d.ts +2 -1
- package/dist/generated/index.d.ts +8 -1
- package/dist/generated/instructions/burn.d.ts +141 -17
- package/dist/generated/instructions/burn.d.ts.map +1 -1
- package/dist/generated/instructions/burn.js +23 -0
- package/dist/generated/instructions/burn.js.map +1 -1
- package/dist/generated/instructions/burnV2.d.ts +179 -31
- package/dist/generated/instructions/burnV2.d.ts.map +1 -1
- package/dist/generated/instructions/burnV2.js +21 -0
- package/dist/generated/instructions/burnV2.js.map +1 -1
- package/dist/generated/instructions/cancelRedeem.d.ts +99 -13
- package/dist/generated/instructions/cancelRedeem.d.ts.map +1 -1
- package/dist/generated/instructions/cancelRedeem.js +19 -0
- package/dist/generated/instructions/cancelRedeem.js.map +1 -1
- package/dist/generated/instructions/closeTreeV2.d.ts +85 -19
- package/dist/generated/instructions/closeTreeV2.d.ts.map +1 -1
- package/dist/generated/instructions/closeTreeV2.js +21 -0
- package/dist/generated/instructions/closeTreeV2.js.map +1 -1
- package/dist/generated/instructions/collectV2.d.ts +20 -7
- package/dist/generated/instructions/collectV2.d.ts.map +1 -1
- package/dist/generated/instructions/collectV2.js +10 -0
- package/dist/generated/instructions/collectV2.js.map +1 -1
- package/dist/generated/instructions/compress.d.ts +119 -9
- package/dist/generated/instructions/compress.d.ts.map +1 -1
- package/dist/generated/instructions/compress.js +21 -0
- package/dist/generated/instructions/compress.js.map +1 -1
- package/dist/generated/instructions/createTree.d.ts +117 -11
- package/dist/generated/instructions/createTree.d.ts.map +1 -1
- package/dist/generated/instructions/createTree.js +23 -0
- package/dist/generated/instructions/createTree.js.map +1 -1
- package/dist/generated/instructions/createTreeV2.d.ts +109 -14
- package/dist/generated/instructions/createTreeV2.d.ts.map +1 -1
- package/dist/generated/instructions/createTreeV2.js +23 -0
- package/dist/generated/instructions/createTreeV2.js.map +1 -1
- package/dist/generated/instructions/decompressV1.d.ts +106 -11
- package/dist/generated/instructions/decompressV1.d.ts.map +1 -1
- package/dist/generated/instructions/decompressV1.js +25 -0
- package/dist/generated/instructions/decompressV1.js.map +1 -1
- package/dist/generated/instructions/delegate.d.ts +140 -17
- package/dist/generated/instructions/delegate.d.ts.map +1 -1
- package/dist/generated/instructions/delegate.js +19 -0
- package/dist/generated/instructions/delegate.js.map +1 -1
- package/dist/generated/instructions/delegateAndFreezeV2.d.ts +171 -27
- package/dist/generated/instructions/delegateAndFreezeV2.d.ts.map +1 -1
- package/dist/generated/instructions/delegateAndFreezeV2.js +17 -0
- package/dist/generated/instructions/delegateAndFreezeV2.js.map +1 -1
- package/dist/generated/instructions/delegateV2.d.ts +169 -27
- package/dist/generated/instructions/delegateV2.d.ts.map +1 -1
- package/dist/generated/instructions/delegateV2.js +15 -0
- package/dist/generated/instructions/delegateV2.js.map +1 -1
- package/dist/generated/instructions/freezeV2.d.ts +174 -28
- package/dist/generated/instructions/freezeV2.d.ts.map +1 -1
- package/dist/generated/instructions/freezeV2.js +23 -0
- package/dist/generated/instructions/freezeV2.js.map +1 -1
- package/dist/generated/instructions/index.d.ts +2 -1
- package/dist/generated/instructions/mintToCollectionV1.d.ts +171 -20
- package/dist/generated/instructions/mintToCollectionV1.d.ts.map +1 -1
- package/dist/generated/instructions/mintToCollectionV1.js +23 -0
- package/dist/generated/instructions/mintToCollectionV1.js.map +1 -1
- package/dist/generated/instructions/mintV1.d.ts +109 -11
- package/dist/generated/instructions/mintV1.d.ts.map +1 -1
- package/dist/generated/instructions/mintV1.js +21 -0
- package/dist/generated/instructions/mintV1.js.map +1 -1
- package/dist/generated/instructions/mintV2.d.ts +163 -17
- package/dist/generated/instructions/mintV2.d.ts.map +1 -1
- package/dist/generated/instructions/mintV2.js +45 -0
- package/dist/generated/instructions/mintV2.js.map +1 -1
- package/dist/generated/instructions/redeem.d.ts +153 -17
- package/dist/generated/instructions/redeem.d.ts.map +1 -1
- package/dist/generated/instructions/redeem.js +23 -0
- package/dist/generated/instructions/redeem.js.map +1 -1
- package/dist/generated/instructions/setAndVerifyCollection.d.ts +222 -38
- package/dist/generated/instructions/setAndVerifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/setAndVerifyCollection.js +21 -0
- package/dist/generated/instructions/setAndVerifyCollection.js.map +1 -1
- package/dist/generated/instructions/setCollectionV2.d.ts +186 -39
- package/dist/generated/instructions/setCollectionV2.d.ts.map +1 -1
- package/dist/generated/instructions/setCollectionV2.js +21 -0
- package/dist/generated/instructions/setCollectionV2.js.map +1 -1
- package/dist/generated/instructions/setDecompressableState.d.ts +40 -9
- package/dist/generated/instructions/setDecompressableState.d.ts.map +1 -1
- package/dist/generated/instructions/setDecompressableState.js +13 -0
- package/dist/generated/instructions/setDecompressableState.js.map +1 -1
- package/dist/generated/instructions/setDecompressibleState.d.ts +41 -9
- package/dist/generated/instructions/setDecompressibleState.d.ts.map +1 -1
- package/dist/generated/instructions/setDecompressibleState.js +14 -0
- package/dist/generated/instructions/setDecompressibleState.js.map +1 -1
- package/dist/generated/instructions/setNonTransferableV2.d.ts +166 -31
- package/dist/generated/instructions/setNonTransferableV2.d.ts.map +1 -1
- package/dist/generated/instructions/setNonTransferableV2.js +23 -0
- package/dist/generated/instructions/setNonTransferableV2.js.map +1 -1
- package/dist/generated/instructions/setTreeDelegate.d.ts +65 -9
- package/dist/generated/instructions/setTreeDelegate.d.ts.map +1 -1
- package/dist/generated/instructions/setTreeDelegate.js +21 -0
- package/dist/generated/instructions/setTreeDelegate.js.map +1 -1
- package/dist/generated/instructions/thawAndRevokeV2.d.ts +158 -24
- package/dist/generated/instructions/thawAndRevokeV2.d.ts.map +1 -1
- package/dist/generated/instructions/thawAndRevokeV2.js +17 -0
- package/dist/generated/instructions/thawAndRevokeV2.js.map +1 -1
- package/dist/generated/instructions/thawV2.d.ts +166 -28
- package/dist/generated/instructions/thawV2.d.ts.map +1 -1
- package/dist/generated/instructions/thawV2.js +15 -0
- package/dist/generated/instructions/thawV2.js.map +1 -1
- package/dist/generated/instructions/transfer.d.ts +140 -17
- package/dist/generated/instructions/transfer.d.ts.map +1 -1
- package/dist/generated/instructions/transfer.js +19 -0
- package/dist/generated/instructions/transfer.js.map +1 -1
- package/dist/generated/instructions/transferV2.d.ts +167 -31
- package/dist/generated/instructions/transferV2.d.ts.map +1 -1
- package/dist/generated/instructions/transferV2.js +21 -0
- package/dist/generated/instructions/transferV2.js.map +1 -1
- package/dist/generated/instructions/unverifyCollection.d.ts +215 -38
- package/dist/generated/instructions/unverifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCollection.js +19 -0
- package/dist/generated/instructions/unverifyCollection.js.map +1 -1
- package/dist/generated/instructions/unverifyCreator.d.ts +161 -17
- package/dist/generated/instructions/unverifyCreator.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCreator.js +19 -0
- package/dist/generated/instructions/unverifyCreator.js.map +1 -1
- package/dist/generated/instructions/unverifyCreatorV2.d.ts +143 -21
- package/dist/generated/instructions/unverifyCreatorV2.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCreatorV2.js +19 -0
- package/dist/generated/instructions/unverifyCreatorV2.js.map +1 -1
- package/dist/generated/instructions/updateAssetDataV2.d.ts +180 -28
- package/dist/generated/instructions/updateAssetDataV2.d.ts.map +1 -1
- package/dist/generated/instructions/updateAssetDataV2.js +21 -0
- package/dist/generated/instructions/updateAssetDataV2.js.map +1 -1
- package/dist/generated/instructions/updateMetadata.d.ts +183 -28
- package/dist/generated/instructions/updateMetadata.d.ts.map +1 -1
- package/dist/generated/instructions/updateMetadata.js +21 -0
- package/dist/generated/instructions/updateMetadata.js.map +1 -1
- package/dist/generated/instructions/updateMetadataV2.d.ts +162 -27
- package/dist/generated/instructions/updateMetadataV2.d.ts.map +1 -1
- package/dist/generated/instructions/updateMetadataV2.js +19 -0
- package/dist/generated/instructions/updateMetadataV2.js.map +1 -1
- package/dist/generated/instructions/verifyCollection.d.ts +215 -38
- package/dist/generated/instructions/verifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCollection.js +19 -0
- package/dist/generated/instructions/verifyCollection.js.map +1 -1
- package/dist/generated/instructions/verifyCreator.d.ts +161 -17
- package/dist/generated/instructions/verifyCreator.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCreator.js +19 -0
- package/dist/generated/instructions/verifyCreator.js.map +1 -1
- package/dist/generated/instructions/verifyCreatorV2.d.ts +143 -21
- package/dist/generated/instructions/verifyCreatorV2.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCreatorV2.js +19 -0
- package/dist/generated/instructions/verifyCreatorV2.js.map +1 -1
- package/dist/generated/pdas/assetId.d.ts +2 -3
- package/dist/generated/pdas/assetId.d.ts.map +1 -1
- package/dist/generated/pdas/assetId.js +7 -0
- package/dist/generated/pdas/assetId.js.map +1 -1
- package/dist/generated/pdas/bubblegumSigner.d.ts +0 -1
- package/dist/generated/pdas/bubblegumSigner.d.ts.map +1 -1
- package/dist/generated/pdas/bubblegumSigner.js +7 -0
- package/dist/generated/pdas/bubblegumSigner.js.map +1 -1
- package/dist/generated/pdas/index.d.ts +2 -1
- package/dist/generated/pdas/masterEdition.d.ts +2 -3
- package/dist/generated/pdas/masterEdition.d.ts.map +1 -1
- package/dist/generated/pdas/masterEdition.js +7 -0
- package/dist/generated/pdas/masterEdition.js.map +1 -1
- package/dist/generated/pdas/metadata.d.ts +2 -3
- package/dist/generated/pdas/metadata.d.ts.map +1 -1
- package/dist/generated/pdas/metadata.js +7 -0
- package/dist/generated/pdas/metadata.js.map +1 -1
- package/dist/generated/pdas/mintAuthority.d.ts +2 -3
- package/dist/generated/pdas/mintAuthority.d.ts.map +1 -1
- package/dist/generated/pdas/mintAuthority.js +7 -0
- package/dist/generated/pdas/mintAuthority.js.map +1 -1
- package/dist/generated/pdas/treeConfig.d.ts +2 -3
- package/dist/generated/pdas/treeConfig.d.ts.map +1 -1
- package/dist/generated/pdas/treeConfig.js +7 -0
- package/dist/generated/pdas/treeConfig.js.map +1 -1
- package/dist/generated/pdas/voucher.d.ts +2 -3
- package/dist/generated/pdas/voucher.d.ts.map +1 -1
- package/dist/generated/pdas/voucher.js +7 -0
- package/dist/generated/pdas/voucher.js.map +1 -1
- package/dist/generated/programs/bubblegum.d.ts +17 -12
- package/dist/generated/programs/bubblegum.d.ts.map +1 -1
- package/dist/generated/programs/bubblegum.js +11 -1
- package/dist/generated/programs/bubblegum.js.map +1 -1
- package/dist/generated/programs/index.d.ts +2 -1
- package/dist/generated/programs/mplTokenMetadata.d.ts +8 -8
- package/dist/generated/programs/mplTokenMetadata.d.ts.map +1 -1
- package/dist/generated/programs/mplTokenMetadata.js +7 -0
- package/dist/generated/programs/mplTokenMetadata.js.map +1 -1
- package/dist/generated/types/assetDataSchema.d.ts +4 -1
- package/dist/generated/types/assetDataSchema.d.ts.map +1 -1
- package/dist/generated/types/assetDataSchema.js +11 -0
- package/dist/generated/types/assetDataSchema.js.map +1 -1
- package/dist/generated/types/bubblegumEventType.d.ts +4 -1
- package/dist/generated/types/bubblegumEventType.d.ts.map +1 -1
- package/dist/generated/types/bubblegumEventType.js +11 -0
- package/dist/generated/types/bubblegumEventType.js.map +1 -1
- package/dist/generated/types/collection.d.ts +9 -3
- package/dist/generated/types/collection.d.ts.map +1 -1
- package/dist/generated/types/collection.js +7 -0
- package/dist/generated/types/collection.js.map +1 -1
- package/dist/generated/types/creator.d.ts +9 -7
- package/dist/generated/types/creator.d.ts.map +1 -1
- package/dist/generated/types/creator.js +7 -0
- package/dist/generated/types/creator.js.map +1 -1
- package/dist/generated/types/decompressibleState.d.ts +5 -1
- package/dist/generated/types/decompressibleState.d.ts.map +1 -1
- package/dist/generated/types/decompressibleState.js +12 -0
- package/dist/generated/types/decompressibleState.js.map +1 -1
- package/dist/generated/types/index.d.ts +2 -1
- package/dist/generated/types/instructionName.d.ts +4 -1
- package/dist/generated/types/instructionName.d.ts.map +1 -1
- package/dist/generated/types/instructionName.js +11 -0
- package/dist/generated/types/instructionName.js.map +1 -1
- package/dist/generated/types/leafSchema.d.ts +51 -13
- package/dist/generated/types/leafSchema.d.ts.map +1 -1
- package/dist/generated/types/leafSchema.js +7 -0
- package/dist/generated/types/leafSchema.js.map +1 -1
- package/dist/generated/types/metadataArgs.d.ts +19 -7
- package/dist/generated/types/metadataArgs.d.ts.map +1 -1
- package/dist/generated/types/metadataArgs.js +7 -0
- package/dist/generated/types/metadataArgs.js.map +1 -1
- package/dist/generated/types/metadataArgsV2.d.ts +14 -7
- package/dist/generated/types/metadataArgsV2.d.ts.map +1 -1
- package/dist/generated/types/metadataArgsV2.js +7 -0
- package/dist/generated/types/metadataArgsV2.js.map +1 -1
- package/dist/generated/types/tokenProgramVersion.d.ts +1 -1
- package/dist/generated/types/tokenProgramVersion.d.ts.map +1 -1
- package/dist/generated/types/tokenProgramVersion.js +8 -0
- package/dist/generated/types/tokenProgramVersion.js.map +1 -1
- package/dist/generated/types/tokenStandard.d.ts +5 -1
- package/dist/generated/types/tokenStandard.d.ts.map +1 -1
- package/dist/generated/types/tokenStandard.js +12 -0
- package/dist/generated/types/tokenStandard.js.map +1 -1
- package/dist/generated/types/updateArgs.d.ts +26 -7
- package/dist/generated/types/updateArgs.d.ts.map +1 -1
- package/dist/generated/types/updateArgs.js +7 -0
- package/dist/generated/types/updateArgs.js.map +1 -1
- package/dist/generated/types/useMethod.d.ts +1 -1
- package/dist/generated/types/useMethod.d.ts.map +1 -1
- package/dist/generated/types/useMethod.js +8 -0
- package/dist/generated/types/useMethod.js.map +1 -1
- package/dist/generated/types/uses.d.ts +16 -5
- package/dist/generated/types/uses.d.ts.map +1 -1
- package/dist/generated/types/uses.js +7 -0
- package/dist/generated/types/uses.js.map +1 -1
- package/dist/generated/types/version.d.ts +5 -1
- package/dist/generated/types/version.d.ts.map +1 -1
- package/dist/generated/types/version.js +12 -0
- package/dist/generated/types/version.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/package.json +8 -12
- package/src/generated/accounts/treeConfig.ts +36 -27
- package/src/generated/accounts/voucher.ts +30 -23
- package/src/generated/errors/bubblegum.ts +121 -154
- package/src/generated/instructions/burn.ts +163 -44
- package/src/generated/instructions/burnV2.ts +205 -64
- package/src/generated/instructions/cancelRedeem.ts +122 -41
- package/src/generated/instructions/closeTreeV2.ts +102 -44
- package/src/generated/instructions/collectV2.ts +34 -23
- package/src/generated/instructions/compress.ts +146 -45
- package/src/generated/instructions/createTree.ts +143 -42
- package/src/generated/instructions/createTreeV2.ts +134 -45
- package/src/generated/instructions/decompressV1.ts +136 -49
- package/src/generated/instructions/delegate.ts +165 -47
- package/src/generated/instructions/delegateAndFreezeV2.ts +197 -60
- package/src/generated/instructions/delegateV2.ts +195 -60
- package/src/generated/instructions/freezeV2.ts +199 -58
- package/src/generated/instructions/mintToCollectionV1.ts +196 -52
- package/src/generated/instructions/mintV1.ts +133 -40
- package/src/generated/instructions/mintV2.ts +192 -57
- package/src/generated/instructions/redeem.ts +178 -47
- package/src/generated/instructions/setAndVerifyCollection.ts +246 -69
- package/src/generated/instructions/setCollectionV2.ts +212 -73
- package/src/generated/instructions/setDecompressableState.ts +59 -31
- package/src/generated/instructions/setDecompressibleState.ts +60 -31
- package/src/generated/instructions/setNonTransferableV2.ts +190 -61
- package/src/generated/instructions/setTreeDelegate.ts +84 -31
- package/src/generated/instructions/thawAndRevokeV2.ts +185 -57
- package/src/generated/instructions/thawV2.ts +191 -58
- package/src/generated/instructions/transfer.ts +162 -44
- package/src/generated/instructions/transferV2.ts +191 -61
- package/src/generated/instructions/unverifyCollection.ts +239 -69
- package/src/generated/instructions/unverifyCreator.ts +187 -48
- package/src/generated/instructions/unverifyCreatorV2.ts +170 -55
- package/src/generated/instructions/updateAssetDataV2.ts +206 -59
- package/src/generated/instructions/updateMetadata.ts +210 -67
- package/src/generated/instructions/updateMetadataV2.ts +189 -63
- package/src/generated/instructions/verifyCollection.ts +239 -69
- package/src/generated/instructions/verifyCreator.ts +187 -48
- package/src/generated/instructions/verifyCreatorV2.ts +170 -55
- package/src/generated/pdas/assetId.ts +4 -3
- package/src/generated/pdas/bubblegumSigner.ts +6 -2
- package/src/generated/pdas/masterEdition.ts +4 -3
- package/src/generated/pdas/metadata.ts +4 -3
- package/src/generated/pdas/mintAuthority.ts +8 -4
- package/src/generated/pdas/treeConfig.ts +8 -4
- package/src/generated/pdas/voucher.ts +4 -3
- package/src/generated/programs/bubblegum.ts +146 -144
- package/src/generated/programs/mplTokenMetadata.ts +5 -10
- package/src/generated/types/assetDataSchema.ts +14 -8
- package/src/generated/types/bubblegumEventType.ts +13 -7
- package/src/generated/types/collection.ts +13 -8
- package/src/generated/types/creator.ts +11 -10
- package/src/generated/types/decompressibleState.ts +14 -7
- package/src/generated/types/instructionName.ts +46 -40
- package/src/generated/types/leafSchema.ts +59 -22
- package/src/generated/types/metadataArgs.ts +35 -27
- package/src/generated/types/metadataArgsV2.ts +23 -20
- package/src/generated/types/tokenProgramVersion.ts +10 -7
- package/src/generated/types/tokenStandard.ts +16 -9
- package/src/generated/types/updateArgs.ts +36 -15
- package/src/generated/types/useMethod.ts +11 -8
- package/src/generated/types/uses.ts +24 -11
- package/src/generated/types/version.ts +14 -7
|
@@ -6,24 +6,6 @@
|
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import type {
|
|
10
|
-
AccountMeta,
|
|
11
|
-
AccountSignerMeta,
|
|
12
|
-
Address,
|
|
13
|
-
Codec,
|
|
14
|
-
Decoder,
|
|
15
|
-
Encoder,
|
|
16
|
-
Instruction,
|
|
17
|
-
InstructionWithAccounts,
|
|
18
|
-
InstructionWithData,
|
|
19
|
-
ReadonlyAccount,
|
|
20
|
-
ReadonlyUint8Array,
|
|
21
|
-
TransactionSigner,
|
|
22
|
-
WritableAccount,
|
|
23
|
-
WritableSignerAccount,
|
|
24
|
-
} from "@solana/kit";
|
|
25
|
-
import type { ResolvedInstructionAccount } from "@solana/program-client-core";
|
|
26
|
-
import type { MetadataArgs, MetadataArgsArgs } from "../types/index.js";
|
|
27
9
|
import {
|
|
28
10
|
address,
|
|
29
11
|
combineCodec,
|
|
@@ -38,10 +20,25 @@ import {
|
|
|
38
20
|
SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,
|
|
39
21
|
SolanaError,
|
|
40
22
|
transformEncoder,
|
|
23
|
+
type AccountMeta,
|
|
24
|
+
type AccountSignerMeta,
|
|
25
|
+
type Address,
|
|
26
|
+
type Codec,
|
|
27
|
+
type Decoder,
|
|
28
|
+
type Encoder,
|
|
29
|
+
type Instruction,
|
|
30
|
+
type InstructionWithAccounts,
|
|
31
|
+
type InstructionWithData,
|
|
32
|
+
type ReadonlyAccount,
|
|
33
|
+
type ReadonlyUint8Array,
|
|
34
|
+
type TransactionSigner,
|
|
35
|
+
type WritableAccount,
|
|
36
|
+
type WritableSignerAccount,
|
|
41
37
|
} from "@solana/kit";
|
|
42
38
|
import {
|
|
43
39
|
getAccountMetaFactory,
|
|
44
40
|
getAddressFromResolvedInstructionAccount,
|
|
41
|
+
type ResolvedInstructionAccount,
|
|
45
42
|
} from "@solana/program-client-core";
|
|
46
43
|
import {
|
|
47
44
|
findMasterEditionPda,
|
|
@@ -52,6 +49,8 @@ import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
|
52
49
|
import {
|
|
53
50
|
getMetadataArgsDecoder,
|
|
54
51
|
getMetadataArgsEncoder,
|
|
52
|
+
type MetadataArgs,
|
|
53
|
+
type MetadataArgsArgs,
|
|
55
54
|
} from "../types/index.js";
|
|
56
55
|
|
|
57
56
|
export const DECOMPRESS_V1_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([
|
|
@@ -73,24 +72,18 @@ export type DecompressV1Instruction<
|
|
|
73
72
|
TAccountMintAuthority extends string | AccountMeta<string> = string,
|
|
74
73
|
TAccountMetadata extends string | AccountMeta<string> = string,
|
|
75
74
|
TAccountMasterEdition extends string | AccountMeta<string> = string,
|
|
76
|
-
TAccountSystemProgram extends
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
TAccountAssociatedTokenProgram extends
|
|
89
|
-
| string
|
|
90
|
-
| AccountMeta<string> = "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
|
|
91
|
-
TAccountLogWrapper extends
|
|
92
|
-
| string
|
|
93
|
-
| AccountMeta<string> = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
|
|
75
|
+
TAccountSystemProgram extends string | AccountMeta<string> =
|
|
76
|
+
"11111111111111111111111111111111",
|
|
77
|
+
TAccountSysvarRent extends string | AccountMeta<string> =
|
|
78
|
+
"SysvarRent111111111111111111111111111111111",
|
|
79
|
+
TAccountTokenMetadataProgram extends string | AccountMeta<string> =
|
|
80
|
+
"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
|
|
81
|
+
TAccountTokenProgram extends string | AccountMeta<string> =
|
|
82
|
+
"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
|
|
83
|
+
TAccountAssociatedTokenProgram extends string | AccountMeta<string> =
|
|
84
|
+
"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
|
|
85
|
+
TAccountLogWrapper extends string | AccountMeta<string> =
|
|
86
|
+
"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
|
|
94
87
|
TRemainingAccounts extends readonly AccountMeta<string>[] = [],
|
|
95
88
|
> = Instruction<TProgram> &
|
|
96
89
|
InstructionWithData<ReadonlyUint8Array> &
|
|
@@ -140,14 +133,24 @@ export type DecompressV1Instruction<
|
|
|
140
133
|
]
|
|
141
134
|
>;
|
|
142
135
|
|
|
143
|
-
export
|
|
136
|
+
export type DecompressV1InstructionData = {
|
|
144
137
|
discriminator: ReadonlyUint8Array;
|
|
138
|
+
/**
|
|
139
|
+
* Metadata args of the leaf being decompressed; must match the leaf's
|
|
140
|
+
* stored `dataHash` and is used to populate the new Token Metadata
|
|
141
|
+
* account.
|
|
142
|
+
*/
|
|
145
143
|
metadata: MetadataArgs;
|
|
146
|
-
}
|
|
144
|
+
};
|
|
147
145
|
|
|
148
|
-
export
|
|
146
|
+
export type DecompressV1InstructionDataArgs = {
|
|
147
|
+
/**
|
|
148
|
+
* Metadata args of the leaf being decompressed; must match the leaf's
|
|
149
|
+
* stored `dataHash` and is used to populate the new Token Metadata
|
|
150
|
+
* account.
|
|
151
|
+
*/
|
|
149
152
|
metadata: MetadataArgsArgs;
|
|
150
|
-
}
|
|
153
|
+
};
|
|
151
154
|
|
|
152
155
|
export function getDecompressV1InstructionDataEncoder(): Encoder<DecompressV1InstructionDataArgs> {
|
|
153
156
|
return transformEncoder(
|
|
@@ -176,7 +179,7 @@ export function getDecompressV1InstructionDataCodec(): Codec<
|
|
|
176
179
|
);
|
|
177
180
|
}
|
|
178
181
|
|
|
179
|
-
export
|
|
182
|
+
export type DecompressV1AsyncInput<
|
|
180
183
|
TAccountVoucher extends string = string,
|
|
181
184
|
TAccountLeafOwner extends string = string,
|
|
182
185
|
TAccountTokenAccount extends string = string,
|
|
@@ -190,23 +193,54 @@ export interface DecompressV1AsyncInput<
|
|
|
190
193
|
TAccountTokenProgram extends string = string,
|
|
191
194
|
TAccountAssociatedTokenProgram extends string = string,
|
|
192
195
|
TAccountLogWrapper extends string = string,
|
|
193
|
-
> {
|
|
196
|
+
> = {
|
|
197
|
+
/**
|
|
198
|
+
* Voucher PDA created by `redeem`; closed by this instruction once its
|
|
199
|
+
* leaf data has been used to mint the decompressed NFT.
|
|
200
|
+
*/
|
|
194
201
|
voucher: Address<TAccountVoucher>;
|
|
202
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
195
203
|
leafOwner: TransactionSigner<TAccountLeafOwner>;
|
|
204
|
+
/** Token account that will hold the decompressed NFT for `leafOwner`. */
|
|
196
205
|
tokenAccount?: Address<TAccountTokenAccount>;
|
|
206
|
+
/** Mint account of the decompressed NFT, created fresh during decompression. */
|
|
197
207
|
mint: Address<TAccountMint>;
|
|
208
|
+
/** PDA mint authority for the decompressed NFT's mint. */
|
|
198
209
|
mintAuthority?: Address<TAccountMintAuthority>;
|
|
210
|
+
/** Metadata account created for the decompressed NFT. */
|
|
199
211
|
metadata?: Address<TAccountMetadata>;
|
|
212
|
+
/** Master edition account created for the decompressed NFT. */
|
|
200
213
|
masterEdition?: Address<TAccountMasterEdition>;
|
|
214
|
+
/** The Solana System program. */
|
|
201
215
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
216
|
+
/** The Rent sysvar. */
|
|
202
217
|
sysvarRent?: Address<TAccountSysvarRent>;
|
|
218
|
+
/**
|
|
219
|
+
* The Token Metadata program, invoked to read or (un)verify the
|
|
220
|
+
* legacy collection accounts.
|
|
221
|
+
*/
|
|
203
222
|
tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
|
|
223
|
+
/** The SPL Token program. */
|
|
204
224
|
tokenProgram?: Address<TAccountTokenProgram>;
|
|
225
|
+
/** The SPL Associated Token Account program. */
|
|
205
226
|
associatedTokenProgram?: Address<TAccountAssociatedTokenProgram>;
|
|
227
|
+
/**
|
|
228
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
229
|
+
* can reconstruct the tree.
|
|
230
|
+
*/
|
|
206
231
|
logWrapper?: Address<TAccountLogWrapper>;
|
|
207
232
|
metadataArg: DecompressV1InstructionDataArgs["metadata"];
|
|
208
|
-
}
|
|
233
|
+
};
|
|
209
234
|
|
|
235
|
+
/**
|
|
236
|
+
* Decompresses a leaf node from the tree into a regular SPL/Token
|
|
237
|
+
* Metadata NFT.
|
|
238
|
+
*
|
|
239
|
+
* Consumes the `voucher` PDA created by `redeem`, then mints a new SPL
|
|
240
|
+
* token, and creates the associated Token Metadata metadata and master
|
|
241
|
+
* edition accounts so the asset can be held and traded like any other
|
|
242
|
+
* NFT.
|
|
243
|
+
*/
|
|
210
244
|
export async function getDecompressV1InstructionAsync<
|
|
211
245
|
TAccountVoucher extends string,
|
|
212
246
|
TAccountLeafOwner extends string,
|
|
@@ -401,7 +435,7 @@ export async function getDecompressV1InstructionAsync<
|
|
|
401
435
|
>);
|
|
402
436
|
}
|
|
403
437
|
|
|
404
|
-
export
|
|
438
|
+
export type DecompressV1Input<
|
|
405
439
|
TAccountVoucher extends string = string,
|
|
406
440
|
TAccountLeafOwner extends string = string,
|
|
407
441
|
TAccountTokenAccount extends string = string,
|
|
@@ -415,23 +449,54 @@ export interface DecompressV1Input<
|
|
|
415
449
|
TAccountTokenProgram extends string = string,
|
|
416
450
|
TAccountAssociatedTokenProgram extends string = string,
|
|
417
451
|
TAccountLogWrapper extends string = string,
|
|
418
|
-
> {
|
|
452
|
+
> = {
|
|
453
|
+
/**
|
|
454
|
+
* Voucher PDA created by `redeem`; closed by this instruction once its
|
|
455
|
+
* leaf data has been used to mint the decompressed NFT.
|
|
456
|
+
*/
|
|
419
457
|
voucher: Address<TAccountVoucher>;
|
|
458
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
420
459
|
leafOwner: TransactionSigner<TAccountLeafOwner>;
|
|
460
|
+
/** Token account that will hold the decompressed NFT for `leafOwner`. */
|
|
421
461
|
tokenAccount: Address<TAccountTokenAccount>;
|
|
462
|
+
/** Mint account of the decompressed NFT, created fresh during decompression. */
|
|
422
463
|
mint: Address<TAccountMint>;
|
|
464
|
+
/** PDA mint authority for the decompressed NFT's mint. */
|
|
423
465
|
mintAuthority: Address<TAccountMintAuthority>;
|
|
466
|
+
/** Metadata account created for the decompressed NFT. */
|
|
424
467
|
metadata: Address<TAccountMetadata>;
|
|
468
|
+
/** Master edition account created for the decompressed NFT. */
|
|
425
469
|
masterEdition: Address<TAccountMasterEdition>;
|
|
470
|
+
/** The Solana System program. */
|
|
426
471
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
472
|
+
/** The Rent sysvar. */
|
|
427
473
|
sysvarRent?: Address<TAccountSysvarRent>;
|
|
474
|
+
/**
|
|
475
|
+
* The Token Metadata program, invoked to read or (un)verify the
|
|
476
|
+
* legacy collection accounts.
|
|
477
|
+
*/
|
|
428
478
|
tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
|
|
479
|
+
/** The SPL Token program. */
|
|
429
480
|
tokenProgram?: Address<TAccountTokenProgram>;
|
|
481
|
+
/** The SPL Associated Token Account program. */
|
|
430
482
|
associatedTokenProgram?: Address<TAccountAssociatedTokenProgram>;
|
|
483
|
+
/**
|
|
484
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
485
|
+
* can reconstruct the tree.
|
|
486
|
+
*/
|
|
431
487
|
logWrapper?: Address<TAccountLogWrapper>;
|
|
432
488
|
metadataArg: DecompressV1InstructionDataArgs["metadata"];
|
|
433
|
-
}
|
|
489
|
+
};
|
|
434
490
|
|
|
491
|
+
/**
|
|
492
|
+
* Decompresses a leaf node from the tree into a regular SPL/Token
|
|
493
|
+
* Metadata NFT.
|
|
494
|
+
*
|
|
495
|
+
* Consumes the `voucher` PDA created by `redeem`, then mints a new SPL
|
|
496
|
+
* token, and creates the associated Token Metadata metadata and master
|
|
497
|
+
* edition accounts so the asset can be held and traded like any other
|
|
498
|
+
* NFT.
|
|
499
|
+
*/
|
|
435
500
|
export function getDecompressV1Instruction<
|
|
436
501
|
TAccountVoucher extends string,
|
|
437
502
|
TAccountLeafOwner extends string,
|
|
@@ -578,28 +643,50 @@ export function getDecompressV1Instruction<
|
|
|
578
643
|
>);
|
|
579
644
|
}
|
|
580
645
|
|
|
581
|
-
export
|
|
646
|
+
export type ParsedDecompressV1Instruction<
|
|
582
647
|
TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
583
648
|
TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],
|
|
584
|
-
> {
|
|
649
|
+
> = {
|
|
585
650
|
programAddress: Address<TProgram>;
|
|
586
651
|
accounts: {
|
|
652
|
+
/**
|
|
653
|
+
* Voucher PDA created by `redeem`; closed by this instruction once its
|
|
654
|
+
* leaf data has been used to mint the decompressed NFT.
|
|
655
|
+
*/
|
|
587
656
|
voucher: TAccountMetas[0];
|
|
657
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
588
658
|
leafOwner: TAccountMetas[1];
|
|
659
|
+
/** Token account that will hold the decompressed NFT for `leafOwner`. */
|
|
589
660
|
tokenAccount: TAccountMetas[2];
|
|
661
|
+
/** Mint account of the decompressed NFT, created fresh during decompression. */
|
|
590
662
|
mint: TAccountMetas[3];
|
|
663
|
+
/** PDA mint authority for the decompressed NFT's mint. */
|
|
591
664
|
mintAuthority: TAccountMetas[4];
|
|
665
|
+
/** Metadata account created for the decompressed NFT. */
|
|
592
666
|
metadata: TAccountMetas[5];
|
|
667
|
+
/** Master edition account created for the decompressed NFT. */
|
|
593
668
|
masterEdition: TAccountMetas[6];
|
|
669
|
+
/** The Solana System program. */
|
|
594
670
|
systemProgram: TAccountMetas[7];
|
|
671
|
+
/** The Rent sysvar. */
|
|
595
672
|
sysvarRent: TAccountMetas[8];
|
|
673
|
+
/**
|
|
674
|
+
* The Token Metadata program, invoked to read or (un)verify the
|
|
675
|
+
* legacy collection accounts.
|
|
676
|
+
*/
|
|
596
677
|
tokenMetadataProgram: TAccountMetas[9];
|
|
678
|
+
/** The SPL Token program. */
|
|
597
679
|
tokenProgram: TAccountMetas[10];
|
|
680
|
+
/** The SPL Associated Token Account program. */
|
|
598
681
|
associatedTokenProgram: TAccountMetas[11];
|
|
682
|
+
/**
|
|
683
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
684
|
+
* can reconstruct the tree.
|
|
685
|
+
*/
|
|
599
686
|
logWrapper: TAccountMetas[12];
|
|
600
687
|
};
|
|
601
688
|
data: DecompressV1InstructionData;
|
|
602
|
-
}
|
|
689
|
+
};
|
|
603
690
|
|
|
604
691
|
export function parseDecompressV1Instruction<
|
|
605
692
|
TProgram extends string,
|
|
@@ -6,23 +6,6 @@
|
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import type {
|
|
10
|
-
AccountMeta,
|
|
11
|
-
AccountSignerMeta,
|
|
12
|
-
Address,
|
|
13
|
-
FixedSizeCodec,
|
|
14
|
-
FixedSizeDecoder,
|
|
15
|
-
FixedSizeEncoder,
|
|
16
|
-
Instruction,
|
|
17
|
-
InstructionWithAccounts,
|
|
18
|
-
InstructionWithData,
|
|
19
|
-
ReadonlyAccount,
|
|
20
|
-
ReadonlySignerAccount,
|
|
21
|
-
ReadonlyUint8Array,
|
|
22
|
-
TransactionSigner,
|
|
23
|
-
WritableAccount,
|
|
24
|
-
} from "@solana/kit";
|
|
25
|
-
import type { ResolvedInstructionAccount } from "@solana/program-client-core";
|
|
26
9
|
import {
|
|
27
10
|
combineCodec,
|
|
28
11
|
fixDecoderSize,
|
|
@@ -33,19 +16,34 @@ import {
|
|
|
33
16
|
getBytesEncoder,
|
|
34
17
|
getStructDecoder,
|
|
35
18
|
getStructEncoder,
|
|
36
|
-
getU8Decoder,
|
|
37
|
-
getU8Encoder,
|
|
38
19
|
getU32Decoder,
|
|
39
20
|
getU32Encoder,
|
|
40
21
|
getU64Decoder,
|
|
41
22
|
getU64Encoder,
|
|
23
|
+
getU8Decoder,
|
|
24
|
+
getU8Encoder,
|
|
42
25
|
SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,
|
|
43
26
|
SolanaError,
|
|
44
27
|
transformEncoder,
|
|
28
|
+
type AccountMeta,
|
|
29
|
+
type AccountSignerMeta,
|
|
30
|
+
type Address,
|
|
31
|
+
type FixedSizeCodec,
|
|
32
|
+
type FixedSizeDecoder,
|
|
33
|
+
type FixedSizeEncoder,
|
|
34
|
+
type Instruction,
|
|
35
|
+
type InstructionWithAccounts,
|
|
36
|
+
type InstructionWithData,
|
|
37
|
+
type ReadonlyAccount,
|
|
38
|
+
type ReadonlySignerAccount,
|
|
39
|
+
type ReadonlyUint8Array,
|
|
40
|
+
type TransactionSigner,
|
|
41
|
+
type WritableAccount,
|
|
45
42
|
} from "@solana/kit";
|
|
46
43
|
import {
|
|
47
44
|
getAccountMetaFactory,
|
|
48
45
|
getAddressFromResolvedInstructionAccount,
|
|
46
|
+
type ResolvedInstructionAccount,
|
|
49
47
|
} from "@solana/program-client-core";
|
|
50
48
|
import { findTreeConfigPda } from "../pdas/index.js";
|
|
51
49
|
import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
@@ -65,15 +63,12 @@ export type DelegateInstruction<
|
|
|
65
63
|
TAccountPreviousLeafDelegate extends string | AccountMeta<string> = string,
|
|
66
64
|
TAccountNewLeafDelegate extends string | AccountMeta<string> = string,
|
|
67
65
|
TAccountMerkleTree extends string | AccountMeta<string> = string,
|
|
68
|
-
TAccountLogWrapper extends
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
TAccountSystemProgram extends
|
|
75
|
-
| string
|
|
76
|
-
| AccountMeta<string> = "11111111111111111111111111111111",
|
|
66
|
+
TAccountLogWrapper extends string | AccountMeta<string> =
|
|
67
|
+
"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
|
|
68
|
+
TAccountCompressionProgram extends string | AccountMeta<string> =
|
|
69
|
+
"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK",
|
|
70
|
+
TAccountSystemProgram extends string | AccountMeta<string> =
|
|
71
|
+
"11111111111111111111111111111111",
|
|
77
72
|
TRemainingAccounts extends readonly AccountMeta<string>[] = [],
|
|
78
73
|
> = Instruction<TProgram> &
|
|
79
74
|
InstructionWithData<ReadonlyUint8Array> &
|
|
@@ -108,22 +103,64 @@ export type DelegateInstruction<
|
|
|
108
103
|
]
|
|
109
104
|
>;
|
|
110
105
|
|
|
111
|
-
export
|
|
106
|
+
export type DelegateInstructionData = {
|
|
112
107
|
discriminator: ReadonlyUint8Array;
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
108
|
+
/**
|
|
109
|
+
* Current Merkle root of the tree, used together with the Merkle proof
|
|
110
|
+
* (passed as remaining accounts) to verify the leaf being operated on.
|
|
111
|
+
*/
|
|
112
|
+
root: Array<number>;
|
|
113
|
+
/**
|
|
114
|
+
* Keccak256 hash of the leaf's metadata, used together with `root` to
|
|
115
|
+
* verify the leaf before it is modified.
|
|
116
|
+
*/
|
|
117
|
+
dataHash: Array<number>;
|
|
118
|
+
/**
|
|
119
|
+
* Keccak256 hash of the leaf's creators array, used together with
|
|
120
|
+
* `root` to verify the leaf before it is modified.
|
|
121
|
+
*/
|
|
122
|
+
creatorHash: Array<number>;
|
|
123
|
+
/**
|
|
124
|
+
* Tree-scoped nonce identifying the leaf, equal to the tree's
|
|
125
|
+
* `numMinted` at the time the leaf was minted. Combined with the tree
|
|
126
|
+
* address to derive the leaf's asset id.
|
|
127
|
+
*/
|
|
116
128
|
nonce: bigint;
|
|
129
|
+
/**
|
|
130
|
+
* Position of the leaf within the Merkle tree, used with the Merkle
|
|
131
|
+
* proof to locate and verify the leaf.
|
|
132
|
+
*/
|
|
117
133
|
index: number;
|
|
118
|
-
}
|
|
134
|
+
};
|
|
119
135
|
|
|
120
|
-
export
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
136
|
+
export type DelegateInstructionDataArgs = {
|
|
137
|
+
/**
|
|
138
|
+
* Current Merkle root of the tree, used together with the Merkle proof
|
|
139
|
+
* (passed as remaining accounts) to verify the leaf being operated on.
|
|
140
|
+
*/
|
|
141
|
+
root: Array<number>;
|
|
142
|
+
/**
|
|
143
|
+
* Keccak256 hash of the leaf's metadata, used together with `root` to
|
|
144
|
+
* verify the leaf before it is modified.
|
|
145
|
+
*/
|
|
146
|
+
dataHash: Array<number>;
|
|
147
|
+
/**
|
|
148
|
+
* Keccak256 hash of the leaf's creators array, used together with
|
|
149
|
+
* `root` to verify the leaf before it is modified.
|
|
150
|
+
*/
|
|
151
|
+
creatorHash: Array<number>;
|
|
152
|
+
/**
|
|
153
|
+
* Tree-scoped nonce identifying the leaf, equal to the tree's
|
|
154
|
+
* `numMinted` at the time the leaf was minted. Combined with the tree
|
|
155
|
+
* address to derive the leaf's asset id.
|
|
156
|
+
*/
|
|
124
157
|
nonce: number | bigint;
|
|
158
|
+
/**
|
|
159
|
+
* Position of the leaf within the Merkle tree, used with the Merkle
|
|
160
|
+
* proof to locate and verify the leaf.
|
|
161
|
+
*/
|
|
125
162
|
index: number;
|
|
126
|
-
}
|
|
163
|
+
};
|
|
127
164
|
|
|
128
165
|
export function getDelegateInstructionDataEncoder(): FixedSizeEncoder<DelegateInstructionDataArgs> {
|
|
129
166
|
return transformEncoder(
|
|
@@ -160,7 +197,7 @@ export function getDelegateInstructionDataCodec(): FixedSizeCodec<
|
|
|
160
197
|
);
|
|
161
198
|
}
|
|
162
199
|
|
|
163
|
-
export
|
|
200
|
+
export type DelegateAsyncInput<
|
|
164
201
|
TAccountTreeAuthority extends string = string,
|
|
165
202
|
TAccountLeafOwner extends string = string,
|
|
166
203
|
TAccountPreviousLeafDelegate extends string = string,
|
|
@@ -169,22 +206,51 @@ export interface DelegateAsyncInput<
|
|
|
169
206
|
TAccountLogWrapper extends string = string,
|
|
170
207
|
TAccountCompressionProgram extends string = string,
|
|
171
208
|
TAccountSystemProgram extends string = string,
|
|
172
|
-
> {
|
|
209
|
+
> = {
|
|
210
|
+
/**
|
|
211
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
212
|
+
* as the tree's authority for CPIs into the compression program.
|
|
213
|
+
*/
|
|
173
214
|
treeAuthority?: Address<TAccountTreeAuthority>;
|
|
215
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
174
216
|
leafOwner: TransactionSigner<TAccountLeafOwner>;
|
|
217
|
+
/** The leaf's delegate before this instruction runs. */
|
|
175
218
|
previousLeafDelegate: Address<TAccountPreviousLeafDelegate>;
|
|
219
|
+
/**
|
|
220
|
+
* Delegate to set on the leaf; pass the leaf owner to clear an
|
|
221
|
+
* existing delegate.
|
|
222
|
+
*/
|
|
176
223
|
newLeafDelegate: Address<TAccountNewLeafDelegate>;
|
|
224
|
+
/**
|
|
225
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
226
|
+
* owned by the account compression program.
|
|
227
|
+
*/
|
|
177
228
|
merkleTree: Address<TAccountMerkleTree>;
|
|
229
|
+
/**
|
|
230
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
231
|
+
* can reconstruct the tree.
|
|
232
|
+
*/
|
|
178
233
|
logWrapper?: Address<TAccountLogWrapper>;
|
|
234
|
+
/**
|
|
235
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
236
|
+
* Merkle tree.
|
|
237
|
+
*/
|
|
179
238
|
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
239
|
+
/** The Solana System program. */
|
|
180
240
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
181
241
|
root: DelegateInstructionDataArgs["root"];
|
|
182
242
|
dataHash: DelegateInstructionDataArgs["dataHash"];
|
|
183
243
|
creatorHash: DelegateInstructionDataArgs["creatorHash"];
|
|
184
244
|
nonce: DelegateInstructionDataArgs["nonce"];
|
|
185
245
|
index: DelegateInstructionDataArgs["index"];
|
|
186
|
-
}
|
|
246
|
+
};
|
|
187
247
|
|
|
248
|
+
/**
|
|
249
|
+
* Sets (or clears) the delegate authority for a compressed NFT leaf.
|
|
250
|
+
*
|
|
251
|
+
* The delegate may transfer or burn the leaf on the owner's behalf.
|
|
252
|
+
* Pass the leaf owner as `newLeafDelegate` to clear an existing delegate.
|
|
253
|
+
*/
|
|
188
254
|
export async function getDelegateInstructionAsync<
|
|
189
255
|
TAccountTreeAuthority extends string,
|
|
190
256
|
TAccountLeafOwner extends string,
|
|
@@ -302,7 +368,7 @@ export async function getDelegateInstructionAsync<
|
|
|
302
368
|
>);
|
|
303
369
|
}
|
|
304
370
|
|
|
305
|
-
export
|
|
371
|
+
export type DelegateInput<
|
|
306
372
|
TAccountTreeAuthority extends string = string,
|
|
307
373
|
TAccountLeafOwner extends string = string,
|
|
308
374
|
TAccountPreviousLeafDelegate extends string = string,
|
|
@@ -311,22 +377,51 @@ export interface DelegateInput<
|
|
|
311
377
|
TAccountLogWrapper extends string = string,
|
|
312
378
|
TAccountCompressionProgram extends string = string,
|
|
313
379
|
TAccountSystemProgram extends string = string,
|
|
314
|
-
> {
|
|
380
|
+
> = {
|
|
381
|
+
/**
|
|
382
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
383
|
+
* as the tree's authority for CPIs into the compression program.
|
|
384
|
+
*/
|
|
315
385
|
treeAuthority: Address<TAccountTreeAuthority>;
|
|
386
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
316
387
|
leafOwner: TransactionSigner<TAccountLeafOwner>;
|
|
388
|
+
/** The leaf's delegate before this instruction runs. */
|
|
317
389
|
previousLeafDelegate: Address<TAccountPreviousLeafDelegate>;
|
|
390
|
+
/**
|
|
391
|
+
* Delegate to set on the leaf; pass the leaf owner to clear an
|
|
392
|
+
* existing delegate.
|
|
393
|
+
*/
|
|
318
394
|
newLeafDelegate: Address<TAccountNewLeafDelegate>;
|
|
395
|
+
/**
|
|
396
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
397
|
+
* owned by the account compression program.
|
|
398
|
+
*/
|
|
319
399
|
merkleTree: Address<TAccountMerkleTree>;
|
|
400
|
+
/**
|
|
401
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
402
|
+
* can reconstruct the tree.
|
|
403
|
+
*/
|
|
320
404
|
logWrapper?: Address<TAccountLogWrapper>;
|
|
405
|
+
/**
|
|
406
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
407
|
+
* Merkle tree.
|
|
408
|
+
*/
|
|
321
409
|
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
410
|
+
/** The Solana System program. */
|
|
322
411
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
323
412
|
root: DelegateInstructionDataArgs["root"];
|
|
324
413
|
dataHash: DelegateInstructionDataArgs["dataHash"];
|
|
325
414
|
creatorHash: DelegateInstructionDataArgs["creatorHash"];
|
|
326
415
|
nonce: DelegateInstructionDataArgs["nonce"];
|
|
327
416
|
index: DelegateInstructionDataArgs["index"];
|
|
328
|
-
}
|
|
417
|
+
};
|
|
329
418
|
|
|
419
|
+
/**
|
|
420
|
+
* Sets (or clears) the delegate authority for a compressed NFT leaf.
|
|
421
|
+
*
|
|
422
|
+
* The delegate may transfer or burn the leaf on the owner's behalf.
|
|
423
|
+
* Pass the leaf owner as `newLeafDelegate` to clear an existing delegate.
|
|
424
|
+
*/
|
|
330
425
|
export function getDelegateInstruction<
|
|
331
426
|
TAccountTreeAuthority extends string,
|
|
332
427
|
TAccountLeafOwner extends string,
|
|
@@ -434,23 +529,46 @@ export function getDelegateInstruction<
|
|
|
434
529
|
>);
|
|
435
530
|
}
|
|
436
531
|
|
|
437
|
-
export
|
|
532
|
+
export type ParsedDelegateInstruction<
|
|
438
533
|
TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
439
534
|
TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],
|
|
440
|
-
> {
|
|
535
|
+
> = {
|
|
441
536
|
programAddress: Address<TProgram>;
|
|
442
537
|
accounts: {
|
|
538
|
+
/**
|
|
539
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
540
|
+
* as the tree's authority for CPIs into the compression program.
|
|
541
|
+
*/
|
|
443
542
|
treeAuthority: TAccountMetas[0];
|
|
543
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
444
544
|
leafOwner: TAccountMetas[1];
|
|
545
|
+
/** The leaf's delegate before this instruction runs. */
|
|
445
546
|
previousLeafDelegate: TAccountMetas[2];
|
|
547
|
+
/**
|
|
548
|
+
* Delegate to set on the leaf; pass the leaf owner to clear an
|
|
549
|
+
* existing delegate.
|
|
550
|
+
*/
|
|
446
551
|
newLeafDelegate: TAccountMetas[3];
|
|
552
|
+
/**
|
|
553
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
554
|
+
* owned by the account compression program.
|
|
555
|
+
*/
|
|
447
556
|
merkleTree: TAccountMetas[4];
|
|
557
|
+
/**
|
|
558
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
559
|
+
* can reconstruct the tree.
|
|
560
|
+
*/
|
|
448
561
|
logWrapper: TAccountMetas[5];
|
|
562
|
+
/**
|
|
563
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
564
|
+
* Merkle tree.
|
|
565
|
+
*/
|
|
449
566
|
compressionProgram: TAccountMetas[6];
|
|
567
|
+
/** The Solana System program. */
|
|
450
568
|
systemProgram: TAccountMetas[7];
|
|
451
569
|
};
|
|
452
570
|
data: DelegateInstructionData;
|
|
453
|
-
}
|
|
571
|
+
};
|
|
454
572
|
|
|
455
573
|
export function parseDelegateInstruction<
|
|
456
574
|
TProgram extends string,
|