using System; using System.Runtime.InteropServices; namespace System.Runtime.Serialization { /// Indicates a serialization surrogate selector class. // Token: 0x02000480 RID: 1152 [ComVisible(true)] public interface ISurrogateSelector { /// Specifies the next for surrogates to examine if the current instance does not have a surrogate for the specified type and assembly in the specified context. /// The next surrogate selector to examine. /// The caller does not have the required permission. // Token: 0x06002BFE RID: 11262 void ChainSelector(ISurrogateSelector selector); /// Returns the next surrogate selector in the chain. /// The next surrogate selector in the chain or null. /// The caller does not have the required permission. // Token: 0x06002BFF RID: 11263 ISurrogateSelector GetNextSelector(); /// Finds the surrogate that represents the specified object's type, starting with the specified surrogate selector for the specified serialization context. /// The appropriate surrogate for the given type in the given context. /// The of object (class) that needs a surrogate. /// The source or destination context for the current serialization. /// When this method returns, contains a that holds a reference to the surrogate selector where the appropriate surrogate was found. This parameter is passed uninitialized. /// The caller does not have the required permission. // Token: 0x06002C00 RID: 11264 ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector selector); } }