import { Ownable } from '@abacus-network/core'; import type { types } from '@abacus-network/utils'; import { AbacusApp } from '../AbacusApp'; import { MultiProvider } from '../providers/MultiProvider'; import { BeaconProxyAddresses } from '../proxy'; import { ChainMap, ChainName } from '../types'; import { CheckerViolation } from './types'; export declare abstract class AbacusAppChecker, Config> { readonly multiProvider: MultiProvider; readonly app: App; readonly configMap: ChainMap; readonly violations: CheckerViolation[]; constructor(multiProvider: MultiProvider, app: App, configMap: ChainMap); abstract checkChain(chain: Chain): Promise; check(): Promise; addViolation(violation: CheckerViolation): void; checkUpgradeBeacon(chain: Chain, name: string, proxiedAddress: BeaconProxyAddresses): Promise; checkOwnership(chain: Chain, owner: types.Address, ownables: Ownable[]): Promise; expectViolations(types: string[], expectedMatches: number[]): void; expectEmpty(): void; } //# sourceMappingURL=AbacusAppChecker.d.ts.map