export type SassMapKey = string | number; export type SassMapValue = string | SassToken; export type SassMapValues = Record | Iterable<[SassMapKey, SassMapValue]>; export declare abstract class SassToken { readonly indentationLevel: number; constructor(indentationLevel?: number); abstract format(): string; toString(): string; createMap(values?: SassMapValues): SassMap; createVariableDefinition(name: string, value: SassToken): VariableDefinitionSassToken; } export declare abstract class ValueSassToken extends SassToken { toString(): string; } export declare class StringSassToken extends SassToken { readonly value: string; constructor(value: string, indentationLevel?: number); format(): string; } export declare class CssVarReferenceSassToken extends StringSassToken { format(): string; } export declare class BlankLineSassToken extends StringSassToken { constructor(); } export declare class RootSassToken extends SassToken { private readonly SEPARATOR; private sassTokens; constructor(); append(sassToken: SassToken): void; appendString(value: string): void; appendVariableDefinition(name: string, sassToken: SassToken): void; appendBlankLine(): void; appendUse(value: string, as_?: string): void; format(): string; } export declare class SassMap extends ValueSassToken { private readonly MAP_OPEN; private readonly MAP_CLOSE; private readonly MAP_VALUE_SEPARATOR; private readonly SEPARATOR; private readonly values; constructor(indentationLevel: number, values?: SassMapValues); set(key: SassMapKey, value: SassMapValue): void; extend(values: SassMapValues): void; setMap(key: SassMapKey, values: SassMapValues): SassMap; format(): string; private sassMapValuesToIter; } export declare class UseSassToken extends StringSassToken { constructor(value: string, as_?: string); } export declare class VariableDefinitionSassToken extends SassToken { readonly name: string; readonly value: SassToken; constructor(indentationLevel: number, name: string, value: SassToken); format(): string; } //# sourceMappingURL=node.d.ts.map