using System.Collections.Generic; using System.Collections.Immutable; using System.Globalization; using System.Runtime.CompilerServices; namespace Barotrauma.LuaCs.Data; public interface IBaseResourceInfo : IResourceInfo, IDataInfo, IDependencyInfo {} public interface IConfigResourceInfo : IBaseResourceInfo {} /// /// Represents loadable Lua files. /// public interface ILuaScriptResourceInfo : IBaseResourceInfo { /// /// Should this script be run automatically. /// public bool IsAutorun { get; } } public interface IAssemblyResourceInfo : IBaseResourceInfo { /// /// The friendly name of the assembly. Script files belonging to the same assembly should all have the same name. /// Legacy scripts will all be given the sanitized name of the Content Package they belong to. /// public string FriendlyName { get; } /// /// Is this entry referring to a script file collection. /// public bool IsScript { get; } /// /// [Required(IsScript: true)] Whether the internal compiled assembly name should be named to enabled use of the /// attribute. /// public bool UseInternalAccessName { get; } } #region Collections public interface IAssembliesResourcesInfo { ImmutableArray Assemblies { get; } } public interface ILuaScriptsResourcesInfo { ImmutableArray LuaScripts { get; } } public interface IConfigsResourcesInfo { ImmutableArray Configs { get; } } #endregion