| File: Installer\ISerializableInstaller.cs | Web Access |
| Project: src\sdk\src\TemplateEngine\Microsoft.TemplateEngine.Abstractions\Microsoft.TemplateEngine.Abstractions.csproj (Microsoft.TemplateEngine.Abstractions) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using Microsoft.TemplateEngine.Abstractions.TemplatePackage; namespace Microsoft.TemplateEngine.Abstractions.Installer { /// <summary> /// Installer needs to implement this interface if installations to be done using built-in providers. /// <see cref="TemplatePackageData"/> is used to store information about installed template packages. /// </summary> public interface ISerializableInstaller { /// <summary> /// Deserializes <see cref="TemplatePackageData"/> to <see cref="IManagedTemplatePackage"/> that can be processed by <see cref="ISerializableInstaller"/>. /// </summary> /// <param name="provider">The provider that provides the data.</param> /// <param name="data">Data to serialize.</param> /// <returns>deserialized <see cref="IManagedTemplatePackage"/>.</returns> IManagedTemplatePackage Deserialize(IManagedTemplatePackageProvider provider, TemplatePackageData data); /// <summary> /// Serializes <see cref="IManagedTemplatePackage"/> to <see cref="TemplatePackageData"/>. /// </summary> /// <param name="templatePackage">template package to serialize. </param> /// <returns>serialized <see cref="TemplatePackageData"/>.</returns> TemplatePackageData Serialize(IManagedTemplatePackage templatePackage); } }