File

teal-src/util/roles.d.tl @ 12671:32881d0c359f

mod_auth_insecure: Store creation and update timestamps on account This ensures that the store is not empty in case no password is provided, so the underlying data storage won't consider the store empty.
author Kim Alvefur <zash@zash.se>
date Thu, 18 Aug 2022 18:10:44 +0200
parent 12661:1c391c17a907
line wrap: on
line source

local record util_roles

	type context = any

	record Role
		id : string
		name : string
		description : string
		default : boolean
		priority : number -- or integer?
		permissions : { string : boolean }

		may : function (Role, string, context)
		clone : function (Role, role_config)
		set_permission : function (Role, string, boolean, boolean)
	end

	is_role : function (any) : boolean

	record role_config
		name : string
		description : string
		default : boolean
		priority : number -- or integer?
		inherits : { Role }
		permissions : { string : boolean }
	end

	new : function (role_config, Role) : Role
end

return util_roles