function updatedObjects = update(targetObject, options)

    arguments (Input)
        targetObject (1, :) target.Object
        options.SuppressOutput (1, 1) logical = false
    end

    arguments (Output)
        updatedObjects target.Object {mustBeVector(updatedObjects, "allow-all-empties")}
    end

    internalObject = targetframework.internal.user.commandline.matlab.Helpers.unwrapValues(targetObject);
    namedargs = namedargs2cell(options);

    % Catch any error thrown by the internal APIs and rethrow it by hiding
    % the stack.
    try
        updatedInternalObjects = target.internal.update(internalObject, namedargs{:});
    catch exception
        throwAsCaller(exception);
    end

    updatedObjects = targetframework.internal.user.commandline.matlab.Helpers.wrapValues(updatedInternalObjects);
end

%   Copyright 2022 The MathWorks, Inc.