/
opt
/
canhelp
/
node_modules
/
kysely
/
dist
/
cjs
/
parser
/
/opt/canhelp/node_modules/kysely/dist/cjs/parser
mkdir
upload
Name
Size
Mode
Actions
binary-operation-parser.d.ts
2210
0644
edit
dl
rm
binary-operation-parser.js
4030
0644
edit
dl
rm
coalesce-parser.d.ts
2178
0644
edit
dl
rm
coalesce-parser.js
77
0644
edit
dl
rm
collate-parser.d.ts
71
0644
edit
dl
rm
collate-parser.js
77
0644
edit
dl
rm
data-type-parser.d.ts
373
0644
edit
dl
rm
data-type-parser.js
685
0644
edit
dl
rm
default-value-parser.d.ts
304
0644
edit
dl
rm
default-value-parser.js
516
0644
edit
dl
rm
delete-from-parser.d.ts
820
0644
edit
dl
rm
delete-from-parser.js
77
0644
edit
dl
rm
expression-parser.d.ts
1631
0644
edit
dl
rm
expression-parser.js
1453
0644
edit
dl
rm
fetch-parser.d.ts
180
0644
edit
dl
rm
fetch-parser.js
718
0644
edit
dl
rm
group-by-parser.d.ts
634
0644
edit
dl
rm
group-by-parser.js
698
0644
edit
dl
rm
identifier-parser.d.ts
177
0644
edit
dl
rm
identifier-parser.js
812
0644
edit
dl
rm
insert-values-parser.d.ts
1175
0644
edit
dl
rm
insert-values-parser.js
3029
0644
edit
dl
rm
join-parser.d.ts
907
0644
edit
dl
rm
join-parser.js
1336
0644
edit
dl
rm
merge-into-parser.d.ts
600
0644
edit
dl
rm
merge-into-parser.js
77
0644
edit
dl
rm
merge-parser.d.ts
570
0644
edit
dl
rm
merge-parser.js
1474
0644
edit
dl
rm
on-commit-action-parse.d.ts
163
0644
edit
dl
rm
on-commit-action-parse.js
406
0644
edit
dl
rm
on-modify-action-parser.d.ts
189
0644
edit
dl
rm
on-modify-action-parser.js
436
0644
edit
dl
rm
order-by-parser.d.ts
1702
0644
edit
dl
rm
order-by-parser.js
3323
0644
edit
dl
rm
parse-utils.d.ts
726
0644
edit
dl
rm
parse-utils.js
1848
0644
edit
dl
rm
partition-by-parser.d.ts
612
0644
edit
dl
rm
partition-by-parser.js
464
0644
edit
dl
rm
reference-parser.d.ts
3616
0644
edit
dl
rm
reference-parser.js
4816
0644
edit
dl
rm
returning-parser.d.ts
926
0644
edit
dl
rm
returning-parser.js
77
0644
edit
dl
rm
savepoint-parser.d.ts
535
0644
edit
dl
rm
savepoint-parser.js
562
0644
edit
dl
rm
select-from-parser.d.ts
725
0644
edit
dl
rm
select-from-parser.js
77
0644
edit
dl
rm
select-parser.d.ts
4230
0644
edit
dl
rm
select-parser.js
2173
0644
edit
dl
rm
set-operation-parser.d.ts
565
0644
edit
dl
rm
set-operation-parser.js
885
0644
edit
dl
rm
table-parser.d.ts
2692
0644
edit
dl
rm
table-parser.js
2029
0644
edit
dl
rm
top-parser.d.ts
172
0644
edit
dl
rm
top-parser.js
834
0644
edit
dl
rm
tuple-parser.d.ts
2094
0644
edit
dl
rm
tuple-parser.js
77
0644
edit
dl
rm
unary-operation-parser.d.ts
697
0644
edit
dl
rm
unary-operation-parser.js
835
0644
edit
dl
rm
update-parser.d.ts
904
0644
edit
dl
rm
update-parser.js
77
0644
edit
dl
rm
update-set-parser.d.ts
1484
0644
edit
dl
rm
update-set-parser.js
1388
0644
edit
dl
rm
value-parser.d.ts
1332
0644
edit
dl
rm
value-parser.js
1791
0644
edit
dl
rm
with-parser.d.ts
3002
0644
edit
dl
rm
with-parser.js
1767
0644
edit
dl
rm
Edit:
/opt/canhelp/node_modules/kysely/dist/cjs/parser/with-parser.d.ts
(3002B)
import type { UpdateQueryBuilder } from '../query-builder/update-query-builder.js'; import type { DeleteQueryBuilder } from '../query-builder/delete-query-builder.js'; import type { InsertQueryBuilder } from '../query-builder/insert-query-builder.js'; import type { QueryCreator } from '../query-creator.js'; import type { Expression } from '../expression/expression.js'; import type { ShallowRecord } from '../util/type-utils.js'; import { type CTEBuilderCallback } from '../query-builder/cte-builder.js'; import { CommonTableExpressionNode } from '../operation-node/common-table-expression-node.js'; export type CommonTableExpression<DB, CN extends string> = (creator: QueryCreator<DB>) => CommonTableExpressionOutput<DB, CN>; export type RecursiveCommonTableExpression<DB, CN extends string> = (creator: QueryCreator<DB & { [K in ExtractTableFromCommonTableExpressionName<CN>]: ExtractRowFromCommonTableExpressionName<CN>; }>) => CommonTableExpressionOutput<DB, CN>; export type QueryCreatorWithCommonTableExpression<DB, CN extends string, CTE> = QueryCreator<DB & { [K in ExtractTableFromCommonTableExpressionName<CN>]: ExtractRowFromCommonTableExpression<CTE>; }>; type CommonTableExpressionOutput<DB, CN extends string> = Expression<ExtractRowFromCommonTableExpressionName<CN>> | InsertQueryBuilder<DB, any, ExtractRowFromCommonTableExpressionName<CN>> | UpdateQueryBuilder<DB, any, any, ExtractRowFromCommonTableExpressionName<CN>> | DeleteQueryBuilder<DB, any, ExtractRowFromCommonTableExpressionName<CN>>; /** * Given a common CommonTableExpression CTE extracts the row type from it. * * For example a CTE `(db) => db.selectFrom('person').select(['id', 'first_name'])` * would result in `Pick<Person, 'id' | 'first_name'>`. */ type ExtractRowFromCommonTableExpression<CTE> = CTE extends (creator: QueryCreator<any>) => infer Q ? Q extends Expression<infer QO> ? QO : Q extends InsertQueryBuilder<any, any, infer QO> ? QO : Q extends UpdateQueryBuilder<any, any, any, infer QO> ? QO : Q extends DeleteQueryBuilder<any, any, infer QO> ? QO : never : never; /** * Extracts 'person' from a string like 'person(id, first_name)'. */ type ExtractTableFromCommonTableExpressionName<CN extends string> = CN extends `${infer TB}(${string})` ? TB : CN; /** * Parses a string like 'person(id, first_name)' into a type: * * { * id: any, * first_name: any * } * */ type ExtractRowFromCommonTableExpressionName<CN extends string> = CN extends `${string}(${infer CL})` ? { [C in ExtractColumnNamesFromColumnList<CL>]: any; } : ShallowRecord<string, any>; /** * Parses a string like 'id, first_name' into a type 'id' | 'first_name' */ type ExtractColumnNamesFromColumnList<R extends string> = R extends `${infer C}, ${infer RS}` ? C | ExtractColumnNamesFromColumnList<RS> : R; export declare function parseCommonTableExpression(nameOrBuilderCallback: string | CTEBuilderCallback<string>, expression: CommonTableExpression<any, string>): CommonTableExpressionNode; export {};
Save
cmd:
run