eslint-plugin-vue-scoped-css
Version:
ESLint plugin for Scoped CSS in Vue.js
30 lines (29 loc) • 1.71 kB
TypeScript
import type { NestingInfo } from "../../utils/selectors";
import type { VCSSStyleSheet, VCSSSelectorNode, VCSSAtRule, VCSSStyleRule } from "../../ast";
export declare class ResolvedSelectors {
readonly container: (VCSSAtRule & {
selectors: VCSSSelectorNode[];
}) | VCSSStyleRule;
readonly selectors: ResolvedSelector[];
readonly level: number;
readonly parent: ResolvedSelectors | null;
readonly children: ResolvedSelectors[];
constructor(container: (VCSSAtRule & {
selectors: VCSSSelectorNode[];
}) | VCSSStyleRule, parent: ResolvedSelectors | null);
}
export declare class ResolvedSelector {
readonly owner: ResolvedSelectors;
readonly selector: VCSSSelectorNode[];
constructor(owner: ResolvedSelectors, selector: VCSSSelectorNode[]);
}
export declare class CSSSelectorResolver {
resolveSelectors(rootStyle: VCSSStyleSheet): ResolvedSelectors[];
private resolveNodesSelectors;
private resolveNodeSelectors;
private isIgnoreNode;
protected resolveNestingSelectors(owner: ResolvedSelectors, selectorNodes: VCSSSelectorNode[], parentSelectors: ResolvedSelectors | null, container: VCSSAtRule | VCSSStyleRule): ResolvedSelector[];
private resolveSelectorForNestPrefixed;
protected resolveSelectorForNestConcat(owner: ResolvedSelectors, selectorNodes: VCSSSelectorNode[], parentSelectors: ResolvedSelectors | null, _container: VCSSAtRule | VCSSStyleRule): ResolvedSelector[];
protected resolveSelectorForNestContaining(owner: ResolvedSelectors, selectorNodes: VCSSSelectorNode[], nestingInfo: NestingInfo | null, parentSelectors: ResolvedSelectors | null, _container: VCSSAtRule | VCSSStyleRule): ResolvedSelector[];
}