import type { AutotaskClientConfig, AutotaskErrorItem } from "../types/index.js"; import type { Logger } from "../types/logger.js"; import type { RetryConfig } from "../types/index.js"; import type { RateLimitManager } from "../rate-limiting/RateLimitManager.js"; import type { SdkContinuationTokenPayload } from "../types/index.js"; import { ClientLogger } from "./logger.js"; /** * API Compatibility wrapper class that provides all the delegation methods * needed for maintaining test compatibility while using extracted modules */ export declare class ApiCompatibilityWrapper { private clientConfig; private finalApiBaseUrl; private retryConfig; private logger; private clientLogger; private rateLimitManager?; constructor(clientConfig: AutotaskClientConfig, finalApiBaseUrl: string, retryConfig: Required, logger: Logger, clientLogger: ClientLogger, rateLimitManager?: RateLimitManager | undefined); /** * Parse Autotask API error response - delegates to error-parser module */ parseAutotaskApiErrorResponse(responseBodyText: string | undefined | null): AutotaskErrorItem[] | undefined; /** * Build final API base URL - delegates to url module */ buildFinalApiBaseUrl(config: AutotaskClientConfig): string; /** * Build request URL - delegates to url module */ buildRequestUrl(entityPath: string): string; /** * Get default headers - delegates to http-headers module */ getDefaultHeaders(): HeadersInit; /** * Calculate retry delay - delegates to retry module */ calculateRetryDelayMs(attempt: number): number; /** * Handle request error and retry - delegates to retry module */ handleRequestErrorAndRetry(error: any, attempt: number, method: string, url: string): Promise; /** * Handle proactive rate limiting - delegates to rate-limiter-handler module */ handleProactiveRateLimiting(identifier: string): Promise; /** * Execute API request - delegates to request-executor module */ executeApiRequest(method: string, url: string, body?: any, signal?: AbortSignal): Promise; /** * Encode continuation token - delegates to token module */ encodeContinuationToken(payload: SdkContinuationTokenPayload): string; /** * Decode continuation token - delegates to token module */ decodeContinuationToken(token: string): SdkContinuationTokenPayload | null; } /** * Create an API compatibility wrapper instance * Used by AutotaskClient to centralize all delegation methods */ export declare function createApiCompatibilityWrapper(clientConfig: AutotaskClientConfig, finalApiBaseUrl: string, retryConfig: Required, logger: Logger, clientLogger: ClientLogger, rateLimitManager?: RateLimitManager): ApiCompatibilityWrapper; //# sourceMappingURL=api-compatibility.d.ts.map