/**
 * GitHub Copilot sign-in via the OAuth device-authorization grant.
 */
import type { OAuthCredentials, OAuthProviderInterface } from "./types.js";
type LoginOptions = {
    onAuth: (url: string, instructions?: string) => void;
    onPrompt: (prompt: {
        message: string;
        placeholder?: string;
        allowEmpty?: boolean;
    }) => Promise<string>;
    onProgress?: (message: string) => void;
    signal?: AbortSignal;
};
export declare function normalizeDomain(raw: string): string | null;
/** Module-level entry point for resolving the Copilot API base URL. */
export declare function getGitHubCopilotBaseUrl(token?: string, enterpriseDomain?: string): string;
export declare function refreshGitHubCopilotToken(refreshToken: string, enterpriseDomain?: string): Promise<OAuthCredentials>;
export declare function loginGitHubCopilot(options: LoginOptions): Promise<OAuthCredentials>;
export declare function isGitHubCopilotOAuthCredentialsValid(credentials: OAuthCredentials): boolean;
export declare const githubCopilotOAuthProvider: OAuthProviderInterface;
export {};
