using UnityEngine;
namespace UnityEditor.XR.Management.Metadata
{
///
/// Implement this interface to provide package level information and actions.
///
/// XR Plug-in Management will reflect on all types in the project to find implementers
/// of this interface. These instances are used to get information required to integrate
/// your package with the XR Plug-in Management system.
///
public interface IXRPackage
{
///
/// Returns an instance of . Information will be used
/// to allow the XR Plug-in Management to provide settings and loaders through the settings UI.
///
IXRPackageMetadata metadata { get; }
///
/// Allows the package to configure new settings and/or port old settings to the instance passed
/// in.
///
///
/// ScriptableObject instance representing an instance of the settings
/// type provided by .
/// True if the operation succeeded, false if not. If implementation is empty, just return true.
bool PopulateNewSettingsInstance(ScriptableObject obj);
}
}