import { Cache } from './core/cache-storage'; /** * Configuration options for Html2Canvas * * This class manages global configuration without using module-level static variables. * Each html2canvas invocation can have its own configuration instance. */ export interface ConfigOptions { /** * Window object to use for DOM operations */ window?: Window; /** * CSP nonce for inline styles * See: https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP */ cspNonce?: string; /** * Cache instance to reuse across multiple calls * Useful for avoiding redundant image loads */ cache?: Cache; } /** * Html2Canvas Configuration * * Manages configuration state for html2canvas rendering. * Eliminates the need for global static variables. */ export declare class Html2CanvasConfig { readonly window: Window; readonly cspNonce?: string; readonly cache?: Cache; constructor(options?: ConfigOptions); /** * Create configuration from an element * Extracts window from element's owner document */ static fromElement(element: HTMLElement, options?: Partial): Html2CanvasConfig; /** * Clone configuration with override options */ clone(options?: Partial): Html2CanvasConfig; }