import { AxiosInstance, AxiosError } from 'axios'; import { SiteConfig, ErrorResponse, PaginatedResponse } from '../types/index.js'; export type QueryParams = Record | null | undefined>; export declare class BaseApiClient { protected client: AxiosInstance; protected _site: SiteConfig; constructor(site: SiteConfig); get site(): SiteConfig; protected handleError(error: AxiosError): never; get(endpoint: string, params?: QueryParams): Promise; /** * GET request with pagination metadata * Extracts X-WP-Total and X-WP-TotalPages headers */ getPaginated(endpoint: string, params?: QueryParams): Promise>; post>(endpoint: string, data: D): Promise; put>(endpoint: string, data: D): Promise; delete(endpoint: string): Promise; }