@hyperlane-xyz/sealevel-sdk 27.0.0
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/LICENSE.md +193 -0
- package/dist/accounts/mint.d.ts +43 -0
- package/dist/accounts/mint.d.ts.map +1 -0
- package/dist/accounts/mint.js +159 -0
- package/dist/accounts/mint.js.map +1 -0
- package/dist/accounts/multisig-ism-message-id.d.ts +14 -0
- package/dist/accounts/multisig-ism-message-id.d.ts.map +1 -0
- package/dist/accounts/multisig-ism-message-id.js +32 -0
- package/dist/accounts/multisig-ism-message-id.js.map +1 -0
- package/dist/accounts/test-ism.d.ts +5 -0
- package/dist/accounts/test-ism.d.ts.map +1 -0
- package/dist/accounts/test-ism.js +8 -0
- package/dist/accounts/test-ism.js.map +1 -0
- package/dist/accounts/token.d.ts +60 -0
- package/dist/accounts/token.d.ts.map +1 -0
- package/dist/accounts/token.js +127 -0
- package/dist/accounts/token.js.map +1 -0
- package/dist/clients/protocol.d.ts +21 -0
- package/dist/clients/protocol.d.ts.map +1 -0
- package/dist/clients/protocol.js +51 -0
- package/dist/clients/protocol.js.map +1 -0
- package/dist/clients/provider.d.ts +66 -0
- package/dist/clients/provider.d.ts.map +1 -0
- package/dist/clients/provider.js +237 -0
- package/dist/clients/provider.js.map +1 -0
- package/dist/clients/signer.d.ts +61 -0
- package/dist/clients/signer.d.ts.map +1 -0
- package/dist/clients/signer.js +314 -0
- package/dist/clients/signer.js.map +1 -0
- package/dist/codecs/account-data.d.ts +8 -0
- package/dist/codecs/account-data.d.ts.map +1 -0
- package/dist/codecs/account-data.js +20 -0
- package/dist/codecs/account-data.js.map +1 -0
- package/dist/codecs/binary.d.ts +34 -0
- package/dist/codecs/binary.d.ts.map +1 -0
- package/dist/codecs/binary.js +165 -0
- package/dist/codecs/binary.js.map +1 -0
- package/dist/codecs/shared.d.ts +81 -0
- package/dist/codecs/shared.d.ts.map +1 -0
- package/dist/codecs/shared.js +241 -0
- package/dist/codecs/shared.js.map +1 -0
- package/dist/constants.d.ts +13 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +21 -0
- package/dist/constants.js.map +1 -0
- package/dist/deploy/program-deployer.d.ts +51 -0
- package/dist/deploy/program-deployer.d.ts.map +1 -0
- package/dist/deploy/program-deployer.js +176 -0
- package/dist/deploy/program-deployer.js.map +1 -0
- package/dist/deploy/resolve-program.d.ts +9 -0
- package/dist/deploy/resolve-program.d.ts.map +1 -0
- package/dist/deploy/resolve-program.js +24 -0
- package/dist/deploy/resolve-program.js.map +1 -0
- package/dist/generated/core-addresses.d.ts +14 -0
- package/dist/generated/core-addresses.d.ts.map +1 -0
- package/dist/generated/core-addresses.js +55 -0
- package/dist/generated/core-addresses.js.map +1 -0
- package/dist/hook/hook-artifact-manager.d.ts +17 -0
- package/dist/hook/hook-artifact-manager.d.ts.map +1 -0
- package/dist/hook/hook-artifact-manager.js +58 -0
- package/dist/hook/hook-artifact-manager.js.map +1 -0
- package/dist/hook/hook-query.d.ts +25 -0
- package/dist/hook/hook-query.d.ts.map +1 -0
- package/dist/hook/hook-query.js +46 -0
- package/dist/hook/hook-query.js.map +1 -0
- package/dist/hook/igp-hook.d.ts +28 -0
- package/dist/hook/igp-hook.d.ts.map +1 -0
- package/dist/hook/igp-hook.js +242 -0
- package/dist/hook/igp-hook.js.map +1 -0
- package/dist/hook/merkle-tree-hook.d.ts +23 -0
- package/dist/hook/merkle-tree-hook.d.ts.map +1 -0
- package/dist/hook/merkle-tree-hook.js +46 -0
- package/dist/hook/merkle-tree-hook.js.map +1 -0
- package/dist/hyperlane/program-bytes.d.ts +20 -0
- package/dist/hyperlane/program-bytes.d.ts.map +1 -0
- package/dist/hyperlane/program-bytes.js +80534 -0
- package/dist/hyperlane/program-bytes.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/instructions/igp.d.ts +66 -0
- package/dist/instructions/igp.d.ts.map +1 -0
- package/dist/instructions/igp.js +168 -0
- package/dist/instructions/igp.js.map +1 -0
- package/dist/instructions/interfaces.d.ts +52 -0
- package/dist/instructions/interfaces.d.ts.map +1 -0
- package/dist/instructions/interfaces.js +126 -0
- package/dist/instructions/interfaces.js.map +1 -0
- package/dist/instructions/loader.d.ts +11 -0
- package/dist/instructions/loader.d.ts.map +1 -0
- package/dist/instructions/loader.js +24 -0
- package/dist/instructions/loader.js.map +1 -0
- package/dist/instructions/multisig-ism-message-id.d.ts +32 -0
- package/dist/instructions/multisig-ism-message-id.d.ts.map +1 -0
- package/dist/instructions/multisig-ism-message-id.js +105 -0
- package/dist/instructions/multisig-ism-message-id.js.map +1 -0
- package/dist/instructions/test-ism.d.ts +16 -0
- package/dist/instructions/test-ism.d.ts.map +1 -0
- package/dist/instructions/test-ism.js +47 -0
- package/dist/instructions/test-ism.js.map +1 -0
- package/dist/instructions/token.d.ts +62 -0
- package/dist/instructions/token.d.ts.map +1 -0
- package/dist/instructions/token.js +257 -0
- package/dist/instructions/token.js.map +1 -0
- package/dist/instructions/utils.d.ts +19 -0
- package/dist/instructions/utils.d.ts.map +1 -0
- package/dist/instructions/utils.js +36 -0
- package/dist/instructions/utils.js.map +1 -0
- package/dist/ism/ism-artifact-manager.d.ts +14 -0
- package/dist/ism/ism-artifact-manager.d.ts.map +1 -0
- package/dist/ism/ism-artifact-manager.js +49 -0
- package/dist/ism/ism-artifact-manager.js.map +1 -0
- package/dist/ism/ism-query.d.ts +22 -0
- package/dist/ism/ism-query.d.ts.map +1 -0
- package/dist/ism/ism-query.js +53 -0
- package/dist/ism/ism-query.js.map +1 -0
- package/dist/ism/multisig-ism.d.ts +33 -0
- package/dist/ism/multisig-ism.d.ts.map +1 -0
- package/dist/ism/multisig-ism.js +113 -0
- package/dist/ism/multisig-ism.js.map +1 -0
- package/dist/ism/test-ism.d.ts +20 -0
- package/dist/ism/test-ism.d.ts.map +1 -0
- package/dist/ism/test-ism.js +57 -0
- package/dist/ism/test-ism.js.map +1 -0
- package/dist/pda.d.ts +17 -0
- package/dist/pda.d.ts.map +1 -0
- package/dist/pda.js +118 -0
- package/dist/pda.js.map +1 -0
- package/dist/rpc.d.ts +9 -0
- package/dist/rpc.d.ts.map +1 -0
- package/dist/rpc.js +21 -0
- package/dist/rpc.js.map +1 -0
- package/dist/testing/index.d.ts +3 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +3 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/setup.d.ts +33 -0
- package/dist/testing/setup.d.ts.map +1 -0
- package/dist/testing/setup.js +120 -0
- package/dist/testing/setup.js.map +1 -0
- package/dist/testing/solana-container.d.ts +32 -0
- package/dist/testing/solana-container.d.ts.map +1 -0
- package/dist/testing/solana-container.js +289 -0
- package/dist/testing/solana-container.js.map +1 -0
- package/dist/tests/collateral-token.e2e-test.d.ts +2 -0
- package/dist/tests/collateral-token.e2e-test.d.ts.map +1 -0
- package/dist/tests/collateral-token.e2e-test.js +112 -0
- package/dist/tests/collateral-token.e2e-test.js.map +1 -0
- package/dist/tests/deploy.e2e-test.d.ts +2 -0
- package/dist/tests/deploy.e2e-test.d.ts.map +1 -0
- package/dist/tests/deploy.e2e-test.js +76 -0
- package/dist/tests/deploy.e2e-test.js.map +1 -0
- package/dist/tests/hook.e2e-test.d.ts +2 -0
- package/dist/tests/hook.e2e-test.d.ts.map +1 -0
- package/dist/tests/hook.e2e-test.js +176 -0
- package/dist/tests/hook.e2e-test.js.map +1 -0
- package/dist/tests/ism.e2e-test.d.ts +2 -0
- package/dist/tests/ism.e2e-test.d.ts.map +1 -0
- package/dist/tests/ism.e2e-test.js +167 -0
- package/dist/tests/ism.e2e-test.js.map +1 -0
- package/dist/tests/native-token.e2e-test.d.ts +2 -0
- package/dist/tests/native-token.e2e-test.d.ts.map +1 -0
- package/dist/tests/native-token.e2e-test.js +93 -0
- package/dist/tests/native-token.e2e-test.js.map +1 -0
- package/dist/tests/provider.e2e-test.d.ts +2 -0
- package/dist/tests/provider.e2e-test.d.ts.map +1 -0
- package/dist/tests/provider.e2e-test.js +87 -0
- package/dist/tests/provider.e2e-test.js.map +1 -0
- package/dist/tests/read-token.e2e-test.d.ts +2 -0
- package/dist/tests/read-token.e2e-test.d.ts.map +1 -0
- package/dist/tests/read-token.e2e-test.js +79 -0
- package/dist/tests/read-token.e2e-test.js.map +1 -0
- package/dist/tests/scale.unit-test.d.ts +2 -0
- package/dist/tests/scale.unit-test.d.ts.map +1 -0
- package/dist/tests/scale.unit-test.js +65 -0
- package/dist/tests/scale.unit-test.js.map +1 -0
- package/dist/tests/synthetic-token.e2e-test.d.ts +2 -0
- package/dist/tests/synthetic-token.e2e-test.d.ts.map +1 -0
- package/dist/tests/synthetic-token.e2e-test.js +115 -0
- package/dist/tests/synthetic-token.e2e-test.js.map +1 -0
- package/dist/tests/warp-token-suite.d.ts +26 -0
- package/dist/tests/warp-token-suite.d.ts.map +1 -0
- package/dist/tests/warp-token-suite.js +208 -0
- package/dist/tests/warp-token-suite.js.map +1 -0
- package/dist/tx.d.ts +23 -0
- package/dist/tx.d.ts.map +1 -0
- package/dist/tx.js +43 -0
- package/dist/tx.js.map +1 -0
- package/dist/types.d.ts +50 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/warp/collateral-token.d.ts +21 -0
- package/dist/warp/collateral-token.d.ts.map +1 -0
- package/dist/warp/collateral-token.js +129 -0
- package/dist/warp/collateral-token.js.map +1 -0
- package/dist/warp/native-token.d.ts +21 -0
- package/dist/warp/native-token.d.ts.map +1 -0
- package/dist/warp/native-token.js +99 -0
- package/dist/warp/native-token.js.map +1 -0
- package/dist/warp/synthetic-token.d.ts +21 -0
- package/dist/warp/synthetic-token.d.ts.map +1 -0
- package/dist/warp/synthetic-token.js +180 -0
- package/dist/warp/synthetic-token.js.map +1 -0
- package/dist/warp/types.d.ts +16 -0
- package/dist/warp/types.d.ts.map +1 -0
- package/dist/warp/types.js +2 -0
- package/dist/warp/types.js.map +1 -0
- package/dist/warp/warp-artifact-manager.d.ts +14 -0
- package/dist/warp/warp-artifact-manager.d.ts.map +1 -0
- package/dist/warp/warp-artifact-manager.js +52 -0
- package/dist/warp/warp-artifact-manager.js.map +1 -0
- package/dist/warp/warp-query.d.ts +30 -0
- package/dist/warp/warp-query.d.ts.map +1 -0
- package/dist/warp/warp-query.js +66 -0
- package/dist/warp/warp-query.js.map +1 -0
- package/dist/warp/warp-tx.d.ts +64 -0
- package/dist/warp/warp-tx.d.ts.map +1 -0
- package/dist/warp/warp-tx.js +291 -0
- package/dist/warp/warp-tx.js.map +1 -0
- package/package.json +76 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export { SvmProvider as SealevelProvider } from './clients/provider.js';
|
|
2
|
+
export { SvmSigner as SealevelSigner } from './clients/signer.js';
|
|
3
|
+
export { SvmProtocolProvider as SealevelProtocolProvider } from './clients/protocol.js';
|
|
4
|
+
export type { SvmInstruction as SealevelInstruction, SvmRpc as SealevelRpc, SvmTransaction as SealevelTransaction, SvmReceipt as SealevelReceipt, AnnotatedSvmTransaction as AnnotatedSealevelTransaction, SvmProgramTarget as SealevelProgramTarget, SvmDeployedIsm as SealevelDeployedIsm, SvmDeployedHook as SealevelDeployedHook, SvmDeployedIgpHook as SealevelDeployedIgpHook, } from './types.js';
|
|
5
|
+
export type { SolanaRpcClient } from './rpc.js';
|
|
6
|
+
export { createRpc } from './rpc.js';
|
|
7
|
+
export { SvmIsmArtifactManager as SealevelIsmArtifactManager } from './ism/ism-artifact-manager.js';
|
|
8
|
+
export { SvmHookArtifactManager as SealevelHookArtifactManager } from './hook/hook-artifact-manager.js';
|
|
9
|
+
export { SvmMessageIdMultisigIsmReader as SealevelMessageIdMultisigIsmReader, SvmMessageIdMultisigIsmWriter as SealevelMessageIdMultisigIsmWriter, } from './ism/multisig-ism.js';
|
|
10
|
+
export { SvmTestIsmReader as SealevelTestIsmReader, SvmTestIsmWriter as SealevelTestIsmWriter, } from './ism/test-ism.js';
|
|
11
|
+
export { SvmIgpHookReader as SealevelIgpHookReader, SvmIgpHookWriter as SealevelIgpHookWriter, } from './hook/igp-hook.js';
|
|
12
|
+
export { SvmMerkleTreeHookReader as SealevelMerkleTreeHookReader, SvmMerkleTreeHookWriter as SealevelMerkleTreeHookWriter, } from './hook/merkle-tree-hook.js';
|
|
13
|
+
export { createDeployProgramPlan, createUpgradeProgramPlan, executeDeployPlan, } from './deploy/program-deployer.js';
|
|
14
|
+
export type { DeployProgramPlan, DeployStage, DeployProgramPlanArgs, UpgradeProgramPlanArgs, } from './deploy/program-deployer.js';
|
|
15
|
+
export { resolveProgram } from './deploy/resolve-program.js';
|
|
16
|
+
export { getComputeBudgetInstructions, buildTransactionMessage } from './tx.js';
|
|
17
|
+
export { deriveMultisigIsmAccessControlPda, deriveMultisigIsmDomainDataPda, deriveTestIsmStoragePda, deriveHyperlaneTokenPda, deriveAtaPayerPda, deriveIgpProgramDataPda, deriveIgpAccountPda, deriveOverheadIgpAccountPda, } from './pda.js';
|
|
18
|
+
export { decodeHyperlaneTokenAccount, decodeIgpProgramDataAccount, decodeIgpAccount, decodeOverheadIgpAccount, } from './accounts/token.js';
|
|
19
|
+
export { decodeMultisigIsmAccessControlAccount, decodeMultisigIsmDomainDataAccount, } from './accounts/multisig-ism-message-id.js';
|
|
20
|
+
export { decodeTestIsmStorageAccount } from './accounts/test-ism.js';
|
|
21
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,mBAAmB,IAAI,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAGxF,YAAY,EACV,cAAc,IAAI,mBAAmB,EACrC,MAAM,IAAI,WAAW,EACrB,cAAc,IAAI,mBAAmB,EACrC,UAAU,IAAI,eAAe,EAC7B,uBAAuB,IAAI,4BAA4B,EACvD,gBAAgB,IAAI,qBAAqB,EACzC,cAAc,IAAI,mBAAmB,EACrC,eAAe,IAAI,oBAAoB,EACvC,kBAAkB,IAAI,uBAAuB,GAC9C,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGrC,OAAO,EAAE,qBAAqB,IAAI,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AACpG,OAAO,EAAE,sBAAsB,IAAI,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAGxG,OAAO,EACL,6BAA6B,IAAI,kCAAkC,EACnE,6BAA6B,IAAI,kCAAkC,GACpE,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,gBAAgB,IAAI,qBAAqB,EACzC,gBAAgB,IAAI,qBAAqB,GAC1C,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,gBAAgB,IAAI,qBAAqB,EACzC,gBAAgB,IAAI,qBAAqB,GAC1C,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,uBAAuB,IAAI,4BAA4B,EACvD,uBAAuB,IAAI,4BAA4B,GACxD,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,iBAAiB,EACjB,WAAW,EACX,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAGhF,OAAO,EACL,iCAAiC,EACjC,8BAA8B,EAC9B,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,qCAAqC,EACrC,kCAAkC,GACnC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// Clients
|
|
2
|
+
export { SvmProvider as SealevelProvider } from './clients/provider.js';
|
|
3
|
+
export { SvmSigner as SealevelSigner } from './clients/signer.js';
|
|
4
|
+
export { SvmProtocolProvider as SealevelProtocolProvider } from './clients/protocol.js';
|
|
5
|
+
// RPC + Signer
|
|
6
|
+
export { createRpc } from './rpc.js';
|
|
7
|
+
// Artifact managers
|
|
8
|
+
export { SvmIsmArtifactManager as SealevelIsmArtifactManager } from './ism/ism-artifact-manager.js';
|
|
9
|
+
export { SvmHookArtifactManager as SealevelHookArtifactManager } from './hook/hook-artifact-manager.js';
|
|
10
|
+
// ISM readers/writers
|
|
11
|
+
export { SvmMessageIdMultisigIsmReader as SealevelMessageIdMultisigIsmReader, SvmMessageIdMultisigIsmWriter as SealevelMessageIdMultisigIsmWriter, } from './ism/multisig-ism.js';
|
|
12
|
+
export { SvmTestIsmReader as SealevelTestIsmReader, SvmTestIsmWriter as SealevelTestIsmWriter, } from './ism/test-ism.js';
|
|
13
|
+
// Hook readers/writers
|
|
14
|
+
export { SvmIgpHookReader as SealevelIgpHookReader, SvmIgpHookWriter as SealevelIgpHookWriter, } from './hook/igp-hook.js';
|
|
15
|
+
export { SvmMerkleTreeHookReader as SealevelMerkleTreeHookReader, SvmMerkleTreeHookWriter as SealevelMerkleTreeHookWriter, } from './hook/merkle-tree-hook.js';
|
|
16
|
+
// Deploy
|
|
17
|
+
export { createDeployProgramPlan, createUpgradeProgramPlan, executeDeployPlan, } from './deploy/program-deployer.js';
|
|
18
|
+
export { resolveProgram } from './deploy/resolve-program.js';
|
|
19
|
+
// Transaction utilities
|
|
20
|
+
export { getComputeBudgetInstructions, buildTransactionMessage } from './tx.js';
|
|
21
|
+
// PDA derivation
|
|
22
|
+
export { deriveMultisigIsmAccessControlPda, deriveMultisigIsmDomainDataPda, deriveTestIsmStoragePda, deriveHyperlaneTokenPda, deriveAtaPayerPda, deriveIgpProgramDataPda, deriveIgpAccountPda, deriveOverheadIgpAccountPda, } from './pda.js';
|
|
23
|
+
// Account decoders
|
|
24
|
+
export { decodeHyperlaneTokenAccount, decodeIgpProgramDataAccount, decodeIgpAccount, decodeOverheadIgpAccount, } from './accounts/token.js';
|
|
25
|
+
export { decodeMultisigIsmAccessControlAccount, decodeMultisigIsmDomainDataAccount, } from './accounts/multisig-ism-message-id.js';
|
|
26
|
+
export { decodeTestIsmStorageAccount } from './accounts/test-ism.js';
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,mBAAmB,IAAI,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAgBxF,eAAe;AACf,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,oBAAoB;AACpB,OAAO,EAAE,qBAAqB,IAAI,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AACpG,OAAO,EAAE,sBAAsB,IAAI,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAExG,sBAAsB;AACtB,OAAO,EACL,6BAA6B,IAAI,kCAAkC,EACnE,6BAA6B,IAAI,kCAAkC,GACpE,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,gBAAgB,IAAI,qBAAqB,EACzC,gBAAgB,IAAI,qBAAqB,GAC1C,MAAM,mBAAmB,CAAC;AAE3B,uBAAuB;AACvB,OAAO,EACL,gBAAgB,IAAI,qBAAqB,EACzC,gBAAgB,IAAI,qBAAqB,GAC1C,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,uBAAuB,IAAI,4BAA4B,EACvD,uBAAuB,IAAI,4BAA4B,GACxD,MAAM,4BAA4B,CAAC;AAEpC,SAAS;AACT,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AAOtC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,wBAAwB;AACxB,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAEhF,iBAAiB;AACjB,OAAO,EACL,iCAAiC,EACjC,8BAA8B,EAC9B,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,UAAU,CAAC;AAElB,mBAAmB;AACnB,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,qCAAqC,EACrC,kCAAkC,GACnC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { Address, Instruction, ReadonlyUint8Array, TransactionSigner } from '@solana/kit';
|
|
2
|
+
import { type GasOracleConfig, type GasOverheadConfig, type H256 } from '../codecs/shared.js';
|
|
3
|
+
export declare enum IgpInstructionKind {
|
|
4
|
+
Init = 0,
|
|
5
|
+
InitIgp = 1,
|
|
6
|
+
InitOverheadIgp = 2,
|
|
7
|
+
PayForGas = 3,
|
|
8
|
+
QuoteGasPayment = 4,
|
|
9
|
+
TransferIgpOwnership = 5,
|
|
10
|
+
TransferOverheadIgpOwnership = 6,
|
|
11
|
+
SetIgpBeneficiary = 7,
|
|
12
|
+
SetDestinationGasOverheads = 8,
|
|
13
|
+
SetGasOracleConfigs = 9,
|
|
14
|
+
Claim = 10
|
|
15
|
+
}
|
|
16
|
+
export interface InitIgpData {
|
|
17
|
+
salt: H256;
|
|
18
|
+
owner: Address | null;
|
|
19
|
+
beneficiary: Address;
|
|
20
|
+
}
|
|
21
|
+
export interface InitOverheadIgpData {
|
|
22
|
+
salt: H256;
|
|
23
|
+
owner: Address | null;
|
|
24
|
+
inner: Address;
|
|
25
|
+
}
|
|
26
|
+
export interface QuoteGasPaymentData {
|
|
27
|
+
destinationDomain: number;
|
|
28
|
+
gasAmount: bigint;
|
|
29
|
+
}
|
|
30
|
+
export type IgpProgramInstructionData = {
|
|
31
|
+
kind: 'init';
|
|
32
|
+
} | {
|
|
33
|
+
kind: 'initIgp';
|
|
34
|
+
value: InitIgpData;
|
|
35
|
+
} | {
|
|
36
|
+
kind: 'initOverheadIgp';
|
|
37
|
+
value: InitOverheadIgpData;
|
|
38
|
+
} | {
|
|
39
|
+
kind: 'quoteGasPayment';
|
|
40
|
+
value: QuoteGasPaymentData;
|
|
41
|
+
} | {
|
|
42
|
+
kind: 'transferIgpOwnership';
|
|
43
|
+
newOwner: Address | null;
|
|
44
|
+
} | {
|
|
45
|
+
kind: 'transferOverheadIgpOwnership';
|
|
46
|
+
newOwner: Address | null;
|
|
47
|
+
} | {
|
|
48
|
+
kind: 'setIgpBeneficiary';
|
|
49
|
+
beneficiary: Address;
|
|
50
|
+
} | {
|
|
51
|
+
kind: 'setDestinationGasOverheads';
|
|
52
|
+
configs: GasOverheadConfig[];
|
|
53
|
+
} | {
|
|
54
|
+
kind: 'setGasOracleConfigs';
|
|
55
|
+
configs: GasOracleConfig[];
|
|
56
|
+
} | {
|
|
57
|
+
kind: 'claim';
|
|
58
|
+
};
|
|
59
|
+
export declare function encodeIgpProgramInstruction(instruction: IgpProgramInstructionData): ReadonlyUint8Array;
|
|
60
|
+
export declare function decodeIgpProgramInstruction(data: Uint8Array): IgpProgramInstructionData | null;
|
|
61
|
+
export declare function getInitIgpProgramInstruction(programAddress: Address, payer: TransactionSigner): Promise<Instruction>;
|
|
62
|
+
export declare function getInitIgpInstruction(programAddress: Address, payer: TransactionSigner, value: InitIgpData): Promise<Instruction>;
|
|
63
|
+
export declare function getInitOverheadIgpInstruction(programAddress: Address, payer: TransactionSigner, value: InitOverheadIgpData): Promise<Instruction>;
|
|
64
|
+
export declare function getSetGasOracleConfigsInstruction(programAddress: Address, owner: TransactionSigner, igpAccount: Address, configs: GasOracleConfig[]): Promise<Instruction>;
|
|
65
|
+
export declare function getSetDestinationGasOverheadsInstruction(programAddress: Address, owner: TransactionSigner, overheadIgpAccount: Address, configs: GasOverheadConfig[]): Promise<Instruction>;
|
|
66
|
+
//# sourceMappingURL=igp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"igp.d.ts","sourceRoot":"","sources":["../../src/instructions/igp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import { fixCodecSize, getAddressCodec, getBytesCodec, getNullableCodec, getStructDecoder, getStructEncoder, getU32Codec, getU64Codec, } from '@solana/kit';
|
|
2
|
+
import { concatBytes, option, u8, vec } from '../codecs/binary.js';
|
|
3
|
+
import { encodeGasOracleConfig, encodeGasOverheadConfig, } from '../codecs/shared.js';
|
|
4
|
+
import { SYSTEM_PROGRAM_ADDRESS } from '../constants.js';
|
|
5
|
+
import { deriveIgpAccountPda, deriveIgpProgramDataPda, deriveOverheadIgpAccountPda, } from '../pda.js';
|
|
6
|
+
import { buildInstruction, readonlyAccount, writableAccount, writableSigner, } from './utils.js';
|
|
7
|
+
export var IgpInstructionKind;
|
|
8
|
+
(function (IgpInstructionKind) {
|
|
9
|
+
IgpInstructionKind[IgpInstructionKind["Init"] = 0] = "Init";
|
|
10
|
+
IgpInstructionKind[IgpInstructionKind["InitIgp"] = 1] = "InitIgp";
|
|
11
|
+
IgpInstructionKind[IgpInstructionKind["InitOverheadIgp"] = 2] = "InitOverheadIgp";
|
|
12
|
+
IgpInstructionKind[IgpInstructionKind["PayForGas"] = 3] = "PayForGas";
|
|
13
|
+
IgpInstructionKind[IgpInstructionKind["QuoteGasPayment"] = 4] = "QuoteGasPayment";
|
|
14
|
+
IgpInstructionKind[IgpInstructionKind["TransferIgpOwnership"] = 5] = "TransferIgpOwnership";
|
|
15
|
+
IgpInstructionKind[IgpInstructionKind["TransferOverheadIgpOwnership"] = 6] = "TransferOverheadIgpOwnership";
|
|
16
|
+
IgpInstructionKind[IgpInstructionKind["SetIgpBeneficiary"] = 7] = "SetIgpBeneficiary";
|
|
17
|
+
IgpInstructionKind[IgpInstructionKind["SetDestinationGasOverheads"] = 8] = "SetDestinationGasOverheads";
|
|
18
|
+
IgpInstructionKind[IgpInstructionKind["SetGasOracleConfigs"] = 9] = "SetGasOracleConfigs";
|
|
19
|
+
IgpInstructionKind[IgpInstructionKind["Claim"] = 10] = "Claim";
|
|
20
|
+
})(IgpInstructionKind || (IgpInstructionKind = {}));
|
|
21
|
+
const BYTES32_CODEC = fixCodecSize(getBytesCodec(), 32);
|
|
22
|
+
const ADDRESS_CODEC = getAddressCodec();
|
|
23
|
+
const OPTIONAL_ADDRESS_CODEC = getNullableCodec(ADDRESS_CODEC);
|
|
24
|
+
const INIT_IGP_ENCODER = getStructEncoder([
|
|
25
|
+
['salt', BYTES32_CODEC],
|
|
26
|
+
['owner', OPTIONAL_ADDRESS_CODEC],
|
|
27
|
+
['beneficiary', ADDRESS_CODEC],
|
|
28
|
+
]);
|
|
29
|
+
const INIT_IGP_DECODER = getStructDecoder([
|
|
30
|
+
['salt', BYTES32_CODEC],
|
|
31
|
+
['owner', OPTIONAL_ADDRESS_CODEC],
|
|
32
|
+
['beneficiary', ADDRESS_CODEC],
|
|
33
|
+
]);
|
|
34
|
+
const INIT_OVERHEAD_IGP_ENCODER = getStructEncoder([
|
|
35
|
+
['salt', BYTES32_CODEC],
|
|
36
|
+
['owner', OPTIONAL_ADDRESS_CODEC],
|
|
37
|
+
['inner', ADDRESS_CODEC],
|
|
38
|
+
]);
|
|
39
|
+
const INIT_OVERHEAD_IGP_DECODER = getStructDecoder([
|
|
40
|
+
['salt', BYTES32_CODEC],
|
|
41
|
+
['owner', OPTIONAL_ADDRESS_CODEC],
|
|
42
|
+
['inner', ADDRESS_CODEC],
|
|
43
|
+
]);
|
|
44
|
+
const QUOTE_GAS_PAYMENT_ENCODER = getStructEncoder([
|
|
45
|
+
['destinationDomain', getU32Codec()],
|
|
46
|
+
['gasAmount', getU64Codec()],
|
|
47
|
+
]);
|
|
48
|
+
const QUOTE_GAS_PAYMENT_DECODER = getStructDecoder([
|
|
49
|
+
['destinationDomain', getU32Codec()],
|
|
50
|
+
['gasAmount', getU64Codec()],
|
|
51
|
+
]);
|
|
52
|
+
export function encodeIgpProgramInstruction(instruction) {
|
|
53
|
+
switch (instruction.kind) {
|
|
54
|
+
case 'init':
|
|
55
|
+
return u8(IgpInstructionKind.Init);
|
|
56
|
+
case 'initIgp':
|
|
57
|
+
return concatBytes(u8(IgpInstructionKind.InitIgp), encodeInitIgp(instruction.value));
|
|
58
|
+
case 'initOverheadIgp':
|
|
59
|
+
return concatBytes(u8(IgpInstructionKind.InitOverheadIgp), encodeInitOverheadIgp(instruction.value));
|
|
60
|
+
case 'quoteGasPayment':
|
|
61
|
+
return concatBytes(u8(IgpInstructionKind.QuoteGasPayment), Uint8Array.from(QUOTE_GAS_PAYMENT_ENCODER.encode(instruction.value)));
|
|
62
|
+
case 'transferIgpOwnership':
|
|
63
|
+
return concatBytes(u8(IgpInstructionKind.TransferIgpOwnership), option(instruction.newOwner, (addr) => ADDRESS_CODEC.encode(addr)));
|
|
64
|
+
case 'transferOverheadIgpOwnership':
|
|
65
|
+
return concatBytes(u8(IgpInstructionKind.TransferOverheadIgpOwnership), option(instruction.newOwner, (addr) => ADDRESS_CODEC.encode(addr)));
|
|
66
|
+
case 'setIgpBeneficiary':
|
|
67
|
+
return concatBytes(u8(IgpInstructionKind.SetIgpBeneficiary), ADDRESS_CODEC.encode(instruction.beneficiary));
|
|
68
|
+
case 'setDestinationGasOverheads':
|
|
69
|
+
return concatBytes(u8(IgpInstructionKind.SetDestinationGasOverheads), vec(instruction.configs, encodeGasOverheadConfig));
|
|
70
|
+
case 'setGasOracleConfigs':
|
|
71
|
+
return concatBytes(u8(IgpInstructionKind.SetGasOracleConfigs), vec(instruction.configs, encodeGasOracleConfig));
|
|
72
|
+
case 'claim':
|
|
73
|
+
return u8(IgpInstructionKind.Claim);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
export function decodeIgpProgramInstruction(data) {
|
|
77
|
+
if (data.length < 1)
|
|
78
|
+
return null;
|
|
79
|
+
const kind = data[0];
|
|
80
|
+
const payload = data.slice(1);
|
|
81
|
+
switch (kind) {
|
|
82
|
+
case IgpInstructionKind.Init:
|
|
83
|
+
return { kind: 'init' };
|
|
84
|
+
case IgpInstructionKind.InitIgp:
|
|
85
|
+
return { kind: 'initIgp', value: decodeInitIgp(payload) };
|
|
86
|
+
case IgpInstructionKind.InitOverheadIgp:
|
|
87
|
+
return { kind: 'initOverheadIgp', value: decodeInitOverheadIgp(payload) };
|
|
88
|
+
case IgpInstructionKind.QuoteGasPayment: {
|
|
89
|
+
const decoded = QUOTE_GAS_PAYMENT_DECODER.decode(payload);
|
|
90
|
+
return {
|
|
91
|
+
kind: 'quoteGasPayment',
|
|
92
|
+
value: {
|
|
93
|
+
destinationDomain: decoded.destinationDomain,
|
|
94
|
+
gasAmount: decoded.gasAmount,
|
|
95
|
+
},
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
default:
|
|
99
|
+
if (kind <= IgpInstructionKind.Claim) {
|
|
100
|
+
throw new Error(`IGP instruction kind ${kind} is recognized but decoding is not yet implemented`);
|
|
101
|
+
}
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
export async function getInitIgpProgramInstruction(programAddress, payer) {
|
|
106
|
+
const { address: programData } = await deriveIgpProgramDataPda(programAddress);
|
|
107
|
+
return buildInstruction(programAddress, [
|
|
108
|
+
readonlyAccount(SYSTEM_PROGRAM_ADDRESS),
|
|
109
|
+
writableSigner(payer),
|
|
110
|
+
writableAccount(programData),
|
|
111
|
+
], encodeIgpProgramInstruction({ kind: 'init' }));
|
|
112
|
+
}
|
|
113
|
+
export async function getInitIgpInstruction(programAddress, payer, value) {
|
|
114
|
+
const { address: igpAccount } = await deriveIgpAccountPda(programAddress, value.salt);
|
|
115
|
+
return buildInstruction(programAddress, [
|
|
116
|
+
readonlyAccount(SYSTEM_PROGRAM_ADDRESS),
|
|
117
|
+
writableSigner(payer),
|
|
118
|
+
writableAccount(igpAccount),
|
|
119
|
+
], encodeIgpProgramInstruction({ kind: 'initIgp', value }));
|
|
120
|
+
}
|
|
121
|
+
export async function getInitOverheadIgpInstruction(programAddress, payer, value) {
|
|
122
|
+
const { address: overheadIgpAccount } = await deriveOverheadIgpAccountPda(programAddress, value.salt);
|
|
123
|
+
return buildInstruction(programAddress, [
|
|
124
|
+
readonlyAccount(SYSTEM_PROGRAM_ADDRESS),
|
|
125
|
+
writableSigner(payer),
|
|
126
|
+
writableAccount(overheadIgpAccount),
|
|
127
|
+
], encodeIgpProgramInstruction({ kind: 'initOverheadIgp', value }));
|
|
128
|
+
}
|
|
129
|
+
function encodeInitIgp(value) {
|
|
130
|
+
return Uint8Array.from(INIT_IGP_ENCODER.encode(value));
|
|
131
|
+
}
|
|
132
|
+
function decodeInitIgp(data) {
|
|
133
|
+
const decoded = INIT_IGP_DECODER.decode(data);
|
|
134
|
+
return {
|
|
135
|
+
salt: Uint8Array.from(decoded.salt),
|
|
136
|
+
owner: decoded.owner,
|
|
137
|
+
beneficiary: decoded.beneficiary,
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
function encodeInitOverheadIgp(value) {
|
|
141
|
+
return Uint8Array.from(INIT_OVERHEAD_IGP_ENCODER.encode(value));
|
|
142
|
+
}
|
|
143
|
+
function decodeInitOverheadIgp(data) {
|
|
144
|
+
const decoded = INIT_OVERHEAD_IGP_DECODER.decode(data);
|
|
145
|
+
return {
|
|
146
|
+
salt: Uint8Array.from(decoded.salt),
|
|
147
|
+
owner: decoded.owner,
|
|
148
|
+
inner: decoded.inner,
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
export async function getSetGasOracleConfigsInstruction(programAddress, owner, igpAccount, configs) {
|
|
152
|
+
return buildInstruction(programAddress, [
|
|
153
|
+
readonlyAccount(SYSTEM_PROGRAM_ADDRESS),
|
|
154
|
+
writableAccount(igpAccount),
|
|
155
|
+
writableSigner(owner),
|
|
156
|
+
], encodeIgpProgramInstruction({ kind: 'setGasOracleConfigs', configs }));
|
|
157
|
+
}
|
|
158
|
+
export async function getSetDestinationGasOverheadsInstruction(programAddress, owner, overheadIgpAccount, configs) {
|
|
159
|
+
return buildInstruction(programAddress, [
|
|
160
|
+
readonlyAccount(SYSTEM_PROGRAM_ADDRESS),
|
|
161
|
+
writableAccount(overheadIgpAccount),
|
|
162
|
+
writableSigner(owner),
|
|
163
|
+
], encodeIgpProgramInstruction({
|
|
164
|
+
kind: 'setDestinationGasOverheads',
|
|
165
|
+
configs,
|
|
166
|
+
}));
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=igp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"igp.js","sourceRoot":"","sources":["../../src/instructions/igp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { type HandleInstruction, type VerifyInstruction } from '../codecs/shared.js';
|
|
2
|
+
import { type ReadonlyUint8Array } from '@solana/kit';
|
|
3
|
+
export declare const INTERCHAIN_SECURITY_MODULE_INTERFACE_DISCRIMINATORS: {
|
|
4
|
+
readonly type: Uint8Array<ArrayBuffer>;
|
|
5
|
+
readonly verify: Uint8Array<ArrayBuffer>;
|
|
6
|
+
readonly verifyAccountMetas: Uint8Array<ArrayBuffer>;
|
|
7
|
+
};
|
|
8
|
+
export declare const MESSAGE_RECIPIENT_INTERFACE_DISCRIMINATORS: {
|
|
9
|
+
readonly interchainSecurityModule: Uint8Array<ArrayBuffer>;
|
|
10
|
+
readonly interchainSecurityModuleAccountMetas: Uint8Array<ArrayBuffer>;
|
|
11
|
+
readonly handle: Uint8Array<ArrayBuffer>;
|
|
12
|
+
readonly handleAccountMetas: Uint8Array<ArrayBuffer>;
|
|
13
|
+
};
|
|
14
|
+
export declare const MULTISIG_ISM_INTERFACE_DISCRIMINATORS: {
|
|
15
|
+
readonly validatorsAndThreshold: Uint8Array<ArrayBuffer>;
|
|
16
|
+
readonly validatorsAndThresholdAccountMetas: Uint8Array<ArrayBuffer>;
|
|
17
|
+
};
|
|
18
|
+
export type InterchainSecurityModuleInterfaceInstruction = {
|
|
19
|
+
type: 'type';
|
|
20
|
+
} | {
|
|
21
|
+
type: 'verify';
|
|
22
|
+
data: VerifyInstruction;
|
|
23
|
+
} | {
|
|
24
|
+
type: 'verifyAccountMetas';
|
|
25
|
+
data: VerifyInstruction;
|
|
26
|
+
};
|
|
27
|
+
export type MessageRecipientInterfaceInstruction = {
|
|
28
|
+
type: 'interchainSecurityModule';
|
|
29
|
+
} | {
|
|
30
|
+
type: 'interchainSecurityModuleAccountMetas';
|
|
31
|
+
} | {
|
|
32
|
+
type: 'handle';
|
|
33
|
+
data: HandleInstruction;
|
|
34
|
+
} | {
|
|
35
|
+
type: 'handleAccountMetas';
|
|
36
|
+
data: HandleInstruction;
|
|
37
|
+
};
|
|
38
|
+
export type MultisigIsmInterfaceInstruction = {
|
|
39
|
+
type: 'validatorsAndThreshold';
|
|
40
|
+
message: Uint8Array;
|
|
41
|
+
} | {
|
|
42
|
+
type: 'validatorsAndThresholdAccountMetas';
|
|
43
|
+
message: Uint8Array;
|
|
44
|
+
};
|
|
45
|
+
export declare function isProgramInstructionDiscriminator(data: Uint8Array): boolean;
|
|
46
|
+
export declare function encodeInterchainSecurityModuleInterfaceInstruction(instruction: InterchainSecurityModuleInterfaceInstruction): ReadonlyUint8Array;
|
|
47
|
+
export declare function decodeInterchainSecurityModuleInterfaceInstruction(data: Uint8Array): InterchainSecurityModuleInterfaceInstruction | null;
|
|
48
|
+
export declare function encodeMessageRecipientInterfaceInstruction(instruction: MessageRecipientInterfaceInstruction): ReadonlyUint8Array;
|
|
49
|
+
export declare function decodeMessageRecipientInterfaceInstruction(data: Uint8Array): MessageRecipientInterfaceInstruction | null;
|
|
50
|
+
export declare function encodeMultisigIsmInterfaceInstruction(instruction: MultisigIsmInterfaceInstruction): ReadonlyUint8Array;
|
|
51
|
+
export declare function decodeMultisigIsmInterfaceInstruction(data: Uint8Array): MultisigIsmInterfaceInstruction | null;
|
|
52
|
+
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/instructions/interfaces.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGtD,eAAO,MAAM,mDAAmD;;;;CAItD,CAAC;AAEX,eAAO,MAAM,0CAA0C;;;;;CAO7C,CAAC;AAEX,eAAO,MAAM,qCAAqC;;;CAKxC,CAAC;AAEX,MAAM,MAAM,4CAA4C,GACpD;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,IAAI,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAE5D,MAAM,MAAM,oCAAoC,GAC5C;IAAE,IAAI,EAAE,0BAA0B,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,sCAAsC,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,IAAI,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAE5D,MAAM,MAAM,+BAA+B,GACvC;IAAE,IAAI,EAAE,wBAAwB,CAAC;IAAC,OAAO,EAAE,UAAU,CAAA;CAAE,GACvD;IAAE,IAAI,EAAE,oCAAoC,CAAC;IAAC,OAAO,EAAE,UAAU,CAAA;CAAE,CAAC;AAExE,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAM3E;AAED,wBAAgB,kDAAkD,CAChE,WAAW,EAAE,4CAA4C,GACxD,kBAAkB,CAepB;AAED,wBAAgB,kDAAkD,CAChE,IAAI,EAAE,UAAU,GACf,4CAA4C,GAAG,IAAI,CAiCrD;AAED,wBAAgB,0CAA0C,CACxD,WAAW,EAAE,oCAAoC,GAChD,kBAAkB,CAiBpB;AAED,wBAAgB,0CAA0C,CACxD,IAAI,EAAE,UAAU,GACf,oCAAoC,GAAG,IAAI,CAsC7C;AAED,wBAAgB,qCAAqC,CACnD,WAAW,EAAE,+BAA+B,GAC3C,kBAAkB,CAapB;AAED,wBAAgB,qCAAqC,CACnD,IAAI,EAAE,UAAU,GACf,+BAA+B,GAAG,IAAI,CAsBxC"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { PROGRAM_INSTRUCTION_DISCRIMINATOR } from '../constants.js';
|
|
2
|
+
import { ByteCursor, concatBytes } from '../codecs/binary.js';
|
|
3
|
+
import { decodeHandleInstruction, decodeVerifyInstruction, encodeHandleInstruction, encodeVerifyInstruction, } from '../codecs/shared.js';
|
|
4
|
+
// Kept verbose for grep/disambiguation across similarly named interface discriminators.
|
|
5
|
+
export const INTERCHAIN_SECURITY_MODULE_INTERFACE_DISCRIMINATORS = {
|
|
6
|
+
type: new Uint8Array([105, 97, 97, 88, 63, 124, 106, 18]),
|
|
7
|
+
verify: new Uint8Array([243, 53, 214, 0, 208, 18, 231, 67]),
|
|
8
|
+
verifyAccountMetas: new Uint8Array([200, 65, 157, 12, 89, 255, 131, 216]),
|
|
9
|
+
};
|
|
10
|
+
export const MESSAGE_RECIPIENT_INTERFACE_DISCRIMINATORS = {
|
|
11
|
+
interchainSecurityModule: new Uint8Array([45, 18, 245, 87, 234, 46, 246, 15]),
|
|
12
|
+
interchainSecurityModuleAccountMetas: new Uint8Array([
|
|
13
|
+
190, 214, 218, 129, 67, 97, 4, 76,
|
|
14
|
+
]),
|
|
15
|
+
handle: new Uint8Array([33, 210, 5, 66, 196, 212, 239, 142]),
|
|
16
|
+
handleAccountMetas: new Uint8Array([194, 141, 30, 82, 241, 41, 169, 52]),
|
|
17
|
+
};
|
|
18
|
+
export const MULTISIG_ISM_INTERFACE_DISCRIMINATORS = {
|
|
19
|
+
validatorsAndThreshold: new Uint8Array([82, 96, 5, 220, 241, 173, 13, 50]),
|
|
20
|
+
validatorsAndThresholdAccountMetas: new Uint8Array([
|
|
21
|
+
113, 7, 132, 85, 239, 247, 157, 204,
|
|
22
|
+
]),
|
|
23
|
+
};
|
|
24
|
+
export function isProgramInstructionDiscriminator(data) {
|
|
25
|
+
if (data.length < PROGRAM_INSTRUCTION_DISCRIMINATOR.length)
|
|
26
|
+
return false;
|
|
27
|
+
for (let i = 0; i < PROGRAM_INSTRUCTION_DISCRIMINATOR.length; i += 1) {
|
|
28
|
+
if (data[i] !== PROGRAM_INSTRUCTION_DISCRIMINATOR[i])
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
export function encodeInterchainSecurityModuleInterfaceInstruction(instruction) {
|
|
34
|
+
switch (instruction.type) {
|
|
35
|
+
case 'type':
|
|
36
|
+
return INTERCHAIN_SECURITY_MODULE_INTERFACE_DISCRIMINATORS.type;
|
|
37
|
+
case 'verify':
|
|
38
|
+
return concatBytes(INTERCHAIN_SECURITY_MODULE_INTERFACE_DISCRIMINATORS.verify, encodeVerifyInstruction(instruction.data));
|
|
39
|
+
case 'verifyAccountMetas':
|
|
40
|
+
return concatBytes(INTERCHAIN_SECURITY_MODULE_INTERFACE_DISCRIMINATORS.verifyAccountMetas, encodeVerifyInstruction(instruction.data));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
export function decodeInterchainSecurityModuleInterfaceInstruction(data) {
|
|
44
|
+
if (data.length < 8)
|
|
45
|
+
return null;
|
|
46
|
+
const discriminator = data.slice(0, 8);
|
|
47
|
+
const payload = new ByteCursor(data.slice(8));
|
|
48
|
+
if (isEqual(discriminator, INTERCHAIN_SECURITY_MODULE_INTERFACE_DISCRIMINATORS.type)) {
|
|
49
|
+
return { type: 'type' };
|
|
50
|
+
}
|
|
51
|
+
if (isEqual(discriminator, INTERCHAIN_SECURITY_MODULE_INTERFACE_DISCRIMINATORS.verify)) {
|
|
52
|
+
return { type: 'verify', data: decodeVerifyInstruction(payload) };
|
|
53
|
+
}
|
|
54
|
+
if (isEqual(discriminator, INTERCHAIN_SECURITY_MODULE_INTERFACE_DISCRIMINATORS.verifyAccountMetas)) {
|
|
55
|
+
return {
|
|
56
|
+
type: 'verifyAccountMetas',
|
|
57
|
+
data: decodeVerifyInstruction(payload),
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
export function encodeMessageRecipientInterfaceInstruction(instruction) {
|
|
63
|
+
switch (instruction.type) {
|
|
64
|
+
case 'interchainSecurityModule':
|
|
65
|
+
return MESSAGE_RECIPIENT_INTERFACE_DISCRIMINATORS.interchainSecurityModule;
|
|
66
|
+
case 'interchainSecurityModuleAccountMetas':
|
|
67
|
+
return MESSAGE_RECIPIENT_INTERFACE_DISCRIMINATORS.interchainSecurityModuleAccountMetas;
|
|
68
|
+
case 'handle':
|
|
69
|
+
return concatBytes(MESSAGE_RECIPIENT_INTERFACE_DISCRIMINATORS.handle, encodeHandleInstruction(instruction.data));
|
|
70
|
+
case 'handleAccountMetas':
|
|
71
|
+
return concatBytes(MESSAGE_RECIPIENT_INTERFACE_DISCRIMINATORS.handleAccountMetas, encodeHandleInstruction(instruction.data));
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
export function decodeMessageRecipientInterfaceInstruction(data) {
|
|
75
|
+
if (data.length < 8)
|
|
76
|
+
return null;
|
|
77
|
+
const discriminator = data.slice(0, 8);
|
|
78
|
+
const payload = new ByteCursor(data.slice(8));
|
|
79
|
+
if (isEqual(discriminator, MESSAGE_RECIPIENT_INTERFACE_DISCRIMINATORS.interchainSecurityModule)) {
|
|
80
|
+
return { type: 'interchainSecurityModule' };
|
|
81
|
+
}
|
|
82
|
+
if (isEqual(discriminator, MESSAGE_RECIPIENT_INTERFACE_DISCRIMINATORS.interchainSecurityModuleAccountMetas)) {
|
|
83
|
+
return { type: 'interchainSecurityModuleAccountMetas' };
|
|
84
|
+
}
|
|
85
|
+
if (isEqual(discriminator, MESSAGE_RECIPIENT_INTERFACE_DISCRIMINATORS.handle)) {
|
|
86
|
+
return { type: 'handle', data: decodeHandleInstruction(payload) };
|
|
87
|
+
}
|
|
88
|
+
if (isEqual(discriminator, MESSAGE_RECIPIENT_INTERFACE_DISCRIMINATORS.handleAccountMetas)) {
|
|
89
|
+
return {
|
|
90
|
+
type: 'handleAccountMetas',
|
|
91
|
+
data: decodeHandleInstruction(payload),
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
return null;
|
|
95
|
+
}
|
|
96
|
+
export function encodeMultisigIsmInterfaceInstruction(instruction) {
|
|
97
|
+
switch (instruction.type) {
|
|
98
|
+
case 'validatorsAndThreshold':
|
|
99
|
+
return concatBytes(MULTISIG_ISM_INTERFACE_DISCRIMINATORS.validatorsAndThreshold, instruction.message);
|
|
100
|
+
case 'validatorsAndThresholdAccountMetas':
|
|
101
|
+
return concatBytes(MULTISIG_ISM_INTERFACE_DISCRIMINATORS.validatorsAndThresholdAccountMetas, instruction.message);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
export function decodeMultisigIsmInterfaceInstruction(data) {
|
|
105
|
+
if (data.length < 8)
|
|
106
|
+
return null;
|
|
107
|
+
const discriminator = data.slice(0, 8);
|
|
108
|
+
const message = data.slice(8);
|
|
109
|
+
if (isEqual(discriminator, MULTISIG_ISM_INTERFACE_DISCRIMINATORS.validatorsAndThreshold)) {
|
|
110
|
+
return { type: 'validatorsAndThreshold', message };
|
|
111
|
+
}
|
|
112
|
+
if (isEqual(discriminator, MULTISIG_ISM_INTERFACE_DISCRIMINATORS.validatorsAndThresholdAccountMetas)) {
|
|
113
|
+
return { type: 'validatorsAndThresholdAccountMetas', message };
|
|
114
|
+
}
|
|
115
|
+
return null;
|
|
116
|
+
}
|
|
117
|
+
function isEqual(a, b) {
|
|
118
|
+
if (a.length !== b.length)
|
|
119
|
+
return false;
|
|
120
|
+
for (let i = 0; i < a.length; i += 1) {
|
|
121
|
+
if (a[i] !== b[i])
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
return true;
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=interfaces.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/instructions/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Address } from '@solana/kit';
|
|
2
|
+
import type { SvmInstruction } from '../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Builds a BPF Loader Upgradeable SetAuthority instruction (discriminant = 4)
|
|
5
|
+
* to transfer upgrade authority of a deployed program to a new address.
|
|
6
|
+
*
|
|
7
|
+
* Uses address-only signers (no embedded keypair) consistent with the rest of
|
|
8
|
+
* the codebase — signing is deferred to transaction submission.
|
|
9
|
+
*/
|
|
10
|
+
export declare function getSetUpgradeAuthorityInstruction(programAddress: Address, currentAuthority: Address, newAuthority: Address | null): Promise<SvmInstruction>;
|
|
11
|
+
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/instructions/loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAI3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AASlD;;;;;;GAMG;AACH,wBAAsB,iCAAiC,CACrD,cAAc,EAAE,OAAO,EACvB,gBAAgB,EAAE,OAAO,EACzB,YAAY,EAAE,OAAO,GAAG,IAAI,GAC3B,OAAO,CAAC,cAAc,CAAC,CAYzB"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { deriveProgramDataAddress } from '../deploy/program-deployer.js';
|
|
2
|
+
import { LOADER_V3_PROGRAM_ADDRESS } from '../constants.js';
|
|
3
|
+
import { buildInstruction, readonlyAccount, readonlySignerAddress, writableAccount, } from './utils.js';
|
|
4
|
+
/**
|
|
5
|
+
* Builds a BPF Loader Upgradeable SetAuthority instruction (discriminant = 4)
|
|
6
|
+
* to transfer upgrade authority of a deployed program to a new address.
|
|
7
|
+
*
|
|
8
|
+
* Uses address-only signers (no embedded keypair) consistent with the rest of
|
|
9
|
+
* the codebase — signing is deferred to transaction submission.
|
|
10
|
+
*/
|
|
11
|
+
export async function getSetUpgradeAuthorityInstruction(programAddress, currentAuthority, newAuthority) {
|
|
12
|
+
const programDataAddress = await deriveProgramDataAddress(programAddress);
|
|
13
|
+
// SetAuthority discriminant: u32le(4)
|
|
14
|
+
const data = new Uint8Array([4, 0, 0, 0]);
|
|
15
|
+
const accounts = [
|
|
16
|
+
writableAccount(programDataAddress),
|
|
17
|
+
readonlySignerAddress(currentAuthority),
|
|
18
|
+
];
|
|
19
|
+
if (newAuthority) {
|
|
20
|
+
accounts.push(readonlyAccount(newAuthority));
|
|
21
|
+
}
|
|
22
|
+
return buildInstruction(LOADER_V3_PROGRAM_ADDRESS, accounts, data);
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/instructions/loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAG5D,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,cAAuB,EACvB,gBAAyB,EACzB,YAA4B;IAE5B,MAAM,kBAAkB,GAAG,MAAM,wBAAwB,CAAC,cAAc,CAAC,CAAC;IAC1E,sCAAsC;IACtC,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG;QACf,eAAe,CAAC,kBAAkB,CAAC;QACnC,qBAAqB,CAAC,gBAAgB,CAAC;KACxC,CAAC;IACF,IAAI,YAAY,EAAE,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,gBAAgB,CAAC,yBAAyB,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;AACrE,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { Address, Instruction, ReadonlyUint8Array, TransactionSigner } from '@solana/kit';
|
|
2
|
+
import { type Domained, type H160, type ValidatorsAndThreshold } from '../codecs/shared.js';
|
|
3
|
+
export declare enum MultisigIsmMessageIdProgramInstructionKind {
|
|
4
|
+
Initialize = 0,
|
|
5
|
+
SetValidatorsAndThreshold = 1,
|
|
6
|
+
GetOwner = 2,
|
|
7
|
+
TransferOwnership = 3
|
|
8
|
+
}
|
|
9
|
+
export type MultisigIsmMessageIdProgramInstruction = {
|
|
10
|
+
kind: 'initialize';
|
|
11
|
+
} | {
|
|
12
|
+
kind: 'setValidatorsAndThreshold';
|
|
13
|
+
value: Domained<ValidatorsAndThreshold>;
|
|
14
|
+
} | {
|
|
15
|
+
kind: 'getOwner';
|
|
16
|
+
} | {
|
|
17
|
+
kind: 'transferOwnership';
|
|
18
|
+
newOwner: Address | null;
|
|
19
|
+
};
|
|
20
|
+
export declare function encodeMultisigIsmMessageIdProgramInstruction(instruction: MultisigIsmMessageIdProgramInstruction): ReadonlyUint8Array;
|
|
21
|
+
export declare function decodeMultisigIsmMessageIdProgramInstruction(data: Uint8Array): MultisigIsmMessageIdProgramInstruction | null;
|
|
22
|
+
export interface SetDomainValidatorsArgs {
|
|
23
|
+
programAddress: Address;
|
|
24
|
+
owner: TransactionSigner;
|
|
25
|
+
domain: number;
|
|
26
|
+
validators: (H160 | string)[];
|
|
27
|
+
threshold: number;
|
|
28
|
+
}
|
|
29
|
+
export declare function getInitializeMultisigIsmMessageIdInstruction(programAddress: Address, owner: TransactionSigner): Promise<Instruction>;
|
|
30
|
+
export declare function getSetValidatorsAndThresholdInstruction(args: SetDomainValidatorsArgs): Promise<Instruction>;
|
|
31
|
+
export declare function getTransferOwnershipInstruction(programAddress: Address, owner: TransactionSigner, newOwner: Address | null): Promise<Instruction>;
|
|
32
|
+
//# sourceMappingURL=multisig-ism-message-id.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multisig-ism-message-id.d.ts","sourceRoot":"","sources":["../../src/instructions/multisig-ism-message-id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAWrB,OAAO,EAGL,KAAK,QAAQ,EACb,KAAK,IAAI,EACT,KAAK,sBAAsB,EAC5B,MAAM,qBAAqB,CAAC;AAa7B,oBAAY,0CAA0C;IACpD,UAAU,IAAI;IACd,yBAAyB,IAAI;IAC7B,QAAQ,IAAI;IACZ,iBAAiB,IAAI;CACtB;AAED,MAAM,MAAM,sCAAsC,GAC9C;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IACE,IAAI,EAAE,2BAA2B,CAAC;IAClC,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC;CACzC,GACD;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAA;CAAE,CAAC;AAE5D,wBAAgB,4CAA4C,CAC1D,WAAW,EAAE,sCAAsC,GAClD,kBAAkB,CA2BpB;AAED,wBAAgB,4CAA4C,CAC1D,IAAI,EAAE,UAAU,GACf,sCAAsC,GAAG,IAAI,CAkC/C;AAED,MAAM,WAAW,uBAAuB;IACtC,cAAc,EAAE,OAAO,CAAC;IACxB,KAAK,EAAE,iBAAiB,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,CAAC,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,4CAA4C,CAChE,cAAc,EAAE,OAAO,EACvB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,WAAW,CAAC,CAYtB;AAED,wBAAsB,uCAAuC,CAC3D,IAAI,EAAE,uBAAuB,GAC5B,OAAO,CAAC,WAAW,CAAC,CA8BtB;AAED,wBAAsB,+BAA+B,CACnD,cAAc,EAAE,OAAO,EACvB,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,OAAO,GAAG,IAAI,GACvB,OAAO,CAAC,WAAW,CAAC,CAWtB"}
|