UNPKG

open-collaboration-server

Version:

Open Collaboration Server implementation, part of the Open Collaboration Tools project

32 lines 1.4 kB
import { User } from './types.js'; import { UserManager } from './user-manager.js'; import { nanoid } from 'nanoid'; import { Disposable, Event } from 'open-collaboration-protocol'; import { Logger } from './utils/logging.js'; import { UserInfo } from './auth-endpoints/auth-endpoint.js'; import { Configuration } from './utils/configuration.js'; export interface DelayedAuth extends Disposable { update(jwt: string): void; onUpdate: Event<string>; onFail: Event<Error>; jwt?: string; } export declare class CredentialsManager { protected readonly userManager: UserManager; protected logger: Logger; protected configuration: Configuration; protected deferredAuths: Map<string, DelayedAuth>; protected nanoid: typeof nanoid; initialize(): void; confirmUser(confirmToken: string, user: UserInfo): Promise<string>; startAuth(): Promise<string>; getAuth(confirmToken: string): Promise<DelayedAuth | undefined>; getUser(token: string): Promise<User | undefined>; verifyJwt<T extends object>(jwt: string, verify: (obj: unknown) => obj is T): Promise<T>; protected getJwtPrivateKey(): Uint8Array; generateJwt(payload: object): Promise<string>; protected getJwtExpiration(): Promise<string | number | undefined>; protected generateAlphabet(): typeof nanoid; secureId(): string; } //# sourceMappingURL=credentials-manager.d.ts.map