import { Provider, Signer } from 'ethers'; import { IClaimer } from './contracts/governance/IClaimer'; import { IHFT } from './contracts/governance/IHFT'; import { IHashflowFactory } from './contracts/protocol/IHashflowFactory'; import { IHashflowGovernance } from './contracts/protocol/IHashflowGovernance'; import { IHashflowLayerZeroUA } from './contracts/protocol/IHashflowLayerZeroUA'; import { IHashflowRouter } from './contracts/protocol/IHashflowRouter'; import { IHashflowTracker } from './contracts/protocol/IHashflowTracker'; import { ILayerZeroEndpoint } from './contracts/protocol/ILayerZeroEndpoint'; type ContractName = 'hft' | 'claimer' | 'governance' | 'factory' | 'router' | 'tracker' | 'layerZeroUA'; interface ContractNetworkInfo { address: string; transactionHash: string; } export declare class Contracts { signerOrProvider: Signer | Provider; provider: Provider; networkId: number; chain: number; HFT?: IHFT; hClaimer?: IClaimer; hGovernance: IHashflowGovernance; hFactory: IHashflowFactory; hRouter: IHashflowRouter; hTracker: IHashflowTracker; hLayerZeroUa: IHashflowLayerZeroUA; layerZeroEndpoint: ILayerZeroEndpoint; layerZeroUAsByNetwork: Record; constructor(networkId: number, signer?: Signer, provider?: Provider); } export declare const contractAddressesByNetwork: Record>; export {};