File

teal-src/util/promise.d.tl @ 12641:e9865b0cfb89

mod_saslauth: Rename field from 'scope'->'role' The 'scope' term derives from OAuth, and represents a bundle of permissions. We're now setting on the term 'role' for a bundle of permissions. This change does not affect any public modules I'm aware of.
author Matthew Wild <mwild1@gmail.com>
date Wed, 15 Jun 2022 11:47:39 +0100
parent 12612:588b1d175838
line wrap: on
line source


local record lib
	type resolve_func = function (any)
	type promise_body = function (resolve_func, resolve_func)

	record Promise<A, B>
		type on_resolved = function (A) : any
		type on_rejected = function (B) : any
		next : function (Promise, on_resolved, on_rejected) : Promise<any, any>
	end

	new : function (promise_body) : Promise
	resolve : function (any) : Promise
	reject : function (any) : Promise
	all : function ({ Promise }) : Promise
	all_settled : function ({ Promise }) : Promise
	race : function ({ Promise }) : Promise
	try : function
	is_promise : function(any) : boolean
end

return lib