export type StatelessNacosConfig = { endpoint: string; auth?: { username?: string; password?: string; token?: string; }; apiVersion?: 2 | 3 | 'auto'; contextPath?: string; }; export type NacosRequest = (options: { method: 'GET' | 'POST' | 'DELETE'; url: string; params?: Record; data?: string | Record; headers?: Record; }) => Promise<{ data: any; }>; export type NacosConfigResult = { exists: boolean; content: string; }; export type NacosConfigList = { items: Array>; totalCount: number; }; export declare class NacosClient { private readonly config; private readonly dependencies; private readonly baseUrl; private contextPath; private accessToken?; private resolvedApiVersion?; constructor(config: StatelessNacosConfig, dependencies?: { request?: NacosRequest; }); /** Probe the endpoint without assuming an API version or context path. */ discover(): Promise<{ apiVersion: 2 | 3 | 'unknown'; contextPath: string; authenticated: boolean; }>; listNamespaces(): Promise>>; listGroups(namespace?: string): Promise>>; listConfigs(options?: { pageNo?: number; pageSize?: number; dataId?: string; group?: string; namespace?: string; }): Promise; getConfig(dataId: string, group?: string, namespace?: string): Promise; publishConfig(dataId: string, content: string, type: string, group?: string, namespace?: string): Promise; deleteConfig(dataId: string, group?: string, namespace?: string): Promise; private get isV3(); private configEndpoint; private ensureApiVersion; private scope; private unwrapResult; private request; private login; private hasCredentials; private username; private password; private safeError; private configEndpointFor; private configuredCandidates; private rawRequest; }