@mercury-labs/auth
Version:
Mercury framework auth library. It supports local auth, jwt with both bearer token and cookie, basic auth.
19 lines (18 loc) • 964 B
TypeScript
import { DynamicModule, InjectionToken, MiddlewareConsumer, ModuleMetadata, NestModule, OptionalFactoryDependency } from '@nestjs/common';
import { AuthRepository, PasswordHasherService } from './domain';
import { IAuthDefinitionsModuleOptions } from './infrastructure';
export interface IAuthModuleOptions extends Pick<ModuleMetadata, 'imports' | 'providers'> {
definitions: IAuthDefinitionsModuleOptions;
authRepository: {
useFactory: (...args: any[]) => Promise<AuthRepository> | AuthRepository;
inject?: Array<InjectionToken | OptionalFactoryDependency>;
};
passwordHasher?: {
useFactory: (...args: any[]) => Promise<PasswordHasherService> | PasswordHasherService;
inject?: Array<InjectionToken | OptionalFactoryDependency>;
};
}
export declare class AuthModule implements NestModule {
static forRootAsync(options: IAuthModuleOptions): DynamicModule;
configure(consumer: MiddlewareConsumer): void;
}