/** * OAuth2 Provider - GitHub * * Handles GitHub OAuth2 flow for user authentication */ export interface GitHubOAuthConfig { clientId: string; clientSecret: string; redirectUri: string; } export interface GitHubUser { id: number; login: string; email: string; name: string; avatar_url: string; } export interface GitHubTokenResponse { access_token: string; token_type: string; scope: string; } /** * Generate GitHub authorization URL */ export declare function getGitHubAuthorizationUrl(config: GitHubOAuthConfig, state: string): string; /** * Exchange authorization code for access token */ export declare function exchangeGitHubCode(config: GitHubOAuthConfig, code: string): Promise; /** * Fetch GitHub user profile */ export declare function getGitHubUser(accessToken: string): Promise;