import Web3 from 'web3';
import { LiquidationAuction } from '../../web3-contracts/LiquidationAuction';
import { SystemContractInstance } from '../SystemContractInstance';
import { TransactionReceipt } from 'web3-eth';
import { AuctionInfo, QNonPayableTx } from '../../types';
/**
 * Liquidation auction instance to interact with Liquidation auction contract.
 * See [onchain documentation](@system-contracts-repo/@network/LiquidationAuction/) for more details.
 * An instance of this class for a deployed network can be obtained via {@link ContractRegistryInstance.liquidationAuction}
 */
export declare class LiquidationAuctionInstance extends SystemContractInstance<LiquidationAuction> {
    constructor(web3: Web3, address: string);
    /**
     * Get all auctions from block diapason
     * @param fromBlock first block from which we get all auctions
     * @param toBlock last block from which we get all auctions
     * @returns auctions
     */
    getAuctions(fromBlock?: string | number, toBlock?: string | number): Promise<{
        user: string;
        vaultId: string;
    }[]>;
    /**
     * [External documentation](@system-contracts-repo/@network/LiquidationAuction/#auctions)
     */
    getAuctionInfo(user: string, vaultId: string | number): Promise<AuctionInfo>;
    /**
     * [External documentation](@system-contracts-repo/@network/LiquidationAuction/#startauction)
     */
    startAuction(user: string, vaultId: string | number, bid: string | number, txOptions?: QNonPayableTx): Promise<TransactionReceipt>;
    /**
     * [External documentation](@system-contracts-repo/@network/LiquidationAuction/#bid)
     */
    bid(user: string, vaultId: string | number, bid: string | number, txOptions?: QNonPayableTx): Promise<TransactionReceipt>;
    /**
     * [External documentation](@system-contracts-repo/@network/LiquidationAuction/#execute)
     */
    execute(user: string, vaultId: string | number, txOptions?: QNonPayableTx): Promise<TransactionReceipt>;
    /**
     * [External documentation](@system-contracts-repo/@network/LiquidationAuction/#getraisingbid)
     */
    getRaisingBid(user: string, vaultId: string | number): Promise<string>;
}
