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: 0x0200045E RID: 1118 [Token(Token = "0x200045E")] [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: 0x0600269B RID: 9883 [Token(Token = "0x600269B")] [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: 0x0600269C RID: 9884 [Token(Token = "0x600269C")] [Address(Slot = "1")] object SetObjectData(object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector); } }