/** * @fractary/core - GitHub App Token Provider * * TokenProvider implementation that wraps GitHubAppAuth. */ import type { TokenProvider, GitHubAppConfig } from './types'; /** * GitHub App token provider * * Implements the TokenProvider interface using GitHub App authentication. * Wraps GitHubAppAuth to provide automatic token caching and refresh. * * @example * ```typescript * const provider = new GitHubAppTokenProvider({ * id: '123456', * installation_id: '789012', * private_key_path: '/path/to/private-key.pem' * }); * * const token = await provider.getToken(); * ``` */ export declare class GitHubAppTokenProvider implements TokenProvider { private readonly auth; /** * Create a new GitHub App token provider * * @param config GitHub App configuration * @throws AuthenticationError if private key cannot be loaded */ constructor(config: GitHubAppConfig); /** * Get a valid authentication token * * Delegates to GitHubAppAuth.getInstallationToken() which handles * caching and automatic refresh. * * @returns Promise resolving to the installation access token * @throws AuthenticationError if token cannot be obtained */ getToken(): Promise; /** * Clear the token cache * * Forces the next getToken() call to fetch a fresh token. */ clearCache(): void; /** * Get cache information (for debugging) * * @returns Cache status or null if no cached token */ getCacheInfo(): { expiresAt: Date; isValid: boolean; } | null; } //# sourceMappingURL=github-app-token-provider.d.ts.map