Files
NativeScript/tns-core-modules/ui/styling/css-selector-parser.d.ts
Panayot Cankov d098ff43f5 Add module names for the typedoc, make it work
Mark members with @private for typedoc.
2017-04-20 16:58:30 +03:00

43 lines
1.3 KiB
TypeScript

/**
* @module "ui/styling/css-selector-parser"
* @private
*/ /** */
//@private
export interface SimpleSelector {
pos: number;
type: "" | "*" | "#" | "." | ":" | "[]";
comb?: "+" | "~" | ">" | " ";
}
export interface SimpleIdentifierSelector extends SimpleSelector {
ident: string;
}
export interface UniversalSelector extends SimpleSelector {
type: "*";
}
export interface TypeSelector extends SimpleIdentifierSelector {
type: "";
}
export interface ClassSelector extends SimpleIdentifierSelector {
type: ".";
}
export interface IdSelector extends SimpleIdentifierSelector {
type: "#";
}
export interface PseudoClassSelector extends SimpleIdentifierSelector {
type: ":";
}
export interface AttributeSelector extends SimpleSelector {
type: "[]";
prop: string;
test?: "=" | "^=" | "$=" | "*=" | "=" | "~=" | "|=";
value?: string;
}
export function isUniversal(sel: SimpleSelector): sel is UniversalSelector;
export function isType(sel: SimpleSelector): sel is TypeSelector;
export function isClass(sel: SimpleSelector): sel is ClassSelector;
export function isId(sel: SimpleSelector): sel is IdSelector;
export function isPseudo(sel: SimpleSelector): sel is PseudoClassSelector;
export function isAttribute(sel: SimpleSelector): sel is AttributeSelector;
export function parse(selector: string): SimpleSelector[];