import { BigNumber } from 'ethers';
export interface BridgeInArgs {
    nonce: BigNumber;
    fromChain: BigNumber;
    holographableContract: string;
    hToken: string;
    hTokenRecipient: string;
    hTokenValue: BigNumber;
    doNotRevert: boolean;
    bridgeInPayload: string;
}
export interface BridgeInPayload {
    fromChain: BigNumber;
    payload: string;
}
export interface BridgeInErc20Args {
    from: string;
    to: string;
    amount: BigNumber;
    data: string;
}
export interface BridgeInErc721Args {
    from: number;
    to: string;
    tokenId: BigNumber;
    data: string;
}
export declare const decodeBridgeIn: (input: string) => BridgeInPayload;
export declare const decodeBridgeInErc20Args: (input: string) => BridgeInErc20Args;
export declare const decodeBridgeInErc721Args: (input: string) => BridgeInErc721Args;
export interface BridgeOutArgs {
    toChain: BigNumber;
    holographableContract: string;
    gasLimit: BigNumber;
    gasPrice: BigNumber;
    bridgeOutPayload: string;
}
export interface BridgeOutPayload {
    toChain: BigNumber;
    sender: string;
    payload: string;
}
export interface BridgeOutErc20Args {
    from: string;
    to: string;
    amount: BigNumber;
}
export interface BridgeOutErc721Args {
    from: string;
    to: string;
    tokenId: BigNumber;
}
export declare const decodeBridgeOut: (input: string) => BridgeOutPayload;
export declare const decodeBridgeOutErc20Args: (input: string) => BridgeOutErc20Args;
export declare const decodeBridgeOutErc721Args: (input: string) => BridgeOutErc721Args;
