import { ChromeGpuModes } from "./types";
/**
* Global installation and setup preferences for IronPDF
*
* See {@link IronPdfGlobalConfig.setConfig}
*/
export declare class IronPdfGlobalConfig {
private static _instance;
private static _config;
private constructor();
static getInstance(): IronPdfGlobalConfig;
/**
* Main IronPdf configuration method
*
* @param ironPdfConfig configuration see {@link IronPdfConfig}
*/
static setConfig(ironPdfConfig: IronPdfConfig): void;
static getConfig(): IronPdfConfig;
static ironPdfEngineVersion: string;
}
/**
* Main IronPdf configuration interface
*/
export interface IronPdfConfig {
/**
* An address of IronPdf subprocess.
* @default 127.0.0.1:33350
*/
ironPdfEngineAddress?: string | undefined;
/**
* An address of IronPdfEngine Docker.
*
* If this config was specified IronPdf will switch to Docker mode
*
* Docker mode: IronPdf will not spawn subprocess but will connect to Docker instead.
*
* @default undefined
*/
ironPdfEngineDockerAddress?: string | undefined;
/**
* Enable debug mode
*
* Debug mode: IronPdf will expose more logging messages
*
* @default false
*/
debugMode?: boolean | undefined;
/**
* Removes watermarks. Get licensed at https://ironpdf.com/nodejs/licensing.
*
* For Node.js applications, a license key can alternatively be set using the environment variable IRONPDF_LICENSE_KEY.
* Priority: programmatic licenseKey > IRONPDF_LICENSE_KEY environment variable.
*
* For .Net framework applications, a license key can alternatively be added to Web.Config or App.Config XML file using
* within the appSettings tag. See
* https://ironpdf.com/nodejs/docs/license/license-keys/ for more details.
*
* For .Net Core applications, a license key may be added to appsettings.json where the key name is "IronPdf.LicenseKey" and the value is a valid IronPDF trial or full license key.
*
* See https://ironpdf.com/nodejs/licensing/ for licensing options.
*
* @default undefined
*/
licenseKey?: string | undefined;
/**
* SingleProcess mode Forces Chrome renderer to perform everything in the current process, rather than using subprocesses (default true for macOS, false for other OS)
* @default false
*/
singleProcess?: boolean | undefined;
/**
* Set Maximum number of concurrent browsers when using the Chrome renderer
* @default 30
*/
chromeBrowserLimit?: number | undefined;
/**
* Disk cache path for Chrome browser instances
* @default undefined
*/
chromeBrowserCachePath?: string | undefined;
/**
* Chrome renderer GPU compatibility mode. In special environment like Docker or Cloud Service please use ChromeGpuModes "Disabled"
* @default {@link ChromeGpuModes.Disabled}
*/
chromeGpuMode?: ChromeGpuModes | undefined;
/**
* If true The necessary package dependencies for IronPDF rendering will we automatically installed to
* Docker and Debian / Ubuntu Linux deployments.
* This will take a few minutes the next time you run IronPDF.
* Set this to false if manual Docker / Linux setup is more convenient:
* more info
* @default true
*/
autoInstallDependency?: boolean | undefined;
}
//# sourceMappingURL=ironpdfglobalconfig.d.ts.map