using System; using System.Runtime.InteropServices; using Cpp2IlInjected; namespace System.Runtime.Serialization { /// Implements a serialization surrogate selector that allows one object to perform serialization and deserialization of another. // Token: 0x02000442 RID: 1090 [Token(Token = "0x2000442")] [ComVisible(true)] public interface ISerializationSurrogate { /// Populates the provided with the data needed to serialize the object. /// The object to serialize. /// The to populate with data. /// The destination (see ) for this serialization. /// The caller does not have the required permission. // Token: 0x0600248F RID: 9359 [Token(Token = "0x600248F")] [Address(Slot = "0")] void GetObjectData(object obj, SerializationInfo info, StreamingContext context); /// Populates the object using the information in the . /// The object to populate. /// The information to populate the object. /// The source from which the object is deserialized. /// The surrogate selector where the search for a compatible surrogate begins. /// The populated deserialized object. /// The caller does not have the required permission. // Token: 0x06002490 RID: 9360 [Token(Token = "0x6002490")] [Address(Slot = "1")] object SetObjectData(object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector); } }