Skip to content

Commit 322fe23

Browse files
committed
Export more types
1 parent f92707f commit 322fe23

File tree

2 files changed

+18
-12
lines changed

2 files changed

+18
-12
lines changed

src/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
1-
export { default as parse, Selector, Options } from "./parse";
1+
export * from "./parse";
2+
export { default as parse } from "./parse";
23
export { default as stringify } from "./stringify";

src/parse.ts

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -16,41 +16,41 @@ export type Selector =
1616
| UniversalSelector
1717
| Traversal;
1818

19-
interface AttributeSelector {
19+
export interface AttributeSelector {
2020
type: "attribute";
2121
name: string;
22-
action: Action;
22+
action: AttributeAction;
2323
value: string;
2424
ignoreCase: boolean;
2525
}
2626

2727
type DataType = Selector[][] | null | string;
2828

29-
interface PseudoSelector {
29+
export interface PseudoSelector {
3030
type: "pseudo";
3131
name: string;
3232
data: DataType;
3333
}
3434

35-
interface PseudoElement {
35+
export interface PseudoElement {
3636
type: "pseudo-element";
3737
name: string;
3838
}
3939

40-
interface TagSelector {
40+
export interface TagSelector {
4141
type: "tag";
4242
name: string;
4343
}
4444

45-
interface UniversalSelector {
45+
export interface UniversalSelector {
4646
type: "universal";
4747
}
4848

49-
interface Traversal {
49+
export interface Traversal {
5050
type: TraversalType;
5151
}
5252

53-
type Action =
53+
export type AttributeAction =
5454
| "any"
5555
| "element"
5656
| "end"
@@ -60,14 +60,19 @@ type Action =
6060
| "not"
6161
| "start";
6262

63-
type TraversalType = "adjacent" | "child" | "descendant" | "parent" | "sibling";
63+
export type TraversalType =
64+
| "adjacent"
65+
| "child"
66+
| "descendant"
67+
| "parent"
68+
| "sibling";
6469

6570
const reName = /^(?:\\.|[\w\-\u00b0-\uFFFF])+/,
6671
reEscape = /\\([\da-f]{1,6}\s?|(\s)|.)/gi,
6772
//modified version of https://github.com/jquery/sizzle/blob/master/src/sizzle.js#L87
6873
reAttr = /^\s*((?:\\.|[\w\u00b0-\uFFFF-])+)\s*(?:(\S?)=\s*(?:(['"])([^]*?)\3|(#?(?:\\.|[\w\u00b0-\uFFFF-])*)|)|)\s*(i)?\]/;
6974

70-
const actionTypes: { [key: string]: Action } = {
75+
const actionTypes: { [key: string]: AttributeAction } = {
7176
undefined: "exists",
7277
"": "equals",
7378
"~": "element",
@@ -85,7 +90,7 @@ const Traversals: { [key: string]: TraversalType } = {
8590
"+": "adjacent"
8691
};
8792

88-
const attribSelectors: { [key: string]: [string, Action] } = {
93+
const attribSelectors: { [key: string]: [string, AttributeAction] } = {
8994
"#": ["id", "equals"],
9095
".": ["class", "element"]
9196
};

0 commit comments

Comments
 (0)