/** Main API client for the Dermalytics SDK */ import { AnalyzeResponse, DermalyticsConfig, IngredientResponse } from './types.js'; export declare class Dermalytics { private readonly apiKey; private readonly baseUrl; /** * Client for interacting with the Dermalytics API. * * @param config - Configuration object with API key and optional base URL * @throws {ValidationError} If API key is missing */ constructor(config: DermalyticsConfig); /** * Makes an HTTP request to the API with proper error handling. * * @private */ private request; /** * Handles error responses from the API based on HTTP status codes. * * @private */ private handleErrorResponse; /** * Get detailed information about a specific ingredient. * * @param name - The INCI-style name or known synonym of the ingredient * @returns Promise resolving to ingredient information * @throws {ValidationError} If the ingredient name is invalid * @throws {NotFoundError} If the ingredient is not found * @throws {AuthenticationError} If authentication fails * @throws {InsufficientCreditsError} If the account has insufficient credits * @throws {APIError} For other API errors */ getIngredient(name: string): Promise; /** * Analyze a list of ingredients for safety and compatibility. * * @param ingredients - Array of ingredient names to analyze * @returns Promise resolving to analysis results * @throws {ValidationError} If the ingredients array is invalid * @throws {AuthenticationError} If authentication fails * @throws {InsufficientCreditsError} If the account has insufficient credits * @throws {APIError} For other API errors */ analyze(ingredients: string[]): Promise; } //# sourceMappingURL=client.d.ts.map