import { AleoProvider, AleoTransaction } from '@hyperlane-xyz/aleo-sdk'; import { Address, Domain, Numberish } from '@hyperlane-xyz/utils'; import { BaseAleoAdapter } from '../../app/MultiProtocolApp.js'; import { MultiProtocolProvider } from '../../providers/MultiProtocolProvider.js'; import { ChainName } from '../../types.js'; import { TokenMetadata } from '../types.js'; import { IHypTokenAdapter, ITokenAdapter, InterchainGasQuote, QuoteTransferRemoteParams, TransferParams, TransferRemoteParams } from './ITokenAdapter.js'; export declare class AleoTokenAdapter extends BaseAleoAdapter implements ITokenAdapter { readonly chainName: ChainName; readonly multiProvider: MultiProtocolProvider; readonly addresses: { token: Address; }; protected provider: AleoProvider; protected tokenAddress: string; protected getDenom(): Promise; constructor(chainName: ChainName, multiProvider: MultiProtocolProvider, addresses: { token: Address; }); getBalance(address: Address): Promise; getMetadata(): Promise; getMinimumTransferAmount(_recipient: Address): Promise; isApproveRequired(_owner: Address, _spender: Address, _weiAmountOrId: Numberish): Promise; isRevokeApprovalRequired(_owner: Address, _spender: Address): Promise; populateApproveTx(_params: TransferParams): Promise; populateTransferTx(transferParams: TransferParams): Promise; getTotalSupply(): Promise; } export declare class AleoNativeTokenAdapter extends AleoTokenAdapter implements ITokenAdapter { getMetadata(): Promise; } export declare class BaseAleoHypTokenAdapter extends AleoTokenAdapter implements IHypTokenAdapter { readonly chainName: ChainName; readonly multiProvider: MultiProtocolProvider; readonly addresses: { token: Address; }; constructor(chainName: ChainName, multiProvider: MultiProtocolProvider, addresses: { token: Address; }); protected getDenom(): Promise; getDomains(): Promise; getRouterAddress(domain: Domain): Promise; getAllRouters(): Promise>; getBridgedSupply(): Promise; quoteTransferRemoteGas({ destination, customHook, }: QuoteTransferRemoteParams): Promise; populateTransferRemoteTx(params: TransferRemoteParams): Promise; } export declare class AleoHypCollateralAdapter extends BaseAleoHypTokenAdapter { } export declare class AleoHypSyntheticAdapter extends BaseAleoHypTokenAdapter { } export declare class AleoHypNativeAdapter extends BaseAleoHypTokenAdapter implements ITokenAdapter { getDenom(): Promise; getMetadata(): Promise; } //# sourceMappingURL=AleoTokenAdapter.d.ts.map