import type { CommonHttpClientFetchRequest, CommonHttpClientFetchResponse, CommonHttpClientOptions } from "api-typescript-generator/openapi-client"; import { ApiError } from "../ApiError"; import type { AtlassianProductName } from "./common"; import { type ApiClientAceOptions } from "./createAceFetch"; import { type ApiClientApOptions } from "./createApFetch"; import { type ApiClientForgeApiExternalOptions } from "./createForgeApiExternalFetch"; import { type ApiClientForgeApiOptions } from "./createForgeApiFetch"; import { type ApiClientForgeApiWithProviderOptions } from "./createForgeApiWithProviderFetch"; import { type ApiClientForgeBridgeConfluenceOptions, type ApiClientForgeBridgeJiraOptions } from "./createForgeBridgeFetch"; export type AllOpenApiClientOptions = ApiClientAceOptions | ApiClientApOptions | ApiClientForgeApiOptions | ApiClientForgeBridgeJiraOptions | ApiClientForgeBridgeConfluenceOptions | ApiClientForgeApiExternalOptions | ApiClientForgeApiWithProviderOptions; export type ApiClientOptions = T & { /** * Custom validation error handler. */ handleValidationError?(error: Error): void; /** * Custom deprecation warning logger. */ logDeprecationWarning?(params: { /** * Either operation method name in case if it's not part of the service, or service name and operation method * name separated by a dot. * * Examples: `users.getUserById`, `getSystemConfig` */ operationName: string; path: string; method: CommonHttpClientFetchRequest["method"]; }): void; /** * Determine whether to retry the request on error. */ shouldRetryOnError?: (error: ApiError, attemptNumber: number) => Promise | boolean; /** * Process error before throwing it. */ processError?: (error: ApiError) => Error; /** * Headers to include with every request. */ headers?: Record; }; /** * Error format description: https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#status-codes */ export declare function formatHttpErrorMessage(response: CommonHttpClientFetchResponse, request: CommonHttpClientFetchRequest): string; export declare function getCommonApiClientOptions(options: ApiClientOptions & { basePath?: string; }, productName: AtlassianProductName): Partial; type CommonApiClientOptions = ApiClientAceOptions | ApiClientApOptions | ApiClientForgeApiOptions | ApiClientForgeApiExternalOptions | ApiClientForgeApiWithProviderOptions; export declare function createAsAppMethod unknown>(): () => InstanceType; export declare function createAsUserMethod unknown>(): (userAccountId?: string) => InstanceType; export {};