import { Struct, Vec } from "../../codec";
import { Bytes, u32 } from "../../primitive";
import { BlockNumber, Signature } from "../runtime";
import { SessionIndex } from "../session";
/** @name AuthIndex */
export interface AuthIndex extends u32 {
}
/** @name AuthoritySignature */
export interface AuthoritySignature extends Signature {
}
/** @name Heartbeat */
export interface Heartbeat extends Struct {
    readonly blockNumber: BlockNumber;
    readonly networkState: OpaqueNetworkState;
    readonly sessionIndex: SessionIndex;
    readonly authorityIndex: AuthIndex;
}
/** @name OpaqueMultiaddr */
export interface OpaqueMultiaddr extends Bytes {
}
/** @name OpaqueNetworkState */
export interface OpaqueNetworkState extends Struct {
    readonly peerId: OpaquePeerId;
    readonly externalAddresses: Vec<OpaqueMultiaddr>;
}
/** @name OpaquePeerId */
export interface OpaquePeerId extends Bytes {
}
