@@ -76,7 +76,8 @@ export type TIndexArray_0<Input extends string, Result extends unknown[] = []> =
7676export type TIndexArray < Input extends string > = TIndexArray_0 < Input > extends [ infer _0 extends ( [ unknown , unknown , unknown ] | [ unknown , unknown ] ) [ ] , infer Input extends string ] ? [ S . TIndexArrayMapping < _0 > , Input ] : [ ]
7777export type TExtends < Input extends string > = ( ( Token . TConst < 'extends' , Input > extends [ infer _0 , infer Input extends string ] ? ( TType < Input > extends [ infer _1 , infer Input extends string ] ? ( Token . TConst < '?' , Input > extends [ infer _2 , infer Input extends string ] ? ( TType < Input > extends [ infer _3 , infer Input extends string ] ? ( Token . TConst < ':' , Input > extends [ infer _4 , infer Input extends string ] ? ( TType < Input > extends [ infer _5 , infer Input extends string ] ? [ [ _0 , _1 , _2 , _3 , _4 , _5 ] , Input ] : [ ] ) : [ ] ) : [ ] ) : [ ] ) : [ ] ) : [ ] ) extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : [ [ ] , Input ] extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : [ ] ) extends [ infer _0 extends [ unknown , unknown , unknown , unknown , unknown , unknown ] | [ ] , infer Input extends string ] ? [ S . TExtendsMapping < _0 > , Input ] : [ ]
7878export type TBase < Input extends string > = ( ( Token . TConst < '(' , Input > extends [ infer _0 , infer Input extends string ] ? ( TType < Input > extends [ infer _1 , infer Input extends string ] ? ( Token . TConst < ')' , Input > extends [ infer _2 , infer Input extends string ] ? [ [ _0 , _1 , _2 ] , Input ] : [ ] ) : [ ] ) : [ ] ) extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : TKeyword < Input > extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : T_Object_ < Input > extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : TTuple < Input > extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : TTemplateLiteral < Input > extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : TLiteral < Input > extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : TConstructor < Input > extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : T_Function_ < Input > extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : TMapped < Input > extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : TOptions < Input > extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : TGenericCall < Input > extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : TReference < Input > extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : [ ] ) extends [ infer _0 extends [ unknown , unknown , unknown ] | unknown , infer Input extends string ] ? [ S . TBaseMapping < _0 > , Input ] : [ ]
79- export type TFactor < Input extends string > = ( TKeyOf < Input > extends [ infer _0 , infer Input extends string ] ? ( TBase < Input > extends [ infer _1 , infer Input extends string ] ? ( TIndexArray < Input > extends [ infer _2 , infer Input extends string ] ? ( TExtends < Input > extends [ infer _3 , infer Input extends string ] ? [ [ _0 , _1 , _2 , _3 ] , Input ] : [ ] ) : [ ] ) : [ ] ) : [ ] ) extends [ infer _0 extends [ unknown , unknown , unknown , unknown ] , infer Input extends string ] ? [ S . TFactorMapping < _0 > , Input ] : [ ]
79+ export type TWith < Input extends string > = ( ( Token . TConst < 'with' , Input > extends [ infer _0 , infer Input extends string ] ? ( TJsonObject < Input > extends [ infer _1 , infer Input extends string ] ? [ [ _0 , _1 ] , Input ] : [ ] ) : [ ] ) extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : [ [ ] , Input ] extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : [ ] ) extends [ infer _0 extends [ unknown , unknown ] | [ ] , infer Input extends string ] ? [ S . TWithMapping < _0 > , Input ] : [ ]
80+ export type TFactor < Input extends string > = ( TKeyOf < Input > extends [ infer _0 , infer Input extends string ] ? ( TBase < Input > extends [ infer _1 , infer Input extends string ] ? ( TIndexArray < Input > extends [ infer _2 , infer Input extends string ] ? ( TExtends < Input > extends [ infer _3 , infer Input extends string ] ? ( TWith < Input > extends [ infer _4 , infer Input extends string ] ? [ [ _0 , _1 , _2 , _3 , _4 ] , Input ] : [ ] ) : [ ] ) : [ ] ) : [ ] ) : [ ] ) extends [ infer _0 extends [ unknown , unknown , unknown , unknown , unknown ] , infer Input extends string ] ? [ S . TFactorMapping < _0 > , Input ] : [ ]
8081export type TExprTermTail < Input extends string > = ( ( Token . TConst < '&' , Input > extends [ infer _0 , infer Input extends string ] ? ( TFactor < Input > extends [ infer _1 , infer Input extends string ] ? ( TExprTermTail < Input > extends [ infer _2 , infer Input extends string ] ? [ [ _0 , _1 , _2 ] , Input ] : [ ] ) : [ ] ) : [ ] ) extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : [ [ ] , Input ] extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : [ ] ) extends [ infer _0 extends [ unknown , unknown , unknown ] | [ ] , infer Input extends string ] ? [ S . TExprTermTailMapping < _0 > , Input ] : [ ]
8182export type TExprTerm < Input extends string > = ( TFactor < Input > extends [ infer _0 , infer Input extends string ] ? ( TExprTermTail < Input > extends [ infer _1 , infer Input extends string ] ? [ [ _0 , _1 ] , Input ] : [ ] ) : [ ] ) extends [ infer _0 extends [ unknown , unknown ] , infer Input extends string ] ? [ S . TExprTermMapping < _0 > , Input ] : [ ]
8283export type TExprTail < Input extends string > = ( ( Token . TConst < '|' , Input > extends [ infer _0 , infer Input extends string ] ? ( TExprTerm < Input > extends [ infer _1 , infer Input extends string ] ? ( TExprTail < Input > extends [ infer _2 , infer Input extends string ] ? [ [ _0 , _1 , _2 ] , Input ] : [ ] ) : [ ] ) : [ ] ) extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : [ [ ] , Input ] extends [ infer _0 , infer Input extends string ] ? [ _0 , Input ] : [ ] ) extends [ infer _0 extends [ unknown , unknown , unknown ] | [ ] , infer Input extends string ] ? [ S . TExprTailMapping < _0 > , Input ] : [ ]
@@ -207,7 +208,8 @@ export const IndexArray_0 = (input: string, result: unknown[] = []): [unknown[],
207208export const IndexArray = ( input : string ) : [ unknown , string ] | [ ] => If ( IndexArray_0 ( input ) , ( [ _0 , input ] ) => [ S . IndexArrayMapping ( _0 as ( [ unknown , unknown , unknown ] | [ unknown , unknown ] ) [ ] ) , input ] )
208209export const Extends = ( input : string ) : [ unknown , string ] | [ ] => If ( If ( If ( Token . Const ( 'extends' , input ) , ( [ _0 , input ] ) => If ( Type ( input ) , ( [ _1 , input ] ) => If ( Token . Const ( '?' , input ) , ( [ _2 , input ] ) => If ( Type ( input ) , ( [ _3 , input ] ) => If ( Token . Const ( ':' , input ) , ( [ _4 , input ] ) => If ( Type ( input ) , ( [ _5 , input ] ) => [ [ _0 , _1 , _2 , _3 , _4 , _5 ] , input ] ) ) ) ) ) ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( [ [ ] , input ] , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => [ ] ) ) , ( [ _0 , input ] ) => [ S . ExtendsMapping ( _0 as [ unknown , unknown , unknown , unknown , unknown , unknown ] | [ ] ) , input ] )
209210export const Base = ( input : string ) : [ unknown , string ] | [ ] => If ( If ( If ( Token . Const ( '(' , input ) , ( [ _0 , input ] ) => If ( Type ( input ) , ( [ _1 , input ] ) => If ( Token . Const ( ')' , input ) , ( [ _2 , input ] ) => [ [ _0 , _1 , _2 ] , input ] ) ) ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( Keyword ( input ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( _Object_ ( input ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( Tuple ( input ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( TemplateLiteral ( input ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( Literal ( input ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( Constructor ( input ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( _Function_ ( input ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( Mapped ( input ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( Options ( input ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( GenericCall ( input ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( Reference ( input ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => [ ] ) ) ) ) ) ) ) ) ) ) ) ) , ( [ _0 , input ] ) => [ S . BaseMapping ( _0 as [ unknown , unknown , unknown ] | unknown ) , input ] )
210- export const Factor = ( input : string ) : [ unknown , string ] | [ ] => If ( If ( KeyOf ( input ) , ( [ _0 , input ] ) => If ( Base ( input ) , ( [ _1 , input ] ) => If ( IndexArray ( input ) , ( [ _2 , input ] ) => If ( Extends ( input ) , ( [ _3 , input ] ) => [ [ _0 , _1 , _2 , _3 ] , input ] ) ) ) ) , ( [ _0 , input ] ) => [ S . FactorMapping ( _0 as [ unknown , unknown , unknown , unknown ] ) , input ] )
211+ export const With = ( input : string ) : [ unknown , string ] | [ ] => If ( If ( If ( Token . Const ( 'with' , input ) , ( [ _0 , input ] ) => If ( JsonObject ( input ) , ( [ _1 , input ] ) => [ [ _0 , _1 ] , input ] ) ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( [ [ ] , input ] , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => [ ] ) ) , ( [ _0 , input ] ) => [ S . WithMapping ( _0 as [ unknown , unknown ] | [ ] ) , input ] )
212+ export const Factor = ( input : string ) : [ unknown , string ] | [ ] => If ( If ( KeyOf ( input ) , ( [ _0 , input ] ) => If ( Base ( input ) , ( [ _1 , input ] ) => If ( IndexArray ( input ) , ( [ _2 , input ] ) => If ( Extends ( input ) , ( [ _3 , input ] ) => If ( With ( input ) , ( [ _4 , input ] ) => [ [ _0 , _1 , _2 , _3 , _4 ] , input ] ) ) ) ) ) , ( [ _0 , input ] ) => [ S . FactorMapping ( _0 as [ unknown , unknown , unknown , unknown , unknown ] ) , input ] )
211213export const ExprTermTail = ( input : string ) : [ unknown , string ] | [ ] => If ( If ( If ( Token . Const ( '&' , input ) , ( [ _0 , input ] ) => If ( Factor ( input ) , ( [ _1 , input ] ) => If ( ExprTermTail ( input ) , ( [ _2 , input ] ) => [ [ _0 , _1 , _2 ] , input ] ) ) ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( [ [ ] , input ] , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => [ ] ) ) , ( [ _0 , input ] ) => [ S . ExprTermTailMapping ( _0 as [ unknown , unknown , unknown ] | [ ] ) , input ] )
212214export const ExprTerm = ( input : string ) : [ unknown , string ] | [ ] => If ( If ( Factor ( input ) , ( [ _0 , input ] ) => If ( ExprTermTail ( input ) , ( [ _1 , input ] ) => [ [ _0 , _1 ] , input ] ) ) , ( [ _0 , input ] ) => [ S . ExprTermMapping ( _0 as [ unknown , unknown ] ) , input ] )
213215export const ExprTail = ( input : string ) : [ unknown , string ] | [ ] => If ( If ( If ( Token . Const ( '|' , input ) , ( [ _0 , input ] ) => If ( ExprTerm ( input ) , ( [ _1 , input ] ) => If ( ExprTail ( input ) , ( [ _2 , input ] ) => [ [ _0 , _1 , _2 ] , input ] ) ) ) , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => If ( [ [ ] , input ] , ( [ _0 , input ] ) => [ _0 , input ] , ( ) => [ ] ) ) , ( [ _0 , input ] ) => [ S . ExprTailMapping ( _0 as [ unknown , unknown , unknown ] | [ ] ) , input ] )
0 commit comments