import { NexaBase } from "./client"; import { NexaBaseConfig } from "./types"; /** * Create a NexaBase client with standard configuration */ export declare function createNexaBaseClient(config: NexaBaseConfig): NexaBase; /** * ✅ PRINCIPAL: Create a NexaBase client for API/SDK usage * Solo necesita API Key - el tenant se extrae automáticamente */ export declare function createApiClient(baseURL: string, apiKey: string, options?: Partial): NexaBase; /** * Create a NexaBase client with API Key authentication */ export declare function createApiKeyClient(baseURL: string, apiKey: string, options?: Partial): NexaBase; /** * Create a NexaBase client with Bearer token authentication * Para uso con tokens admin/dashboard */ export declare function createTokenClient(baseURL: string, token: string, options?: Partial): NexaBase; /** * ✅ NUEVO: Create client with automatic API login * Primero hace login, luego queda autenticado con tokens */ export declare function createAuthenticatedApiClient(baseURL: string, apiKey: string, email: string, password: string, options?: Partial): Promise; /** * ✅ NUEVO: Create client for subdomain usage * Para cuando uses subdominios como tenant identificator */ export declare function createSubdomainClient(subdomain: string, apiKey: string, baseDomain?: string, options?: Partial): NexaBase; /** * ✅ NUEVO: Create client con configuración completa para desarrollo */ export declare function createDevelopmentClient(baseURL: string, apiKey: string, options?: { debug?: boolean; timeout?: number; maxRetries?: number; customHeaders?: Record; }): NexaBase; /** * ✅ NUEVO: Create client con múltiples API keys para testing */ export declare function createTestClient(baseURL: string, apiKey: string, options?: { debug?: boolean; mockMode?: boolean; }): NexaBase;