mirror of https://github.com/folke/lazy.nvim.git
style(plugin): improved types a bit, but sumneko still can't handle them since they're recursive
This commit is contained in:
parent
8a3152de93
commit
38a9541939
|
@ -5,54 +5,6 @@ local Cache = require("lazy.core.cache")
|
||||||
|
|
||||||
local M = {}
|
local M = {}
|
||||||
|
|
||||||
---@alias LazyPluginKind "normal"|"clean"
|
|
||||||
|
|
||||||
---@class LazyPluginState
|
|
||||||
---@field loaded? {[string]:string}|{time:number}
|
|
||||||
---@field installed boolean
|
|
||||||
---@field tasks? LazyTask[]
|
|
||||||
---@field dirty? boolean
|
|
||||||
---@field updated? {from:string, to:string}
|
|
||||||
---@field is_local boolean
|
|
||||||
---@field has_updates? boolean
|
|
||||||
---@field cloned? boolean
|
|
||||||
---@field kind? LazyPluginKind
|
|
||||||
---@field dep? boolean True if this plugin is only in the spec as a dependency
|
|
||||||
---@field cond? boolean
|
|
||||||
|
|
||||||
---@class LazyPluginHooks
|
|
||||||
---@field init? fun(LazyPlugin) Will always be run
|
|
||||||
---@field config? fun(LazyPlugin)|true|table Will be executed when loading the plugin
|
|
||||||
---@field build? string|fun(LazyPlugin)|(string|fun(LazyPlugin))[]
|
|
||||||
|
|
||||||
---@class LazyPluginHandlers: table<LazyHandlerTypes, string|string[]>
|
|
||||||
---@field event? string[]
|
|
||||||
---@field cmd? string[]
|
|
||||||
---@field ft? string[]
|
|
||||||
---@field keys? string[]
|
|
||||||
---@field module? false
|
|
||||||
|
|
||||||
---@class LazyPluginRef
|
|
||||||
---@field branch? string
|
|
||||||
---@field tag? string
|
|
||||||
---@field commit? string
|
|
||||||
---@field version? string
|
|
||||||
---@field pin? boolean
|
|
||||||
|
|
||||||
---@class LazyPlugin: LazyPluginHandlers,LazyPluginHooks,LazyPluginRef
|
|
||||||
---@field [1] string?
|
|
||||||
---@field name string display name and name used for plugin config files
|
|
||||||
---@field url string?
|
|
||||||
---@field dir string
|
|
||||||
---@field enabled? boolean|(fun():boolean)
|
|
||||||
---@field cond? boolean|(fun():boolean)
|
|
||||||
---@field lazy? boolean
|
|
||||||
---@field dev? boolean If set, then link to the respective folder under your ~/projects
|
|
||||||
---@field dependencies? string[]
|
|
||||||
---@field _ LazyPluginState
|
|
||||||
|
|
||||||
---@alias LazySpec string|LazyPlugin|LazyPlugin[]|{dependencies:LazySpec}
|
|
||||||
|
|
||||||
---@class LazySpecLoader
|
---@class LazySpecLoader
|
||||||
---@field plugins table<string, LazyPlugin>
|
---@field plugins table<string, LazyPlugin>
|
||||||
---@field errors string[]
|
---@field errors string[]
|
||||||
|
|
|
@ -0,0 +1,60 @@
|
||||||
|
|
||||||
|
---@alias LazyPluginKind "normal"|"clean"
|
||||||
|
|
||||||
|
---@class LazyPluginState
|
||||||
|
---@field loaded? {[string]:string}|{time:number}
|
||||||
|
---@field installed boolean
|
||||||
|
---@field tasks? LazyTask[]
|
||||||
|
---@field dirty? boolean
|
||||||
|
---@field updated? {from:string, to:string}
|
||||||
|
---@field is_local boolean
|
||||||
|
---@field has_updates? boolean
|
||||||
|
---@field cloned? boolean
|
||||||
|
---@field kind? LazyPluginKind
|
||||||
|
---@field dep? boolean True if this plugin is only in the spec as a dependency
|
||||||
|
---@field cond? boolean
|
||||||
|
|
||||||
|
---@class LazyPluginHooks
|
||||||
|
---@field init? fun(LazyPlugin) Will always be run
|
||||||
|
---@field config? fun(LazyPlugin)|true|table Will be executed when loading the plugin
|
||||||
|
---@field build? string|fun(LazyPlugin)|(string|fun(LazyPlugin))[]
|
||||||
|
|
||||||
|
---@class LazyPluginHandlers
|
||||||
|
---@field event? string[]
|
||||||
|
---@field cmd? string[]
|
||||||
|
---@field ft? string[]
|
||||||
|
---@field keys? string[]
|
||||||
|
---@field module? false
|
||||||
|
|
||||||
|
---@class LazyPluginRef
|
||||||
|
---@field branch? string
|
||||||
|
---@field tag? string
|
||||||
|
---@field commit? string
|
||||||
|
---@field version? string
|
||||||
|
---@field pin? boolean
|
||||||
|
|
||||||
|
---@class LazyPluginBase
|
||||||
|
---@field [1] string?
|
||||||
|
---@field name string display name and name used for plugin config files
|
||||||
|
---@field url string?
|
||||||
|
---@field dir string
|
||||||
|
---@field enabled? boolean|(fun():boolean)
|
||||||
|
---@field cond? boolean|(fun():boolean)
|
||||||
|
---@field lazy? boolean
|
||||||
|
---@field dev? boolean If set, then link to the respective folder under your ~/projects
|
||||||
|
|
||||||
|
---@class LazyPlugin: LazyPluginBase,LazyPluginHandlers,LazyPluginHooks,LazyPluginRef
|
||||||
|
---@field dependencies? string[]
|
||||||
|
---@field _ LazyPluginState
|
||||||
|
|
||||||
|
---@class LazyPluginSpecHandlers
|
||||||
|
---@field event? string[]|string
|
||||||
|
---@field cmd? string[]|string
|
||||||
|
---@field ft? string[]|string
|
||||||
|
---@field keys? string|string[]|LazyKeys[]
|
||||||
|
---@field module? false
|
||||||
|
|
||||||
|
---@class LazyPluginSpec: LazyPluginBase,LazyPluginSpecHandlers,LazyPluginHooks,LazyPluginRef
|
||||||
|
---@field dependencies? string|string[]|LazyPluginSpec[]
|
||||||
|
|
||||||
|
---@alias LazySpec string|string[]|LazyPluginSpec[]|LazyPluginSpec[][]
|
Loading…
Reference in New Issue