41 lines
615 B
Solidity
41 lines
615 B
Solidity
// contracts/Structs.sol
|
|
// SPDX-License-Identifier: Apache 2
|
|
|
|
pragma solidity ^0.8.0;
|
|
|
|
interface Structs {
|
|
struct Provider {
|
|
uint16 chainId;
|
|
uint16 governanceChainId;
|
|
bytes32 governanceContract;
|
|
}
|
|
|
|
struct GuardianSet {
|
|
address[] keys;
|
|
uint32 expirationTime;
|
|
}
|
|
|
|
struct Signature {
|
|
bytes32 r;
|
|
bytes32 s;
|
|
uint8 v;
|
|
uint8 guardianIndex;
|
|
}
|
|
|
|
struct VM {
|
|
uint8 version;
|
|
uint32 timestamp;
|
|
uint32 nonce;
|
|
uint16 emitterChainId;
|
|
bytes32 emitterAddress;
|
|
uint64 sequence;
|
|
uint8 consistencyLevel;
|
|
bytes payload;
|
|
|
|
uint32 guardianSetIndex;
|
|
Signature[] signatures;
|
|
|
|
bytes32 hash;
|
|
}
|
|
}
|