import { UnifiedSteemTransaction } from "./UnifiedSteemTransaction";
export declare class SteemOperationNumber {
    blockNum: number;
    transactionNum: number;
    operationNum: number;
    static FUTURE: SteemOperationNumber;
    static NOW: SteemOperationNumber;
    static NEVER: SteemOperationNumber;
    constructor(blockNum: number, transactionNum: number, operationNum?: number);
    isGreaterThan(tn: SteemOperationNumber): boolean;
    isGreaterOrEqual(tn: SteemOperationNumber): boolean;
    isLesserThan(tn: SteemOperationNumber): boolean;
    /**
     * There is a bug in account_history api: op_in_trx is always zero in returned operations.
     * This prevents proper comparison of SteemOperationNumbers. Thuswe have to use the following hack in some places.
     * Issue: https://github.com/steemit/steem/issues/2272 It is solved, but in api.steemit.com endpoint the bug still exists.
     * TODO: Stop using this function when the bug is solved. There is a separate function, because it would be
     * dangerous (easy to forget about) to solve the bug implicitly.
     */
    isLesserThan_solveOpInTrxBug(tn: SteemOperationNumber): boolean;
    isLesserOrEqual(tn: SteemOperationNumber): boolean;
    isEqual(tn: SteemOperationNumber): boolean;
    /**
     * There is a bug in account_history api: op_in_trx is always zero in returned operations.
     * This prevents proper comparison of SteemOperationNumbers. Thuswe have to use the following hack in some places.
     * Issue: https://github.com/steemit/steem/issues/2272 It is solved, but in api.steemit.com endpoint the bug still exists.
     * TODO: Stop using this function when the bug is solved. There is a separate function, because it would be
     * dangerous (easy to forget about) to solve the bug implicitly.
     */
    isEqual_solveOpInTrxBug(tn: SteemOperationNumber): boolean;
    addTransactions(txNum: number): SteemOperationNumber;
    toString(): string;
    static fromTransaction(op: UnifiedSteemTransaction, operationNum?: number): SteemOperationNumber;
    static compare(sonA: SteemOperationNumber, sonB: SteemOperationNumber): number;
    clone(): SteemOperationNumber;
}
