export declare class TransactionError extends Error {
}
export declare class Transaction {
    static idInc: number;
    id: number;
    began: Boolean;
    finished: Boolean;
    error: Error;
    commitListeners: Array<(Transaction: any) => Promise<any>>;
    rollbackListeners: Array<(Transaction: any) => Promise<any>>;
    endListeners: Array<(Transaction: any) => Promise<any>>;
    constructor();
    begin(): void;
    hasBegun(): Boolean;
    markError(e: any): void;
    addCommitListener(f: any): void;
    addRollbackListener(f: any): void;
    addEndListener(f: any): void;
    /**
     * @return {Promise} A promise that executes all the callbacks necessary
     */
    end(): Promise<void>;
    callListeners(listeners: any): Promise<void> | Promise<any[]>;
}
