using System;
using UnityEngine;

namespace RebootKit.Engine.Foundation {
    public interface IService : IDisposable {
    }

    public abstract class ServiceMonoBehaviour : MonoBehaviour, IService {
        public abstract void Dispose();
    }

    public abstract class ServiceAsset<T> : FactoryAsset<T> where T : class, IService {
    }

    public abstract class ServiceAsset : ServiceAsset<IService> {
    }
}