import { AuthenticationClient, ManagementClient } from 'auth0';
import { Auth0Config } from './config.js';
/**
 * Creates and configures an Auth0 Management API client for making API calls.
 *
 * This function initializes a ManagementClient with proper authentication,
 * retry logic (10 retries), and user agent information. The client provides
 * methods for interacting with all Management API endpoints to manage resources
 * in your Auth0 tenant.
 *
 * @param {Auth0Config} config - Configuration object containing:
 *   - domain: The Auth0 domain name (e.g., 'your-tenant.auth0.com')
 *   - token: A valid Auth0 Management API access token with appropriate scopes
 * @returns {Promise<ManagementClient>} A configured Auth0 Management API client
 *   ready to make authenticated requests to the Auth0 Management API.
 */
export declare const getManagementClient: (config: Auth0Config, additionalHeaders?: Record<string, string>) => Promise<ManagementClient>;
/**
 * Creates and configures an Auth0 Authentication API client.
 *
 * @param {string} domain - The Auth0 domain (e.g., 'your-tenant.auth0.com')
 * @param {string} [clientId] - Optional client ID for authentication operations
 * @param {string} [clientSecret] - Optional client secret for server-to-server operations
 * @returns {Promise<AuthenticationClient>} Configured Auth0 Authentication API client
 */
export declare const getAuthenticationClient: (domain: string, clientId: string, clientSecret: string) => Promise<AuthenticationClient>;
