@layerzerolabs/lz-sui-sdk-v2
Version:
60 lines (52 loc) • 1.76 kB
text/typescript
// Endpoint execution states
export const EndpointExecutionState = {
STATE_NOT_EXECUTABLE: 0,
STATE_VERIFIED_BUT_NOT_EXECUTABLE: 1,
STATE_EXECUTABLE: 2,
STATE_EXECUTED: 3,
} as const
// ULN verification states
export const UlnVerificationState = {
STATE_VERIFYING: 0,
STATE_VERIFIABLE: 1,
STATE_VERIFIED: 2,
STATE_NOT_INITIALIZABLE: 3,
} as const
export type EndpointExecutionStateType = (typeof EndpointExecutionState)[keyof typeof EndpointExecutionState]
export type UlnVerificationStateType = (typeof UlnVerificationState)[keyof typeof UlnVerificationState]
import { TransactionArgument } from '@mysten/sui/transactions'
/**
* Parameters for checking message executability
*/
export interface ExecutableParams {
messagingChannel: string | TransactionArgument
srcEid: number | TransactionArgument
sender: Uint8Array | TransactionArgument
nonce: bigint | TransactionArgument
}
/**
* Parameters for checking message initializability
*/
export interface InitializableParams {
messagingChannel: string | TransactionArgument
srcEid: number | TransactionArgument
sender: Uint8Array | TransactionArgument
}
/**
* Parameters for checking message verifiability by endpoint
*/
export interface VerifiableParams {
messagingChannel: string | TransactionArgument
srcEid: number | TransactionArgument
sender: Uint8Array | TransactionArgument
nonce: bigint | TransactionArgument
}
/**
* Parameters for checking ULN verification state
*/
export interface UlnVerifiableParams {
verification: string | TransactionArgument
messagingChannel: string | TransactionArgument
packetHeaderBytes: Uint8Array | TransactionArgument
payloadHash: Uint8Array | TransactionArgument
}