diff --git a/types/css-tree/css-tree-tests.ts b/types/css-tree/css-tree-tests.ts index efec46e7fb..5880c1ddd0 100644 --- a/types/css-tree/css-tree-tests.ts +++ b/types/css-tree/css-tree-tests.ts @@ -16,16 +16,20 @@ csstree.walk(ast, {}); csstree.walk(ast, { enter(node, item, list) { - this.stylesheet; // $ExpectType StyleSheet + this.root; // $ExpectType CssNode + this.stylesheet; // $ExpectType StyleSheet | null node; // $ExpectType CssNode item; // $ExpectType ListItem list; // $ExpectType List + this.atrule; // $ExpectType Atrule | null }, leave(node, item, list) { - this.stylesheet; // $ExpectType StyleSheet + this.root; // $ExpectType CssNode + this.stylesheet; // $ExpectType StyleSheet | null node; // $ExpectType CssNode item; // $ExpectType ListItem list; // $ExpectType List + this.atrule; // $ExpectType Atrule | null }, visit: 'ClassSelector', reverse: false, diff --git a/types/css-tree/index.d.ts b/types/css-tree/index.d.ts index b4a42ee1dc..1e99801489 100644 --- a/types/css-tree/index.d.ts +++ b/types/css-tree/index.d.ts @@ -517,14 +517,14 @@ export function generate(ast: CssNode, options?: GenerateOptions): string; export interface WalkContext { root: CssNode; - stylesheet: StyleSheet; - atrule: Atrule; - atrulePrelude: AtrulePrelude; - rule: Rule; - selector: SelectorList; - block: Block; - declaration: Declaration; - function: FunctionNode | PseudoClassSelector | PseudoElementSelector; + stylesheet: StyleSheet | null; + atrule: Atrule | null; + atrulePrelude: AtrulePrelude | null; + rule: Rule | null; + selector: SelectorList | null; + block: Block | null; + declaration: Declaration | null; + function: FunctionNode | PseudoClassSelector | PseudoElementSelector | null; } export type EnterOrLeaveFn = (this: WalkContext, node: CssNode, item: ListItem, list: List) => void;