// ------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All Rights Reserved. Licensed under the MIT License. See License in the project root for license information.
// ------------------------------------------------------------------------------
namespace Microsoft.Graph
{
using System.IO;
///
/// An interface for serializing and deserializing JSON objects.
///
public interface ISerializer
{
///
/// Deserializes the stream to an object of the specified type.
///
/// The deserialization type.
/// The stream to deserialize.
/// The deserialized object.
T DeserializeObject(Stream stream);
///
/// Deserializes the JSON string to an object of the specified type.
///
/// The deserialization type.
/// The JSON string to deserialize.
/// The deserialized object.
T DeserializeObject(string inputString);
///
/// Serializes the specified object into a JSON string.
///
/// The object to serialize.
/// The JSON string.
string SerializeObject(object serializeableObject);
}
}