/** * SCSS-JSON Type Definitions */ export interface ParseOptions { /** Keep comments in the output */ preserveComments?: boolean; /** Detect BEGIN/END section markers */ detectSections?: boolean; /** Resolve SCSS variables to their values */ resolveVariables?: boolean; /** Flatten nested selectors (e.g., .parent .child) */ flattenNested?: boolean; /** Include source location information */ includeSourceMap?: boolean; } export interface GenerateOptions { /** Number of spaces for indentation */ indent?: number; /** Include comments in output */ preserveComments?: boolean; /** Sort properties alphabetically */ sortProperties?: boolean; /** Add newlines between rules */ spacing?: boolean; } export interface SourceLocation { start: { line: number; column: number; }; end: { line: number; column: number; }; } export interface PropertyNode { property: string; value: string; important: boolean; resolvedValue?: string; source?: SourceLocation; } export interface SelectorNode { selector: string; properties: Record; nested?: Record; section?: string; parent?: string; mediaQuery?: string; isPseudo?: boolean; source?: SourceLocation; } export interface VariableNode { name: string; value: string; source?: SourceLocation; } export interface CommentNode { type: 'line' | 'block'; text: string; position: number; source?: SourceLocation; } export interface MediaQueryNode { query: string; selectors: Record; section?: string; source?: SourceLocation; } export interface SectionNode { name: string; selectors: Record; mediaQueries: Record; comments?: CommentNode[]; } export interface SCSSJson { variables: Record; selectors: Record; mediaQueries: Record; sections?: Record; comments?: CommentNode[]; metadata?: { parseDate: string; version: string; }; } //# sourceMappingURL=types.d.ts.map