UNPKG

cnpmcore

Version:

Private NPM Registry for Enterprise

57 lines (56 loc) 2.24 kB
import '@eggjs/typebox-validate'; import { Type, type Static } from '@eggjs/typebox-validate/typebox'; import type { PublicKeyCredentialCreationOptionsJSON, PublicKeyCredentialRequestOptionsJSON } from '@simplewebauthn/typescript-types'; import { type EggContext, type EggAppConfig, type EggLogger } from 'egg'; import type { UserService } from '../../core/service/UserService.ts'; import { MiddlewareController } from '../middleware/index.ts'; declare const LoginRequestRule: Type.TObject<{ hostname: Type.TOptional<Type.TString>; }>; type LoginRequest = Static<typeof LoginRequestRule>; interface LoginPrepareResult { wanStatus: number; wanCredentialRegiOption?: PublicKeyCredentialCreationOptionsJSON; wanCredentialAuthOption?: PublicKeyCredentialRequestOptionsJSON; } interface LoginImplementRequest { accData: { username: string; password: string; }; wanCredentialRegiData: unknown; wanCredentialAuthData: unknown; needUnbindWan: boolean; } export declare class WebauthController extends MiddlewareController { private cacheAdapter; private authAdapter; protected logger: EggLogger; protected config: EggAppConfig; protected userService: UserService; login(ctx: EggContext, loginRequest: LoginRequest): Promise<import("../../common/typing.ts").AuthUrlResult>; loginRender(ctx: EggContext, sessionId: string): Promise<"<h1>😭😭😭 Session not found, please try again on your command line 😭😭😭</h1>" | undefined>; loginImplement(ctx: EggContext, sessionId: string, loginImplementRequest: LoginImplementRequest): Promise<{ ok: boolean; message: string; } | { ok: boolean; message?: undefined; }>; loginPrepare(ctx: EggContext, sessionId: string, name: string): Promise<LoginPrepareResult | { ok: boolean; message: string; }>; ssoRequest(ctx: EggContext, sessionId: string): Promise<{ success: boolean; }>; loginRequestSuccess(ctx: EggContext): Promise<string>; loginDone(ctx: EggContext, sessionId: string): Promise<{ message: string; token?: undefined; } | { token: string; message?: undefined; }>; } export {};