diff options
| author | littleblack111 <littleblack11111@gmail.com> | 2026-05-18 23:10:59 +0800 |
|---|---|---|
| committer | littleblack111 <littleblack11111@gmail.com> | 2026-05-18 23:41:44 +0800 |
| commit | fc87c009806dcc98867f6b58efe29b042aa01dee (patch) | |
| tree | 8f59b3f4a5b66e9dfef2d40c8d318e258a521228 /node_modules/regjsparser/parser.d.ts | |
| parent | 3336b2356ee6152d9c6ae59bd9b87ccbc0958407 (diff) | |
node: updatemain
Diffstat (limited to 'node_modules/regjsparser/parser.d.ts')
| -rw-r--r-- | node_modules/regjsparser/parser.d.ts | 183 |
1 files changed, 0 insertions, 183 deletions
diff --git a/node_modules/regjsparser/parser.d.ts b/node_modules/regjsparser/parser.d.ts deleted file mode 100644 index 4edef64f..00000000 --- a/node_modules/regjsparser/parser.d.ts +++ /dev/null @@ -1,183 +0,0 @@ -type _If<Test, Then, Else> = Test extends true ? Then : Else; - -export type Features = { - lookbehind?: boolean; - namedGroups?: boolean; - unicodePropertyEscape?: boolean; - unicodeSet?: boolean; - modifiers?: boolean; -}; - -export type AstNodeType = - | "alternative" - | "anchor" - | "characterClass" - | "characterClassEscape" - | "characterClassRange" - | "disjunction" - | "dot" - | "group" - | "quantifier" - | "reference" - | "unicodePropertyEscape" - | "value"; - -export type Base<T extends AstNodeType> = { - range: [number, number]; - raw: string; - type: T; -}; - -export type AstNode<F extends Features = {}> = - | Alternative<F> - | Anchor - | CharacterClass<F> - | CharacterClassEscape - | CharacterClassRange - | Disjunction<F> - | Dot - | Group<F> - | Quantifier<F> - | Reference<F> - | _If<F["unicodePropertyEscape"], UnicodePropertyEscape, never> - | Value; - -export type RootNode<F extends Features = {}> = Exclude< - AstNode<F>, - CharacterClassRange ->; - -export type Anchor = Base<"anchor"> & { - kind: "boundary" | "end" | "not-boundary" | "start"; -}; - -export type CharacterClassEscape = Base<"characterClassEscape"> & { - value: string; -}; - -export type Value = Base<"value"> & { - codePoint: number; - kind: - | "controlLetter" - | "hexadecimalEscape" - | "identifier" - | "null" - | "octal" - | "singleEscape" - | "symbol" - | "unicodeCodePointEscape" - | "unicodeEscape"; -}; - -export type Identifier = Base<"value"> & { - value: string; -}; - -export type Alternative<F extends Features = {}> = Base<"alternative"> & { - body: RootNode<F>[]; -}; - -export type CharacterClassRange = Base<"characterClassRange"> & { - max: Value; - min: Value; -}; - -export type UnicodePropertyEscape = Base<"unicodePropertyEscape"> & { - negative: boolean; - value: string; -}; - -export type CharacterClassBody = - | CharacterClassEscape - | CharacterClassRange - | UnicodePropertyEscape - | Value; - -export type CharacterClass<F extends Features = {}> = Base<"characterClass"> & { - body: CharacterClassBody[]; - negative: boolean; - kind: "union" | _If<F["unicodeSet"], "intersection" | "subtraction", never>; -}; - -export type ModifierFlags = { - enabling: string, - disabling: string -} - -export type NonCapturingGroup<F extends Features = {}> = Base<"group"> & - ( - | { - behavior: - | "lookahead" - | "lookbehind" - | "negativeLookahead" - | "negativeLookbehind"; - body: RootNode<F>[]; - } - | ({ - behavior: "ignore"; - body: RootNode<F>[]; - } & _If< - F["modifiers"], - { - modifierFlags?: ModifierFlags; - }, - { - modifierFlags: undefined; - } - >) - ); - - -export type CapturingGroup<F extends Features = {}> = Base<"group"> & { - behavior: "normal"; - body: RootNode<F>[]; -} & _If< - F["namedGroups"], - { - name?: Identifier; - }, - { - name: undefined; - } - >; - -export type Group<F extends Features = {}> = - | CapturingGroup<F> - | NonCapturingGroup<F>; - -export type Quantifier<F extends Features = {}> = Base<"quantifier"> & { - body: [RootNode<F>]; - greedy: boolean; - max?: number; - min: number; - symbol?: '?' | '*' | '+'; -}; - -export type Disjunction<F extends Features = {}> = Base<"disjunction"> & { - body: [RootNode<F>, RootNode<F>, ...RootNode<F>[]]; -}; - -export type Dot = Base<"dot">; - -export type NamedReference = Base<"reference"> & { - matchIndex: undefined; - name: Identifier; -}; - -export type IndexReference = Base<"reference"> & { - matchIndex: number; - name: undefined; -}; - -export type Reference<F extends Features = {}> = _If< - F["namedGroups"], - NamedReference, - IndexReference ->; - -export function parse<F extends Features = {}>( - str: string, - flags: string, - features?: F -): RootNode<F>; |
