import { BaseAdapter } from '../base';
import { ILayerZeroChain, ILayerZeroToken, ILayerZeroTransferConfig } from './types';
import { BridgeType } from '../../shared/types';

export declare class LayerZeroAdapter extends BaseAdapter<ILayerZeroTransferConfig, ILayerZeroChain, ILayerZeroToken> {
    id: BridgeType;
    protected bridgedTokenGroups: never[];
    protected initChains(): void;
    protected initTokens(): void;
    protected initTransferMap(): void;
    getChainId(chain: ILayerZeroChain): number;
    getTokenBaseInfo({ chainId, token, }: {
        chainId: number;
        token: ILayerZeroToken;
    }): {
        displaySymbol: string;
        icon: string;
        name: string;
        symbol: string;
        address: string;
        decimals: number;
        details: {
            innerTokenProgramId: string;
            oftProgramId: string;
            escrowTokenAccount: string;
            oftPDA: string;
            mintAuthority: string;
        } | undefined;
    };
}
