// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
using System.Management.Automation;
namespace Microsoft.Windows.PowerShell.ScriptAnalyzer
{
///
/// Provides an interface for writing output to a PowerShell session.
///
public interface IOutputWriter
{
///
/// Writes an error to the session.
///
/// The ErrorRecord to write.
void WriteError(ErrorRecord error);
///
/// Writes a warning to the session.
///
/// The warning string to write.
void WriteWarning(string message);
///
/// Writes a verbose message to the session.
///
/// The verbose message to write.
void WriteVerbose(string message);
///
/// Writes a debug message to the session.
///
/// The debug message to write.
void WriteDebug(string message);
///
/// Throws a terminating error in the session.
///
/// The ErrorRecord which describes the failure.
void ThrowTerminatingError(ErrorRecord record);
}
}