/// import { juggler } from '@loopback/repository'; import { UserProfile } from '@loopback/security'; import { AuthenticateFn } from '@loopback/authentication'; import { Request } from '@loopback/rest'; export interface UserWithRole extends UserProfile { id: number; uniqKey: string; ownerCustomerId: number; password: string; emailVerified: number; status: string; roleId: number; roleName: string; } export type Credentials = { email: string; password: string; }; export interface AuthenticateFunc extends AuthenticateFn { (request: Request): Promise; } export interface AuthorizationFn { (route: any, userInfo: UserWithRole): Promise; } export interface FLCL_AUTHZ_OPTIONS { skip: boolean; } export interface FLCL_AUTHN_OPTIONS { strategy?: string; skip?: boolean; } export interface FLCL_AUTHN_OPTIONS_2 { strategy: string; skip?: boolean; } export interface CONFIGURATIONS { dataSourceName?: string; dataSource?: juggler.DataSource; }