@fe-fast/unused-css-pruner
Version:
A powerful CSS pruning tool that removes unused styles with support for dynamic class names, CSS-in-JS, and component-level analysis
60 lines • 1.64 kB
TypeScript
import { CSSRule } from '../types.js';
export declare class CSSParser {
/**
* Parse CSS files and extract all rules
*/
parseCSSFiles(cssFiles: string[]): Promise<CSSRule[]>;
/**
* Parse CSS content and extract rules
*/
parseCSSContent(content: string, filePath: string): Promise<CSSRule[]>;
/**
* Extract selectors from a CSS rule node
*/
private extractSelectors;
/**
* Extract properties from a CSS rule node
*/
private extractProperties;
/**
* Parse rules inside @media queries
*/
private parseMediaRules;
/**
* Parse rules inside @keyframes
*/
private parseKeyframeRules;
/**
* Calculate the size of a CSS rule in bytes
*/
private calculateRuleSize;
/**
* Extract all class names from CSS selectors
*/
extractClassNames(rules: CSSRule[]): Set<string>;
/**
* Extract class names from a single CSS selector
*/
private extractClassNamesFromSelector;
/**
* Extract all ID names from CSS selectors
*/
extractIdNames(rules: CSSRule[]): Set<string>;
/**
* Extract ID names from a single CSS selector
*/
private extractIdNamesFromSelector;
/**
* Check if a selector is a pseudo-class or pseudo-element
*/
isPseudoSelector(selector: string): boolean;
/**
* Check if a selector contains attribute selectors
*/
hasAttributeSelector(selector: string): boolean;
/**
* Normalize selector for comparison
*/
normalizeSelector(selector: string): string;
}
//# sourceMappingURL=css-parser.d.ts.map