62 lines
1.3 KiB
TypeScript
62 lines
1.3 KiB
TypeScript
import { BigNumber } from 'ethers'
|
|
|
|
/* eslint-disable no-unused-vars */
|
|
export enum State {
|
|
Up = 'UP',
|
|
Down = 'DOWN',
|
|
Warning = 'WARNING'
|
|
}
|
|
/* eslint-enable no-unused-vars */
|
|
|
|
export interface Status {
|
|
network: string
|
|
currentBlock: number
|
|
lastUpdatedOn: number
|
|
components: {
|
|
market: ComponentStatusBase
|
|
faucet: FaucetStatus | Record<string, never>
|
|
aquarius: AquariusStatus
|
|
provider: ProviderStatus
|
|
subgraph: SubgraphStatus
|
|
operator: OperatorStatus
|
|
dataFarming: ComponentStatusBase
|
|
}
|
|
}
|
|
|
|
export interface ComponentStatusBase {
|
|
status: State
|
|
statusMessages: string[]
|
|
response: number
|
|
version: string
|
|
}
|
|
|
|
export interface ProviderStatus extends ComponentStatusBase {
|
|
latestRelease: string
|
|
}
|
|
|
|
export interface AquariusStatus extends ComponentStatusBase {
|
|
validChainList: boolean
|
|
monitorVersion: string
|
|
latestRelease: string
|
|
block: number
|
|
validQuery: boolean
|
|
}
|
|
|
|
export interface SubgraphStatus extends ComponentStatusBase {
|
|
latestRelease: string
|
|
block: number
|
|
}
|
|
|
|
export interface OperatorStatus extends ComponentStatusBase {
|
|
latestRelease: string
|
|
environments: number
|
|
limitReached: boolean
|
|
}
|
|
|
|
export interface FaucetStatus extends ComponentStatusBase {
|
|
ethBalance?: BigNumber
|
|
ethBalanceSufficient?: boolean
|
|
oceanBalance?: BigNumber
|
|
oceanBalanceSufficient?: boolean
|
|
}
|