mirror of
				https://github.com/folke/lazy.nvim.git
				synced 2025-10-31 14:31:04 +00:00 
			
		
		
		
	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
					
				
			
		
					 2 changed files with 60 additions and 48 deletions
				
			
		|  | @ -5,54 +5,6 @@ local Cache = require("lazy.core.cache") | |||
| 
 | ||||
| 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 | ||||
| ---@field plugins table<string, LazyPlugin> | ||||
| ---@field errors string[] | ||||
|  |  | |||
							
								
								
									
										60
									
								
								lua/lazy/types.lua
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								lua/lazy/types.lua
									
										
									
									
									
										Normal file
									
								
							|  | @ -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…
	
	Add table
		Add a link
		
	
		Reference in a new issue