/// <reference types="node" />
import { EventEmitter } from "events";
import { ActiveDSConnect } from "@activeledger/activeoptions";
import { ActiveCrypto } from "@activeledger/activecrypto";
import { ActiveDefinitions } from "@activeledger/activedefinitions";
export declare class Process extends EventEmitter {
    private entry;
    private selfHost;
    private reference;
    private right;
    private db;
    private dbe;
    private dbev;
    private secured;
    private static generalContractVM;
    private static defaultContractsVM;
    private static singleContractVMHolder;
    private isDefault;
    private contractRef;
    private inputs;
    private outputs;
    private checkRevs;
    private nodeResponse;
    private contractLocation;
    private contractId;
    private commiting;
    private voting;
    private storeSingleError;
    private errorOut;
    private broadcastTimeout;
    private currentVotes;
    private securityCache;
    private shared;
    private permissionChecker;
    private willEmit;
    private willEmitData;
    constructor(entry: ActiveDefinitions.LedgerEntry, selfHost: string, reference: string, right: ActiveDefinitions.INeighbourBase, db: ActiveDSConnect, dbe: ActiveDSConnect, dbev: ActiveDSConnect, secured: ActiveCrypto.Secured);
    destroy(umid: string): void;
    private sortVersions;
    start(contractVersion?: string): Promise<void>;
    updatedFromBroadcast(node?: any): void;
    isCommiting(): boolean;
    private processDefaultContracts;
    private processUnsafeContracts;
    private handleVM;
    private process;
    private postVote;
    emitFailed(data?: {
        status: number;
        error: string | Error;
    }): void;
    private hasOutstandingVotes;
    private initRightKnock;
    private sleep;
    private canCommit;
    private commit;
    private getReadOnlyStreams;
    private labelOrKey;
}
//# sourceMappingURL=process.d.ts.map