/// import { GenesisBlockExecuteContext } from '../../state_machine'; import { TokenMethod } from '../token'; import { BaseCCCommand } from './base_cc_command'; import { BaseCCMethod } from './base_cc_method'; import { BaseInteroperableModule } from './base_interoperable_module'; import { ChainInfo, GenesisInteroperability } from './types'; export declare abstract class BaseInteroperabilityModule extends BaseInteroperableModule { protected interoperableCCCommands: Map[]>; protected interoperableCCMethods: Map; protected tokenMethod: TokenMethod; constructor(); get name(): string; registerInteroperableModule(module: BaseInteroperableModule): void; protected _verifyChannelData(ctx: GenesisBlockExecuteContext, chainInfo: ChainInfo): void; protected _verifyChainValidators(chainInfo: ChainInfo): void; protected _verifyChainID(chainID: Buffer, mainchainID: Buffer, prefix: string): void; protected _verifyTerminatedStateAccountsIDs(chainIDs: Buffer[]): void; processGenesisState(ctx: GenesisBlockExecuteContext, genesisInteroperability: GenesisInteroperability): Promise; finalizeGenesisState?(ctx: GenesisBlockExecuteContext): Promise; }