var ProcessNode = /** @class */ (function () {
    function ProcessNode(executionGroupId, identityId, processId, nodeId) {
        this.executionGroupId = executionGroupId;
        this.identityId = identityId;
        this.processId = processId;
        this.nodeId = nodeId;
    }
    ProcessNode.isCurrentProcessNode = function (object) {
        return object
            && object["executionGroupId"]
            && object["processId"]
            && object["identityId"]
            && object["nodeId"];
    };
    ProcessNode.createFromSpecification = function (spec) {
        var enriched = spec.enriched;
        if (enriched === null || enriched === undefined)
            return null;
        if (!this.isCurrentProcessNode(enriched))
            return null;
        return new ProcessNode(enriched["executionGroupId"], enriched["identityId"], enriched["processId"], enriched["nodeId"]);
    };
    return ProcessNode;
}());
export { ProcessNode };
//# sourceMappingURL=ProcessNode.js.map