using System.Collections.Generic;
namespace Umbraco.Core.Deploy
{
public interface IMacroParser
{
///
/// Parses an Umbraco property value and produces an artifact property value.
///
/// Property value.
/// A list of dependencies.
/// Parsed value.
string ToArtifact(string value, ICollection dependencies);
///
/// Parses an artifact property value and produces an Umbraco property value.
///
/// Artifact property value.
/// Parsed value.
string FromArtifact(string value);
///
/// Tries to replace the value of the attribute/parameter with a value containing a converted identifier.
///
/// Value to attempt to convert
/// Alias of the editor used for the parameter
/// Collection to add dependencies to when performing ToArtifact
/// Indicates which action is being performed (to or from artifact)
/// Value with converted identifiers
string ReplaceAttributeValue(string value, string editorAlias, ICollection dependencies, Direction direction);
}
}