UNPKG

@mcp-abap-adt/connection

Version:

ABAP connection layer for MCP ABAP ADT server

38 lines 1.7 kB
import type { ITokenRefresher } from '@mcp-abap-adt/interfaces'; import { type AxiosResponse } from 'axios'; import type { SapConfig } from '../config/sapConfig.js'; import type { ILogger } from '../logger.js'; import type { AbapRequestOptions } from './AbapConnection.js'; import { AbstractAbapConnection } from './AbstractAbapConnection.js'; /** * JWT Authentication connection for SAP BTP Cloud systems * * Supports automatic token refresh via ITokenRefresher injection: * - If tokenRefresher is provided, 401/403 errors trigger automatic token refresh * - If tokenRefresher is not provided, 401/403 errors throw an error (legacy behavior) */ export declare class JwtAbapConnection extends AbstractAbapConnection { private tokenRefresher?; private currentToken; constructor(config: SapConfig, logger?: ILogger | null, sessionId?: string, tokenRefresher?: ITokenRefresher); protected buildAuthorizationHeader(): string; /** * Refresh the JWT token using the injected tokenRefresher * @returns true if token was refreshed, false if no refresher available */ private tryRefreshToken; /** * Override connect to handle JWT token refresh on errors */ connect(): Promise<void>; /** * Override makeAdtRequest to handle JWT auth errors with automatic token refresh */ makeAdtRequest(options: AbapRequestOptions): Promise<AxiosResponse>; /** * Override fetchCsrfToken to handle JWT auth errors with automatic token refresh */ protected fetchCsrfToken(url: string, retryCount?: number, retryDelay?: number): Promise<string>; private static validateConfig; } //# sourceMappingURL=JwtAbapConnection.d.ts.map