import { HTTPClientConfig } from './utils/http';
import { HorizontalAPI } from './modules/horizontal';
import { TicketingAPI } from './modules/ticketing';
import { ContactsAPI } from './modules/contacts/api';
import { GlobalAPI } from './modules/global/api';
import { DomainAPI } from './modules/domain/api';
import { Logger as PinoLogger } from 'pino';
/**
 * Configuration options for the logger
 */
export interface LoggerConfig {
    /**
     * A custom logger instance to use instead of creating a new one.
     */
    instance?: PinoLogger;
    /**
     * The logging level to use. Only used when instance is undefined.
     * Defaults to 'info' if not specified.
     * Valid values are: 'fatal', 'error', 'warn', 'info', 'debug', 'trace'
     */
    level?: string;
}
export type ERPClientConfig = HTTPClientConfig & {
    logger?: LoggerConfig;
};
export declare class ERPClient {
    private readonly _baseUrl;
    private readonly _httpClient;
    constructor(config: ERPClientConfig);
    domain(): DomainAPI;
    global(): GlobalAPI;
    contacts(): ContactsAPI;
    horizontal(): HorizontalAPI;
    ticketing(): TicketingAPI;
}
//# sourceMappingURL=erp.d.ts.map