# HG changeset patch # User Kim Alvefur # Date 1678442150 -3600 # Node ID f9e474cb86acc91c3a1c04fe74c31bd35d2fdf41 # Parent 6cb339423928c87916bef876f8e60abb48a9658f util.jwt: Document interface as Teal definition file diff -r 6cb339423928 -r f9e474cb86ac teal-src/util/jwt.d.tl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/teal-src/util/jwt.d.tl Fri Mar 10 10:55:50 2023 +0100 @@ -0,0 +1,40 @@ +local record jwtlib + enum algorithm + "HS256" + "HS384" + "HS512" + "ES256" + "ES512" + "RS256" + "RS384" + "RS512" + "PS256" + "PS384" + "PS512" + end + type payload = { string : any } + type signer_t = function (payload : payload) : string + type verifier_t = function (token : string) : payload + enum key_type + "rsaEncryption" + "id-ecPublicKey" + end + record key_t + get_type : function (key_t) : key_type + end + record algorithm_t + sign : signer_t + verify : verifier_t + load_key : function (key : string) : key_t + end + init : function (algorithm, private_key : string, public_key : string, table) : signer_t, verifier_t + new_signer : function (algorithm, string, table) : signer_t + new_verifier : function (algorithm, string, table) : verifier_t + _algorithms : { + algorithm : algorithm_t + } + -- Deprecated + sign : function (string : key, payload) : string + verify : function (string) : payload +end +return jwtlib