UNPKG

@hyperlane-xyz/sdk

Version:

The official SDK for the Hyperlane Network

74 lines 2.75 kB
import { PublicKey } from '@solana/web3.js'; /** * MultisigIsm instruction types matching Rust enum * See: rust/sealevel/programs/ism/multisig-ism-message-id/src/instruction.rs */ export declare enum SealevelMultisigIsmInstructionType { INIT = 0, SET_VALIDATORS_AND_THRESHOLD = 1, GET_OWNER = 2, TRANSFER_OWNERSHIP = 3 } export declare const SealevelMultisigIsmInstructionName: Record<SealevelMultisigIsmInstructionType, string>; /** * SetValidatorsAndThreshold instruction data * Matches: rust/sealevel/programs/ism/multisig-ism-message-id/src/instruction.rs * * Note: Instruction format AFTER 8-byte program discriminator: * [enum_discriminator: u8, domain: u32, validators: Vec<[u8; 20]>, threshold: u8] */ export declare class SealevelMultisigIsmSetValidatorsInstruction { domain: number; validators: Uint8Array[]; threshold: number; get validatorAddresses(): string[]; constructor(fields: any); } export declare const SealevelMultisigIsmSetValidatorsInstructionSchema: Map<any, any>; /** * TransferOwnership instruction data */ export declare class SealevelMultisigIsmTransferOwnershipInstruction { newOwner: Uint8Array | null; newOwnerPubkey?: PublicKey; constructor(fields: any); } export declare const SealevelMultisigIsmTransferOwnershipInstructionSchema: Map<any, any>; /** * On-chain account data structures * See: rust/sealevel/programs/ism/multisig-ism-message-id/src/accounts.rs */ /** * SealevelValidatorsAndThreshold - Configuration of a validator set and threshold * Matches: rust/sealevel/programs/ism/multisig-ism-message-id/src/instruction.rs */ export declare class SealevelValidatorsAndThreshold { validators: Uint8Array[]; threshold: number; get validatorAddresses(): string[]; constructor(fields: any); } export declare const SealevelValidatorsAndThresholdSchema: Map<any, any>; /** * SealevelDomainData - The data of a "domain data" PDA account * One of these exists for each domain that's been enrolled * Matches: rust/sealevel/programs/ism/multisig-ism-message-id/src/accounts.rs */ export declare class SealevelDomainData { bumpSeed: number; validatorsAndThreshold: SealevelValidatorsAndThreshold; constructor(fields: any); } export declare const SealevelDomainDataSchema: Map<any, any>; /** * SealevelAccessControlData - The data of the access control PDA account * Matches: rust/sealevel/programs/ism/multisig-ism-message-id/src/accounts.rs */ export declare class SealevelAccessControlData { bumpSeed: number; owner: Uint8Array | null; ownerPubkey?: PublicKey; constructor(fields: any); } export declare const SealevelAccessControlDataSchema: Map<any, any>; //# sourceMappingURL=serialization.d.ts.map