mirror of
https://github.com/titanscouting/tra-analysis.git
synced 2025-01-06 21:55:55 +00:00
62 lines
1.9 KiB
TypeScript
62 lines
1.9 KiB
TypeScript
/**
|
|
* Decodes a Firebase auth. token into constituent parts.
|
|
*
|
|
* Notes:
|
|
* - May return with invalid / incomplete claims if there's no native base64 decoding support.
|
|
* - Doesn't check if the token is actually valid.
|
|
*
|
|
* @param {?string} token
|
|
* @return {{header: *, claims: *, data: *, signature: string}}
|
|
*/
|
|
export declare const decode: (token: any) => {
|
|
header: {};
|
|
claims: {};
|
|
data: {};
|
|
signature: string;
|
|
};
|
|
/**
|
|
* Decodes a Firebase auth. token and checks the validity of its time-based claims. Will return true if the
|
|
* token is within the time window authorized by the 'nbf' (not-before) and 'iat' (issued-at) claims.
|
|
*
|
|
* Notes:
|
|
* - May return a false negative if there's no native base64 decoding support.
|
|
* - Doesn't check if the token is actually valid.
|
|
*
|
|
* @param {?string} token
|
|
* @return {boolean}
|
|
*/
|
|
export declare const isValidTimestamp: (token: any) => boolean;
|
|
/**
|
|
* Decodes a Firebase auth. token and returns its issued at time if valid, null otherwise.
|
|
*
|
|
* Notes:
|
|
* - May return null if there's no native base64 decoding support.
|
|
* - Doesn't check if the token is actually valid.
|
|
*
|
|
* @param {?string} token
|
|
* @return {?number}
|
|
*/
|
|
export declare const issuedAtTime: (token: any) => any;
|
|
/**
|
|
* Decodes a Firebase auth. token and checks the validity of its format. Expects a valid issued-at time.
|
|
*
|
|
* Notes:
|
|
* - May return a false negative if there's no native base64 decoding support.
|
|
* - Doesn't check if the token is actually valid.
|
|
*
|
|
* @param {?string} token
|
|
* @return {boolean}
|
|
*/
|
|
export declare const isValidFormat: (token: any) => boolean;
|
|
/**
|
|
* Attempts to peer into an auth token and determine if it's an admin auth token by looking at the claims portion.
|
|
*
|
|
* Notes:
|
|
* - May return a false negative if there's no native base64 decoding support.
|
|
* - Doesn't check if the token is actually valid.
|
|
*
|
|
* @param {?string} token
|
|
* @return {boolean}
|
|
*/
|
|
export declare const isAdmin: (token: any) => boolean;
|