import { Configuration } from 'openid-client'; import { type StepResult } from '../types/index.js'; export interface AuthConfig { issuerUrl: string; clientId: string; redirectUri?: string; scopes?: string[]; } export interface AuthResult { accessToken: string; refreshToken?: string | undefined; idToken?: string | undefined; userInfo?: Record | undefined; } export declare class Authenticator { private readonly config; private clientConfig?; private codeVerifier?; constructor(config: AuthConfig); getClientConfig(): Configuration; /** * Initialize the OAuth client by discovering the authorization server */ initialize(): Promise>; /** * Start the OAuth 2.0 with PKCE authentication flow */ authenticate(): Promise>; /** * Handle the browser-based OAuth flow */ private handleBrowserAuth; } export default Authenticator; //# sourceMappingURL=authenticator.d.ts.map