// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
namespace WixToolset.Extensibility
{
using System.Collections.Generic;
using WixToolset.Data;
using WixToolset.Data.Bind;
public interface IBinderFileManagerCore : IMessageHandler
{
///
/// Gets or sets the path to cabinet cache.
///
/// The path to cabinet cache.
string CabCachePath { get; }
///
/// Gets or sets the active subStorage used for binding.
///
/// The subStorage object.
SubStorage ActiveSubStorage { get; }
///
/// Gets or sets the output object used for binding.
///
/// The output object.
Output Output { get; }
///
/// Gets or sets the path to the temp files location.
///
/// The path to the temp files location.
string TempFilesLocation { get; }
///
/// Gets the property if re-basing target is true or false
///
/// It returns true if target bind path is to be replaced, otherwise false.
bool RebaseTarget { get; }
///
/// Gets the property if re-basing updated build is true or false
///
/// It returns true if updated bind path is to be replaced, otherwise false.
bool RebaseUpdated { get; }
///
/// Gets the collection of paths to locate files during ResolveFile for the provided BindStage and name.
///
/// Optional stage to get bind paths for. Default is normal.
/// Optional name of the bind paths to get. Default is the unnamed paths.
/// The bind paths to locate files.
IEnumerable GetBindPaths(BindStage stage = BindStage.Normal, string name = null);
}
}