import { Contract, PopulatedTransaction } from 'ethers';
import { Address, Domain } from '@hyperlane-xyz/utils';
import type { MultiProviderAdapter } from '../../providers/MultiProviderAdapter.js';
import { ChainName } from '../../types.js';
import { EvmTokenAdapter } from './EvmTokenAdapter.js';
import { IHypTokenAdapter, InterchainGasQuote, QuoteTransferRemoteParams, TransferRemoteParams } from './ITokenAdapter.js';
export declare class M0PortalLiteTokenAdapter extends EvmTokenAdapter implements IHypTokenAdapter<PopulatedTransaction> {
    private readonly portalAddress;
    readonly portalContract: Contract;
    constructor(multiProvider: MultiProviderAdapter, chainName: ChainName, portalAddress: Address, mTokenAddress: Address);
    getMinimumTransferAmount(_recipient: Address): Promise<bigint>;
    getDomains(): Promise<Domain[]>;
    getRouterAddress(_domain: Domain): Promise<Buffer>;
    getAllRouters(): Promise<Array<{
        domain: Domain;
        address: Buffer;
    }>>;
    getBridgedSupply(): Promise<bigint | undefined>;
    quoteTransferRemoteGas({ destination, sender, }: QuoteTransferRemoteParams): Promise<InterchainGasQuote>;
    populateTransferRemoteTx(params: TransferRemoteParams): Promise<PopulatedTransaction>;
}
//# sourceMappingURL=M0PortalLiteTokenAdapter.d.ts.map