UNPKG

agil-auth-node

Version:
139 lines (138 loc) 3.24 kB
import { Database as SQLite3Database } from 'sqlite3'; interface Database { path?: string; userTokensFolder?: string; usersFolder?: string; instance?: SQLite3Database; } interface TokenData { userId: any; token: string; expireAt: number; } /** * Settings */ export declare class Settings { /** * Data */ private tokenLifeTime; private hideFields; private database; private sqlCreateUserTokensTable; private sqlCreateUsersTable; /** * Get database settings */ getDatabase(): Database; /** * Set hidden fields */ setHiddenFields(...fields: string[]): this; /** * Get hidden fields */ getHiddenFields(): string[]; /** * Merge database settings */ mergeDatabase(settings?: Database): this; /** * Get token life time in seconds */ getTokenLifeTime(): number; /** * Set token life time in seconds */ setTokenLifeTime(lifeTime: number): this; /** * Get current timestamp */ getCurrentTimestamp(): number; /** * Get next expire timestamp */ getNextExpireTimestamp(): number; /** * Compare attempt to auth */ compareAttempt(toCompare: { [key: string]: any; }, rawUserData: { [key: string]: any; }): boolean; /** * Set method "compareAttempt" */ setMethodCompareAttempt(fn: (toCompare: { [key: string]: any; }, rawUserData: { [key: string]: any; }) => boolean): this; /** * Get user data */ getUserData(data?: { [key: string]: any; }): Promise<{ [key: string]: any; }>; /** * Set method "getUserData" */ setMethodGetUserData(fn: (data: { [key: string]: any; }) => Promise<{ [key: string]: any; }>): this; /** * Create user data */ createUserData(data?: { [key: string]: any; }): Promise<{ [key: string]: any; }>; /** * Set method "createUserData" */ setMethodCreateUserData(fn: (data: { [key: string]: any; }) => Promise<{ [key: string]: any; }>): this; /** * Store user token */ createUserToken(userId: any, token: string, expireAt: number): Promise<TokenData>; /** * Set method "createUserToken" */ setMethodCreateUserToken(fn: (userId: any, token: string, expireAt: number) => Promise<TokenData>): this; /** * Get token data */ getUserToken(userId: any, token: string): Promise<TokenData | null>; /** * Set method "getUserToken" */ setMethodGetUserToken(fn: (userId: any, token: string) => Promise<TokenData | null>): this; /** * Get all user tokens */ getUserAllTokens(userId: any): Promise<TokenData[]>; /** * Set method "getUserAllTokens" */ setMethodGetUserAllTokens(fn: (userId: any) => Promise<TokenData[]>): this; /** * Delete user token */ deleteUserToken(userId: any, token: string): Promise<void>; /** * Set method "deleteUserToken" */ setMethodDeleteUserToken(fn: (userId: any, token: string) => Promise<void>): this; } export {};