/** * Dependency-free contract for unused-rule and critical-CSS engines. * * Core owns validation and resource limits. Extensions own parser/vendor * imports and their implementation-specific configuration. * * @module extensions/css/css-purging-engine */ export declare const CSSPurgingEngineName: "CSSPurgingEngine"; export declare const MAX_CSS_PURGING_ENGINE_IDENTITY_CHARACTERS = 256; export interface CSSPurgeContentSource { readonly raw: string; readonly extension: string; } export interface CSSPurgingRequest { readonly css: string; readonly content: readonly CSSPurgeContentSource[]; readonly safelist: readonly string[]; readonly includeRejectedCSS: boolean; } export interface CSSPurgingResult { readonly css: string; readonly rejectedCSS?: string; } export interface CSSPurgingEngine { /** * Includes every implementation/version input capable of changing output. * Represented state must remain immutable for the captured engine lifetime. */ readonly cacheIdentity: string; purge(request: CSSPurgingRequest): Promise; } export declare function assertCSSPurgingEngine(value: unknown): asserts value is CSSPurgingEngine; /** Capture identity and method once so registry mutation cannot split a run. */ export declare function captureCSSPurgingEngine(value: unknown): CSSPurgingEngine; //# sourceMappingURL=css-purging-engine.d.ts.map