| 
							
								 | 
							
							declare namespace postcssValueParser { | 
						
						
						
						
							 | 
							
								 | 
							
							  interface BaseNode { | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * The offset inside the CSS value at which the node starts | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    sourceIndex: number; | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * The node's characteristic value | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    value: string; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface ClosableNode { | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * Whether the parsed CSS value ended before the node was properly closed | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    unclosed?: true; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface AdjacentAwareNode { | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * The token at the start of the node | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    before: string; | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * The token at the end of the node | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    after: string; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface CommentNode extends BaseNode, ClosableNode { | 
						
						
						
						
							 | 
							
								 | 
							
							    type: "comment"; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface DivNode extends BaseNode, AdjacentAwareNode { | 
						
						
						
						
							 | 
							
								 | 
							
							    type: "div"; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface FunctionNode extends BaseNode, ClosableNode, AdjacentAwareNode { | 
						
						
						
						
							 | 
							
								 | 
							
							    type: "function"; | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * Nodes inside the function | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    nodes: Node[]; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface SpaceNode extends BaseNode { | 
						
						
						
						
							 | 
							
								 | 
							
							    type: "space"; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface StringNode extends BaseNode, ClosableNode { | 
						
						
						
						
							 | 
							
								 | 
							
							    type: "string"; | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * The quote type delimiting the string | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    quote: '"' | "'"; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface UnicodeRangeNode extends BaseNode { | 
						
						
						
						
							 | 
							
								 | 
							
							    type: "unicode-range"; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface WordNode extends BaseNode { | 
						
						
						
						
							 | 
							
								 | 
							
							    type: "word"; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  /** | 
						
						
						
						
							 | 
							
								 | 
							
							   * Any node parsed from a CSS value | 
						
						
						
						
							 | 
							
								 | 
							
							   */ | 
						
						
						
						
							 | 
							
								 | 
							
							  type Node = | 
						
						
						
						
							 | 
							
								 | 
							
							    | CommentNode | 
						
						
						
						
							 | 
							
								 | 
							
							    | DivNode | 
						
						
						
						
							 | 
							
								 | 
							
							    | FunctionNode | 
						
						
						
						
							 | 
							
								 | 
							
							    | SpaceNode | 
						
						
						
						
							 | 
							
								 | 
							
							    | StringNode | 
						
						
						
						
							 | 
							
								 | 
							
							    | UnicodeRangeNode | 
						
						
						
						
							 | 
							
								 | 
							
							    | WordNode; | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface CustomStringifierCallback { | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param node The node to stringify | 
						
						
						
						
							 | 
							
								 | 
							
							     * @returns The serialized CSS representation of the node | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    (nodes: Node): string | undefined; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface WalkCallback { | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param node  The currently visited node | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param index The index of the node in the series of parsed nodes | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param nodes The series of parsed nodes | 
						
						
						
						
							 | 
							
								 | 
							
							     * @returns Returning `false` will prevent traversal of descendant nodes (only applies if `bubble` was set to `true` in the `walk()` call) | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    (node: Node, index: number, nodes: Node[]): void | boolean; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  /** | 
						
						
						
						
							 | 
							
								 | 
							
							   * A CSS dimension, decomposed into its numeric and unit parts | 
						
						
						
						
							 | 
							
								 | 
							
							   */ | 
						
						
						
						
							 | 
							
								 | 
							
							  interface Dimension { | 
						
						
						
						
							 | 
							
								 | 
							
							    number: string; | 
						
						
						
						
							 | 
							
								 | 
							
							    unit: string; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  /** | 
						
						
						
						
							 | 
							
								 | 
							
							   * A wrapper around a parsed CSS value that allows for inspecting and walking nodes | 
						
						
						
						
							 | 
							
								 | 
							
							   */ | 
						
						
						
						
							 | 
							
								 | 
							
							  interface ParsedValue { | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * The series of parsed nodes | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    nodes: Node[]; | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * Walk all parsed nodes, applying a callback | 
						
						
						
						
							 | 
							
								 | 
							
							     * | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param callback A visitor callback that will be executed for each node | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param bubble   When set to `true`, walking will be done inside-out instead of outside-in | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    walk(callback: WalkCallback, bubble?: boolean): this; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							  interface ValueParser { | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * Decompose a CSS dimension into its numeric and unit part | 
						
						
						
						
							 | 
							
								 | 
							
							     * | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param value The dimension to decompose | 
						
						
						
						
							 | 
							
								 | 
							
							     * @returns An object representing `number` and `unit` part of the dimension or `false` if the decomposing fails | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    unit(value: string): Dimension | false; | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * Serialize a series of nodes into a CSS value | 
						
						
						
						
							 | 
							
								 | 
							
							     * | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param nodes  The nodes to stringify | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param custom A custom stringifier callback | 
						
						
						
						
							 | 
							
								 | 
							
							     * @returns The generated CSS value | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    stringify(nodes: Node | Node[], custom?: CustomStringifierCallback): string; | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * Walk a series of nodes, applying a callback | 
						
						
						
						
							 | 
							
								 | 
							
							     * | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param nodes    The nodes to walk | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param callback A visitor callback that will be executed for each node | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param bubble   When set to `true`, walking will be done inside-out instead of outside-in | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    walk(nodes: Node[], callback: WalkCallback, bubble?: boolean): void; | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * Parse a CSS value into a series of nodes to operate on | 
						
						
						
						
							 | 
							
								 | 
							
							     * | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param value The value to parse | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    new (value: string): ParsedValue; | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							    /** | 
						
						
						
						
							 | 
							
								 | 
							
							     * Parse a CSS value into a series of nodes to operate on | 
						
						
						
						
							 | 
							
								 | 
							
							     * | 
						
						
						
						
							 | 
							
								 | 
							
							     * @param value The value to parse | 
						
						
						
						
							 | 
							
								 | 
							
							     */ | 
						
						
						
						
							 | 
							
								 | 
							
							    (value: string): ParsedValue; | 
						
						
						
						
							 | 
							
								 | 
							
							  } | 
						
						
						
						
							 | 
							
								 | 
							
							} | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							declare const postcssValueParser: postcssValueParser.ValueParser; | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							export = postcssValueParser;
 | 
						
						
						
						
							 | 
							
								 | 
							
							
 |