Path: blob/main/extensions/emmet/src/typings/EmmetFlatNode.d.ts
4774 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45declare module 'EmmetFlatNode' {6export interface Node {7start: number8end: number9type: string10parent: Node | undefined11firstChild: Node | undefined12nextSibling: Node | undefined13previousSibling: Node | undefined14children: Node[]15}1617export interface Token {18start: number19end: number20stream: BufferStream21toString(): string22}2324export interface CssToken extends Token {25size: number26item(number: number): any27type: string28}2930export interface HtmlToken extends Token {31value: string32}3334export interface Attribute extends Token {35name: Token36value: Token37}3839export interface HtmlNode extends Node {40name: string41open: Token | undefined42close: Token | undefined43parent: HtmlNode | undefined44firstChild: HtmlNode | undefined45nextSibling: HtmlNode | undefined46previousSibling: HtmlNode | undefined47children: HtmlNode[]48attributes: Attribute[]49}5051export interface CssNode extends Node {52name: string53parent: CssNode | undefined54firstChild: CssNode | undefined55nextSibling: CssNode | undefined56previousSibling: CssNode | undefined57children: CssNode[]58}5960export interface Rule extends CssNode {61selectorToken: Token62contentStartToken: Token63contentEndToken: Token64}6566export interface Property extends CssNode {67valueToken: Token68separator: string69parent: Rule70terminatorToken: Token71separatorToken: Token72value: string73}7475export interface Stylesheet extends Node {76comments: Token[]77}7879export interface BufferStream {80peek(): number81next(): number82backUp(n: number): number83current(): string84substring(from: number, to: number): string85eat(match: any): boolean86eatWhile(match: any): boolean87}88}899091