import { GovernanceContracts } from '.'; import { Call } from '..'; import { ethers } from 'ethers'; import { types } from '@abacus-network/utils'; import { AbacusApp } from '../app'; import { MultiProvider } from '../provider'; import { ChainMap, ChainName } from '../types'; import { GovernanceAddresses } from './contracts'; import { environments } from './environments'; declare type Environments = typeof environments; declare type EnvironmentName = keyof Environments; export declare type Governor = { domain: number; identifier: string; }; export declare class AbacusGovernance extends AbacusApp { constructor(networkAddresses: ChainMap, multiProvider: MultiProvider); static fromEnvironment(name: EnvironmentName, multiProvider: MultiProvider): AbacusGovernance; pushCall(network: Networks, call: Call): void; getCalls(network: Networks): Call[]; networkCalls: () => ChainMap; routers: () => Record; routerAddresses: () => Record; governor: () => Promise<{ network: Networks; address: types.Address; }>; build: () => Promise; execute: (signer: ethers.Signer) => Promise; estimateGas: (provider: ethers.providers.Provider) => Promise; } export {}; //# sourceMappingURL=app.d.ts.map