loopback4-authentication
Version:
A loopback-next extension for authentication feature. Various Oauth strategies supported by this package.
36 lines (35 loc) • 2.32 kB
TypeScript
/// <reference types="passport-apple" />
import { Context, Provider } from '@loopback/core';
import { Strategy } from 'passport';
import * as AzureADAuthStrategy from 'passport-azure-ad';
import * as FacebookStrategy from 'passport-facebook';
import * as GoogleStrategy from 'passport-google-oauth20';
import * as PassportBearer from 'passport-http-bearer';
import * as InstagramStrategy from 'passport-instagram';
import * as PassportLocal from 'passport-local';
import * as Auth0Strategy from 'passport-auth0';
import { AuthenticationMetadata, IAuthUser } from '../types';
import { LocalPasswordStrategyFactory } from './passport/passport-local';
import { Otp } from './passport/passport-otp';
import { Oauth2ResourceOwnerPassword } from './passport/passport-resource-owner-password';
import { VerifyFunction } from './types';
export type VerifierType = LocalPasswordStrategyFactory | VerifyFunction.LocalPasswordFn<IAuthUser> | undefined;
export declare class AuthStrategyProvider implements Provider<Strategy | undefined> {
private readonly metadata;
private readonly ctx;
constructor(metadata: AuthenticationMetadata, ctx: Context);
processLocalFactory(verifier: VerifierType): Promise<PassportLocal.Strategy>;
processBearerFactory(verifier: VerifierType): Promise<PassportBearer.Strategy<VerifyFunction.BearerFn<IAuthUser>>>;
processResourceOwnerFactory(verifier: VerifierType): Promise<Oauth2ResourceOwnerPassword.Strategy>;
processGoogleFactory(verifier: VerifierType): Promise<GoogleStrategy.Strategy>;
processAzureFactory(verifier: VerifierType): Promise<AzureADAuthStrategy.OIDCStrategy>;
processKeycloakFactory(verifier: VerifierType): Promise<any>;
processInstagramFactory(verifier: VerifierType): Promise<InstagramStrategy.Strategy>;
processAppleFactory(verifier: VerifierType): Promise<import("passport-apple")>;
processFacebookFactory(verifier: VerifierType): Promise<FacebookStrategy.Strategy>;
processCognitoFactory(verifier: VerifierType): any;
processOtpAuthFactory(verifier: VerifierType): Promise<Otp.Strategy>;
processAuth0Factory(verifier: VerifierType): Promise<Auth0Strategy.Strategy>;
processSamlFactory(verifier: VerifierType): Promise<import("@node-saml/passport-saml").Strategy>;
value(): Promise<Strategy | undefined>;
}