UNPKG

repoweaver

Version:

A GitHub App that skillfully weaves multiple templates together to create and update repositories with intelligent merge strategies

34 lines 1.29 kB
import { NextFunction, Request, Response } from 'express'; import { Database } from './database'; export interface AuthenticatedUser { id: number; login: string; name: string; email: string; avatarUrl: string; installationId?: number; } export interface AuthenticatedRequest extends Request { user?: AuthenticatedUser; } export declare class AuthManager { private clientId; private clientSecret; private database; constructor(clientId: string, clientSecret: string, database: Database); getAuthorizationUrl(state?: string): string; handleCallback(code: string, state?: string): Promise<AuthenticatedUser>; authenticateMiddleware(req: AuthenticatedRequest, res: Response, next: NextFunction): Promise<void>; requireInstallation(req: AuthenticatedRequest, res: Response, next: NextFunction): Promise<void>; logout(userId: number): Promise<void>; getInstallationRepositories(installationId: number): Promise<any[]>; } export declare class SessionManager { private sessions; generateSessionToken(): string; createSession(user: AuthenticatedUser): string; getSession(token: string): AuthenticatedUser | undefined; deleteSession(token: string): void; cleanup(): void; } //# sourceMappingURL=auth.d.ts.map