kysely 0.19.11 → 0.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/cjs/dialect/mysql/mysql-introspector.js +2 -0
- package/dist/cjs/dialect/mysql/mysql-query-compiler.d.ts +5 -0
- package/dist/cjs/dialect/mysql/mysql-query-compiler.js +16 -0
- package/dist/cjs/dialect/postgres/postgres-introspector.js +17 -9
- package/dist/cjs/dialect/postgres/postgres-query-compiler.d.ts +1 -3
- package/dist/cjs/dialect/postgres/postgres-query-compiler.js +3 -8
- package/dist/cjs/dialect/sqlite/sqlite-introspector.js +2 -0
- package/dist/cjs/dialect/sqlite/sqlite-query-compiler.d.ts +3 -0
- package/dist/cjs/dialect/sqlite/sqlite-query-compiler.js +10 -0
- package/dist/cjs/index.d.ts +3 -0
- package/dist/cjs/index.js +3 -0
- package/dist/cjs/operation-node/create-table-node.d.ts +9 -2
- package/dist/cjs/operation-node/create-table-node.js +18 -1
- package/dist/cjs/operation-node/delete-query-node.d.ts +3 -0
- package/dist/cjs/operation-node/delete-query-node.js +6 -0
- package/dist/cjs/operation-node/explain-node.d.ts +16 -0
- package/dist/cjs/operation-node/explain-node.js +19 -0
- package/dist/cjs/operation-node/foreign-key-constraint-node.d.ts +2 -2
- package/dist/cjs/operation-node/insert-query-node.d.ts +2 -0
- package/dist/cjs/operation-node/operation-node-transformer.d.ts +2 -0
- package/dist/cjs/operation-node/operation-node-transformer.js +14 -0
- package/dist/cjs/operation-node/operation-node-visitor.d.ts +2 -0
- package/dist/cjs/operation-node/operation-node-visitor.js +1 -0
- package/dist/cjs/operation-node/operation-node.d.ts +1 -1
- package/dist/cjs/operation-node/reference-node.d.ts +1 -1
- package/dist/cjs/operation-node/reference-node.js +1 -2
- package/dist/cjs/operation-node/references-node.d.ts +3 -1
- package/dist/cjs/operation-node/references-node.js +8 -1
- package/dist/cjs/operation-node/select-query-node.d.ts +3 -0
- package/dist/cjs/operation-node/select-query-node.js +6 -0
- package/dist/cjs/operation-node/selection-node.d.ts +2 -1
- package/dist/cjs/operation-node/update-query-node.d.ts +3 -0
- package/dist/cjs/operation-node/update-query-node.js +6 -0
- package/dist/cjs/parser/on-commit-action-parse.d.ts +2 -0
- package/dist/cjs/parser/on-commit-action-parse.js +11 -0
- package/dist/cjs/parser/on-modify-action-parser.d.ts +2 -0
- package/dist/cjs/parser/on-modify-action-parser.js +11 -0
- package/dist/cjs/parser/select-parser.js +2 -1
- package/dist/cjs/query-builder/delete-query-builder.d.ts +19 -1
- package/dist/cjs/query-builder/delete-query-builder.js +24 -0
- package/dist/cjs/query-builder/function-builder.d.ts +3 -3
- package/dist/cjs/query-builder/insert-query-builder.d.ts +20 -2
- package/dist/cjs/query-builder/insert-query-builder.js +26 -0
- package/dist/cjs/query-builder/select-query-builder.d.ts +38 -1
- package/dist/cjs/query-builder/select-query-builder.js +45 -2
- package/dist/cjs/query-builder/update-query-builder.d.ts +20 -1
- package/dist/cjs/query-builder/update-query-builder.js +25 -0
- package/dist/cjs/query-compiler/default-query-compiler.d.ts +7 -0
- package/dist/cjs/query-compiler/default-query-compiler.js +74 -1
- package/dist/cjs/raw-builder/sql.d.ts +96 -96
- package/dist/cjs/raw-builder/sql.js +0 -96
- package/dist/cjs/schema/column-definition-builder.js +3 -2
- package/dist/cjs/schema/create-table-builder.d.ts +54 -0
- package/dist/cjs/schema/create-table-builder.js +66 -1
- package/dist/cjs/schema/foreign-key-constraint-builder.js +3 -2
- package/dist/cjs/util/explainable.d.ts +5 -0
- package/dist/cjs/util/explainable.js +2 -0
- package/dist/esm/dialect/mysql/mysql-introspector.js +2 -0
- package/dist/esm/dialect/mysql/mysql-query-compiler.d.ts +5 -0
- package/dist/esm/dialect/mysql/mysql-query-compiler.js +16 -0
- package/dist/esm/dialect/postgres/postgres-introspector.js +17 -9
- package/dist/esm/dialect/postgres/postgres-query-compiler.d.ts +1 -3
- package/dist/esm/dialect/postgres/postgres-query-compiler.js +3 -8
- package/dist/esm/dialect/sqlite/sqlite-introspector.js +2 -0
- package/dist/esm/dialect/sqlite/sqlite-query-compiler.d.ts +3 -0
- package/dist/esm/dialect/sqlite/sqlite-query-compiler.js +10 -0
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/operation-node/create-table-node.d.ts +9 -2
- package/dist/esm/operation-node/create-table-node.js +17 -0
- package/dist/esm/operation-node/delete-query-node.d.ts +3 -0
- package/dist/esm/operation-node/delete-query-node.js +6 -0
- package/dist/esm/operation-node/explain-node.d.ts +16 -0
- package/dist/esm/operation-node/explain-node.js +17 -0
- package/dist/esm/operation-node/foreign-key-constraint-node.d.ts +2 -2
- package/dist/esm/operation-node/insert-query-node.d.ts +2 -0
- package/dist/esm/operation-node/operation-node-transformer.d.ts +2 -0
- package/dist/esm/operation-node/operation-node-transformer.js +14 -0
- package/dist/esm/operation-node/operation-node-visitor.d.ts +2 -0
- package/dist/esm/operation-node/operation-node-visitor.js +1 -0
- package/dist/esm/operation-node/operation-node.d.ts +1 -1
- package/dist/esm/operation-node/reference-node.d.ts +1 -1
- package/dist/esm/operation-node/reference-node.js +1 -2
- package/dist/esm/operation-node/references-node.d.ts +3 -1
- package/dist/esm/operation-node/references-node.js +7 -0
- package/dist/esm/operation-node/select-query-node.d.ts +3 -0
- package/dist/esm/operation-node/select-query-node.js +6 -0
- package/dist/esm/operation-node/selection-node.d.ts +2 -1
- package/dist/esm/operation-node/update-query-node.d.ts +3 -0
- package/dist/esm/operation-node/update-query-node.js +6 -0
- package/dist/esm/parser/on-commit-action-parse.d.ts +2 -0
- package/dist/esm/parser/on-commit-action-parse.js +8 -0
- package/dist/esm/parser/on-modify-action-parser.d.ts +2 -0
- package/dist/esm/parser/on-modify-action-parser.js +8 -0
- package/dist/esm/parser/select-parser.js +2 -1
- package/dist/esm/query-builder/delete-query-builder.d.ts +19 -1
- package/dist/esm/query-builder/delete-query-builder.js +24 -0
- package/dist/esm/query-builder/function-builder.d.ts +3 -3
- package/dist/esm/query-builder/insert-query-builder.d.ts +20 -2
- package/dist/esm/query-builder/insert-query-builder.js +26 -0
- package/dist/esm/query-builder/select-query-builder.d.ts +38 -1
- package/dist/esm/query-builder/select-query-builder.js +45 -2
- package/dist/esm/query-builder/update-query-builder.d.ts +20 -1
- package/dist/esm/query-builder/update-query-builder.js +25 -0
- package/dist/esm/query-compiler/default-query-compiler.d.ts +7 -0
- package/dist/esm/query-compiler/default-query-compiler.js +74 -1
- package/dist/esm/raw-builder/sql.d.ts +96 -96
- package/dist/esm/raw-builder/sql.js +0 -96
- package/dist/esm/schema/column-definition-builder.js +3 -2
- package/dist/esm/schema/create-table-builder.d.ts +54 -0
- package/dist/esm/schema/create-table-builder.js +66 -1
- package/dist/esm/schema/foreign-key-constraint-builder.js +3 -2
- package/dist/esm/util/explainable.d.ts +5 -0
- package/dist/esm/util/explainable.js +2 -0
- package/package.json +3 -1
package/README.md
CHANGED
|
@@ -21,7 +21,7 @@ column names, aliases and types from selected subqueries, joined subqueries, `wi
|
|
|
21
21
|
much anything you can think of.
|
|
22
22
|
|
|
23
23
|
Of course there are cases where things cannot be typed at compile time, and Kysely offers escape
|
|
24
|
-
hatches for these situations. See the [sql template tag](https://koskimas.github.io/kysely/
|
|
24
|
+
hatches for these situations. See the [sql template tag](https://koskimas.github.io/kysely/functions/sql.html)
|
|
25
25
|
and the [DynamicModule](https://koskimas.github.io/kysely/classes/DynamicModule.html#ref) for more info.
|
|
26
26
|
|
|
27
27
|
If you start using Kysely and can't find something you'd want to use, please open an issue or join our
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { DefaultQueryCompiler } from '../../query-compiler/default-query-compiler.js';
|
|
2
2
|
export declare class MysqlQueryCompiler extends DefaultQueryCompiler {
|
|
3
3
|
protected getCurrentParameterPlaceholder(): string;
|
|
4
|
+
protected getLeftExplainOptionsWrapper(): string;
|
|
5
|
+
protected getExplainOptionAssignment(): string;
|
|
6
|
+
protected getExplainOptionsDelimiter(): string;
|
|
7
|
+
protected getRightExplainOptionsWrapper(): string;
|
|
4
8
|
protected getLeftIdentifierWrapper(): string;
|
|
5
9
|
protected getRightIdentifierWrapper(): string;
|
|
10
|
+
protected sanitizeIdentifier(identifier: string): string;
|
|
6
11
|
}
|
|
@@ -2,15 +2,31 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MysqlQueryCompiler = void 0;
|
|
4
4
|
const default_query_compiler_js_1 = require("../../query-compiler/default-query-compiler.js");
|
|
5
|
+
const ID_WRAP_REGEX = /`/g;
|
|
5
6
|
class MysqlQueryCompiler extends default_query_compiler_js_1.DefaultQueryCompiler {
|
|
6
7
|
getCurrentParameterPlaceholder() {
|
|
7
8
|
return '?';
|
|
8
9
|
}
|
|
10
|
+
getLeftExplainOptionsWrapper() {
|
|
11
|
+
return '';
|
|
12
|
+
}
|
|
13
|
+
getExplainOptionAssignment() {
|
|
14
|
+
return '=';
|
|
15
|
+
}
|
|
16
|
+
getExplainOptionsDelimiter() {
|
|
17
|
+
return ' ';
|
|
18
|
+
}
|
|
19
|
+
getRightExplainOptionsWrapper() {
|
|
20
|
+
return '';
|
|
21
|
+
}
|
|
9
22
|
getLeftIdentifierWrapper() {
|
|
10
23
|
return '`';
|
|
11
24
|
}
|
|
12
25
|
getRightIdentifierWrapper() {
|
|
13
26
|
return '`';
|
|
14
27
|
}
|
|
28
|
+
sanitizeIdentifier(identifier) {
|
|
29
|
+
return identifier.replace(ID_WRAP_REGEX, '``');
|
|
30
|
+
}
|
|
15
31
|
}
|
|
16
32
|
exports.MysqlQueryCompiler = MysqlQueryCompiler;
|
|
@@ -21,33 +21,41 @@ class PostgresIntrospector {
|
|
|
21
21
|
let query = this.#db
|
|
22
22
|
.selectFrom('pg_catalog.pg_attribute as a')
|
|
23
23
|
.innerJoin('pg_catalog.pg_class as c', 'a.attrelid', 'c.oid')
|
|
24
|
-
.innerJoin('pg_catalog.
|
|
24
|
+
.innerJoin('pg_catalog.pg_namespace as ns', 'c.relnamespace', 'ns.oid')
|
|
25
25
|
.innerJoin('pg_catalog.pg_type as typ', 'a.atttypid', 'typ.oid')
|
|
26
26
|
.select([
|
|
27
27
|
'a.attname as column',
|
|
28
28
|
'a.attnotnull as not_null',
|
|
29
29
|
'a.atthasdef as has_default',
|
|
30
|
-
'
|
|
31
|
-
'
|
|
30
|
+
'c.relname as table',
|
|
31
|
+
'ns.nspname as schema',
|
|
32
32
|
'typ.typname as type',
|
|
33
33
|
// Detect if the column is auto incrementing by finding the sequence
|
|
34
34
|
// that is created for `serial` and `bigserial` columns.
|
|
35
35
|
this.#db
|
|
36
36
|
.selectFrom('pg_class')
|
|
37
37
|
.select((0, sql_js_1.sql) `true`.as('auto_incrementing'))
|
|
38
|
+
// Make sure the sequence is in the same schema as the table.
|
|
39
|
+
.whereRef('relnamespace', '=', 'c.relnamespace')
|
|
38
40
|
.where('relkind', '=', 'S')
|
|
39
|
-
.where('relname', '=', (0, sql_js_1.sql) `
|
|
41
|
+
.where('relname', '=', (0, sql_js_1.sql) `c.relname || '_' || a.attname || '_seq'`)
|
|
40
42
|
.as('auto_incrementing'),
|
|
41
43
|
])
|
|
42
|
-
|
|
43
|
-
.where('
|
|
44
|
-
.where('
|
|
44
|
+
// r == normal table
|
|
45
|
+
.where('c.relkind', '=', 'r')
|
|
46
|
+
.where('ns.nspname', '!~', '^pg_')
|
|
47
|
+
.where('ns.nspname', '!=', 'information_schema')
|
|
48
|
+
// No system columns
|
|
49
|
+
.where('a.attnum', '>=', 0)
|
|
45
50
|
.where('a.attisdropped', '!=', true)
|
|
51
|
+
.orderBy('ns.nspname')
|
|
52
|
+
.orderBy('c.relname')
|
|
53
|
+
.orderBy('a.attname')
|
|
46
54
|
.castTo();
|
|
47
55
|
if (!options.withInternalKyselyTables) {
|
|
48
56
|
query = query
|
|
49
|
-
.where('
|
|
50
|
-
.where('
|
|
57
|
+
.where('c.relname', '!=', migrator_js_1.DEFAULT_MIGRATION_TABLE)
|
|
58
|
+
.where('c.relname', '!=', migrator_js_1.DEFAULT_MIGRATION_LOCK_TABLE);
|
|
51
59
|
}
|
|
52
60
|
const rawColumns = await query.execute();
|
|
53
61
|
return this.#parseTableMetadata(rawColumns);
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { DefaultQueryCompiler } from '../../query-compiler/default-query-compiler.js';
|
|
2
2
|
export declare class PostgresQueryCompiler extends DefaultQueryCompiler {
|
|
3
|
-
protected
|
|
4
|
-
protected getLeftIdentifierWrapper(): string;
|
|
5
|
-
protected getRightIdentifierWrapper(): string;
|
|
3
|
+
protected sanitizeIdentifier(identifier: string): string;
|
|
6
4
|
}
|
|
@@ -2,15 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PostgresQueryCompiler = void 0;
|
|
4
4
|
const default_query_compiler_js_1 = require("../../query-compiler/default-query-compiler.js");
|
|
5
|
+
const ID_WRAP_REGEX = /"/g;
|
|
5
6
|
class PostgresQueryCompiler extends default_query_compiler_js_1.DefaultQueryCompiler {
|
|
6
|
-
|
|
7
|
-
return '
|
|
8
|
-
}
|
|
9
|
-
getLeftIdentifierWrapper() {
|
|
10
|
-
return '"';
|
|
11
|
-
}
|
|
12
|
-
getRightIdentifierWrapper() {
|
|
13
|
-
return '"';
|
|
7
|
+
sanitizeIdentifier(identifier) {
|
|
8
|
+
return identifier.replace(ID_WRAP_REGEX, '""');
|
|
14
9
|
}
|
|
15
10
|
}
|
|
16
11
|
exports.PostgresQueryCompiler = PostgresQueryCompiler;
|
|
@@ -18,6 +18,7 @@ class SqliteIntrospector {
|
|
|
18
18
|
.where('type', '=', 'table')
|
|
19
19
|
.where('name', 'not like', 'sqlite_%')
|
|
20
20
|
.select('name')
|
|
21
|
+
.orderBy('name')
|
|
21
22
|
.castTo();
|
|
22
23
|
if (!options.withInternalKyselyTables) {
|
|
23
24
|
query = query
|
|
@@ -50,6 +51,7 @@ class SqliteIntrospector {
|
|
|
50
51
|
const columns = await db
|
|
51
52
|
.selectFrom((0, sql_js_1.sql) `pragma_table_info(${table})`.as('table_info'))
|
|
52
53
|
.select(['name', 'type', 'notnull', 'dflt_value'])
|
|
54
|
+
.orderBy('name')
|
|
53
55
|
.execute();
|
|
54
56
|
return {
|
|
55
57
|
name: table,
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { DefaultQueryCompiler } from '../../query-compiler/default-query-compiler.js';
|
|
2
2
|
export declare class SqliteQueryCompiler extends DefaultQueryCompiler {
|
|
3
3
|
protected getCurrentParameterPlaceholder(): string;
|
|
4
|
+
protected getLeftExplainOptionsWrapper(): string;
|
|
5
|
+
protected getRightExplainOptionsWrapper(): string;
|
|
4
6
|
protected getLeftIdentifierWrapper(): string;
|
|
5
7
|
protected getRightIdentifierWrapper(): string;
|
|
6
8
|
protected getAutoIncrement(): string;
|
|
9
|
+
protected sanitizeIdentifier(identifier: string): string;
|
|
7
10
|
}
|
|
@@ -2,10 +2,17 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SqliteQueryCompiler = void 0;
|
|
4
4
|
const default_query_compiler_js_1 = require("../../query-compiler/default-query-compiler.js");
|
|
5
|
+
const ID_WRAP_REGEX = /"/g;
|
|
5
6
|
class SqliteQueryCompiler extends default_query_compiler_js_1.DefaultQueryCompiler {
|
|
6
7
|
getCurrentParameterPlaceholder() {
|
|
7
8
|
return '?';
|
|
8
9
|
}
|
|
10
|
+
getLeftExplainOptionsWrapper() {
|
|
11
|
+
return '';
|
|
12
|
+
}
|
|
13
|
+
getRightExplainOptionsWrapper() {
|
|
14
|
+
return '';
|
|
15
|
+
}
|
|
9
16
|
getLeftIdentifierWrapper() {
|
|
10
17
|
return '"';
|
|
11
18
|
}
|
|
@@ -15,5 +22,8 @@ class SqliteQueryCompiler extends default_query_compiler_js_1.DefaultQueryCompil
|
|
|
15
22
|
getAutoIncrement() {
|
|
16
23
|
return 'autoincrement';
|
|
17
24
|
}
|
|
25
|
+
sanitizeIdentifier(identifier) {
|
|
26
|
+
return identifier.replace(ID_WRAP_REGEX, '""');
|
|
27
|
+
}
|
|
18
28
|
}
|
|
19
29
|
exports.SqliteQueryCompiler = SqliteQueryCompiler;
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -73,6 +73,7 @@ export * from './migration/file-migration-provider.js';
|
|
|
73
73
|
export * from './plugin/kysely-plugin.js';
|
|
74
74
|
export * from './plugin/camel-case/camel-case-plugin.js';
|
|
75
75
|
export * from './plugin/deduplicate-joins/deduplicate-joins-plugin.js';
|
|
76
|
+
export * from './plugin/with-schema/with-schema-plugin.js';
|
|
76
77
|
export * from './operation-node/add-column-node.js';
|
|
77
78
|
export * from './operation-node/add-constraint-node.js';
|
|
78
79
|
export * from './operation-node/alias-node.js';
|
|
@@ -149,8 +150,10 @@ export * from './operation-node/value-node.js';
|
|
|
149
150
|
export * from './operation-node/values-node.js';
|
|
150
151
|
export * from './operation-node/where-node.js';
|
|
151
152
|
export * from './operation-node/with-node.js';
|
|
153
|
+
export * from './operation-node/explain-node.js';
|
|
152
154
|
export * from './util/column-type.js';
|
|
153
155
|
export * from './util/compilable.js';
|
|
156
|
+
export * from './util/explainable.js';
|
|
154
157
|
export * from './util/log.js';
|
|
155
158
|
export { AnyColumn, UnknownRow, AnySelectQueryBuilder, } from './util/type-utils.js';
|
|
156
159
|
export { SelectExpression, SelectExpressionOrList, Selection, } from './parser/select-parser.js';
|
package/dist/cjs/index.js
CHANGED
|
@@ -89,6 +89,7 @@ __exportStar(require("./migration/file-migration-provider.js"), exports);
|
|
|
89
89
|
__exportStar(require("./plugin/kysely-plugin.js"), exports);
|
|
90
90
|
__exportStar(require("./plugin/camel-case/camel-case-plugin.js"), exports);
|
|
91
91
|
__exportStar(require("./plugin/deduplicate-joins/deduplicate-joins-plugin.js"), exports);
|
|
92
|
+
__exportStar(require("./plugin/with-schema/with-schema-plugin.js"), exports);
|
|
92
93
|
__exportStar(require("./operation-node/add-column-node.js"), exports);
|
|
93
94
|
__exportStar(require("./operation-node/add-constraint-node.js"), exports);
|
|
94
95
|
__exportStar(require("./operation-node/alias-node.js"), exports);
|
|
@@ -165,6 +166,8 @@ __exportStar(require("./operation-node/value-node.js"), exports);
|
|
|
165
166
|
__exportStar(require("./operation-node/values-node.js"), exports);
|
|
166
167
|
__exportStar(require("./operation-node/where-node.js"), exports);
|
|
167
168
|
__exportStar(require("./operation-node/with-node.js"), exports);
|
|
169
|
+
__exportStar(require("./operation-node/explain-node.js"), exports);
|
|
168
170
|
__exportStar(require("./util/column-type.js"), exports);
|
|
169
171
|
__exportStar(require("./util/compilable.js"), exports);
|
|
172
|
+
__exportStar(require("./util/explainable.js"), exports);
|
|
170
173
|
__exportStar(require("./util/log.js"), exports);
|
|
@@ -2,8 +2,11 @@ import { OperationNode } from './operation-node.js';
|
|
|
2
2
|
import { TableNode } from './table-node.js';
|
|
3
3
|
import { ConstraintNode } from './constraint-node.js';
|
|
4
4
|
import { ColumnDefinitionNode } from './column-definition-node.js';
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
import { ArrayItemType } from '../util/type-utils.js';
|
|
6
|
+
import { RawNode } from './raw-node.js';
|
|
7
|
+
export declare const ON_COMMIT_ACTIONS: string[];
|
|
8
|
+
export declare type OnCommitAction = ArrayItemType<typeof ON_COMMIT_ACTIONS>;
|
|
9
|
+
export declare type CreateTableNodeParams = Omit<CreateTableNode, 'kind' | 'table' | 'columns' | 'constraints' | 'frontModifiers' | 'endModifiers'>;
|
|
7
10
|
export interface CreateTableNode extends OperationNode {
|
|
8
11
|
readonly kind: 'CreateTableNode';
|
|
9
12
|
readonly table: TableNode;
|
|
@@ -12,6 +15,8 @@ export interface CreateTableNode extends OperationNode {
|
|
|
12
15
|
readonly temporary?: boolean;
|
|
13
16
|
readonly ifNotExists?: boolean;
|
|
14
17
|
readonly onCommit?: OnCommitAction;
|
|
18
|
+
readonly frontModifiers?: ReadonlyArray<RawNode>;
|
|
19
|
+
readonly endModifiers?: ReadonlyArray<RawNode>;
|
|
15
20
|
}
|
|
16
21
|
/**
|
|
17
22
|
* @internal
|
|
@@ -21,5 +26,7 @@ export declare const CreateTableNode: Readonly<{
|
|
|
21
26
|
create(table: TableNode): CreateTableNode;
|
|
22
27
|
cloneWithColumn(createTable: CreateTableNode, column: ColumnDefinitionNode): CreateTableNode;
|
|
23
28
|
cloneWithConstraint(createTable: CreateTableNode, constraint: ConstraintNode): CreateTableNode;
|
|
29
|
+
cloneWithFrontModifier(createTable: CreateTableNode, modifier: RawNode): CreateTableNode;
|
|
30
|
+
cloneWithEndModifier(createTable: CreateTableNode, modifier: RawNode): CreateTableNode;
|
|
24
31
|
cloneWith(createTable: CreateTableNode, params: CreateTableNodeParams): CreateTableNode;
|
|
25
32
|
}>;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CreateTableNode = void 0;
|
|
3
|
+
exports.CreateTableNode = exports.ON_COMMIT_ACTIONS = void 0;
|
|
4
4
|
const object_utils_js_1 = require("../util/object-utils.js");
|
|
5
|
+
exports.ON_COMMIT_ACTIONS = ['preserve rows', 'delete rows', 'drop'];
|
|
5
6
|
/**
|
|
6
7
|
* @internal
|
|
7
8
|
*/
|
|
@@ -30,6 +31,22 @@ exports.CreateTableNode = (0, object_utils_js_1.freeze)({
|
|
|
30
31
|
: (0, object_utils_js_1.freeze)([constraint]),
|
|
31
32
|
});
|
|
32
33
|
},
|
|
34
|
+
cloneWithFrontModifier(createTable, modifier) {
|
|
35
|
+
return (0, object_utils_js_1.freeze)({
|
|
36
|
+
...createTable,
|
|
37
|
+
frontModifiers: createTable.frontModifiers
|
|
38
|
+
? (0, object_utils_js_1.freeze)([...createTable.frontModifiers, modifier])
|
|
39
|
+
: (0, object_utils_js_1.freeze)([modifier]),
|
|
40
|
+
});
|
|
41
|
+
},
|
|
42
|
+
cloneWithEndModifier(createTable, modifier) {
|
|
43
|
+
return (0, object_utils_js_1.freeze)({
|
|
44
|
+
...createTable,
|
|
45
|
+
endModifiers: createTable.endModifiers
|
|
46
|
+
? (0, object_utils_js_1.freeze)([...createTable.endModifiers, modifier])
|
|
47
|
+
: (0, object_utils_js_1.freeze)([modifier]),
|
|
48
|
+
});
|
|
49
|
+
},
|
|
33
50
|
cloneWith(createTable, params) {
|
|
34
51
|
return (0, object_utils_js_1.freeze)({
|
|
35
52
|
...createTable,
|
|
@@ -8,6 +8,7 @@ import { WithNode } from './with-node.js';
|
|
|
8
8
|
import { LimitNode } from './limit-node.js';
|
|
9
9
|
import { OrderByNode } from './order-by-node.js';
|
|
10
10
|
import { OrderByItemNode } from './order-by-item-node.js';
|
|
11
|
+
import { ExplainNode } from './explain-node.js';
|
|
11
12
|
export interface DeleteQueryNode extends OperationNode {
|
|
12
13
|
readonly kind: 'DeleteQueryNode';
|
|
13
14
|
readonly from: FromNode;
|
|
@@ -17,6 +18,7 @@ export interface DeleteQueryNode extends OperationNode {
|
|
|
17
18
|
readonly with?: WithNode;
|
|
18
19
|
readonly orderBy?: OrderByNode;
|
|
19
20
|
readonly limit?: LimitNode;
|
|
21
|
+
readonly explain?: ExplainNode;
|
|
20
22
|
}
|
|
21
23
|
/**
|
|
22
24
|
* @internal
|
|
@@ -26,4 +28,5 @@ export declare const DeleteQueryNode: Readonly<{
|
|
|
26
28
|
create(fromItem: TableExpressionNode, withNode?: WithNode): DeleteQueryNode;
|
|
27
29
|
cloneWithOrderByItem(deleteNode: DeleteQueryNode, item: OrderByItemNode): DeleteQueryNode;
|
|
28
30
|
cloneWithLimit(deleteNode: DeleteQueryNode, limit: LimitNode): DeleteQueryNode;
|
|
31
|
+
cloneWithExplain(deleteNode: DeleteQueryNode, explain: ExplainNode): DeleteQueryNode;
|
|
29
32
|
}>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ExplainFormat } from '../util/explainable.js';
|
|
2
|
+
import { AnyRawBuilder } from '../util/type-utils.js';
|
|
3
|
+
import { OperationNode } from './operation-node.js';
|
|
4
|
+
import { RawNode } from './raw-node.js';
|
|
5
|
+
export interface ExplainNode extends OperationNode {
|
|
6
|
+
readonly kind: 'ExplainNode';
|
|
7
|
+
readonly format?: ExplainFormat;
|
|
8
|
+
readonly options?: RawNode;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
export declare const ExplainNode: Readonly<{
|
|
14
|
+
is(node: OperationNode): node is ExplainNode;
|
|
15
|
+
create(format?: ExplainFormat, options?: AnyRawBuilder): ExplainNode;
|
|
16
|
+
}>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ExplainNode = void 0;
|
|
4
|
+
const object_utils_js_1 = require("../util/object-utils.js");
|
|
5
|
+
/**
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
exports.ExplainNode = (0, object_utils_js_1.freeze)({
|
|
9
|
+
is(node) {
|
|
10
|
+
return node.kind === 'ExplainNode';
|
|
11
|
+
},
|
|
12
|
+
create(format, options) {
|
|
13
|
+
return (0, object_utils_js_1.freeze)({
|
|
14
|
+
kind: 'ExplainNode',
|
|
15
|
+
format,
|
|
16
|
+
options: options?.toOperationNode(),
|
|
17
|
+
});
|
|
18
|
+
},
|
|
19
|
+
});
|
|
@@ -20,8 +20,8 @@ export declare const ForeignKeyConstraintNode: Readonly<{
|
|
|
20
20
|
create(sourceColumns: ReadonlyArray<ColumnNode>, targetTable: TableNode, targetColumns: ReadonlyArray<ColumnNode>, constraintName?: string): ForeignKeyConstraintNode;
|
|
21
21
|
cloneWith(node: ForeignKeyConstraintNode, props: ForeignKeyConstraintNodeProps): Readonly<{
|
|
22
22
|
name?: IdentifierNode | undefined;
|
|
23
|
-
onDelete?:
|
|
24
|
-
onUpdate?:
|
|
23
|
+
onDelete?: "no action" | "restrict" | "cascade" | "set null" | "set default" | undefined;
|
|
24
|
+
onUpdate?: "no action" | "restrict" | "cascade" | "set null" | "set default" | undefined;
|
|
25
25
|
kind: 'ForeignKeyConstraintNode';
|
|
26
26
|
columns: ReadonlyArray<ColumnNode>;
|
|
27
27
|
references: ReferencesNode;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ColumnNode } from './column-node.js';
|
|
2
|
+
import { ExplainNode } from './explain-node.js';
|
|
2
3
|
import { OnConflictNode } from './on-conflict-node.js';
|
|
3
4
|
import { OnDuplicateKeyNode } from './on-duplicate-key-node.js';
|
|
4
5
|
import { OperationNode } from './operation-node.js';
|
|
@@ -20,6 +21,7 @@ export interface InsertQueryNode extends OperationNode {
|
|
|
20
21
|
readonly with?: WithNode;
|
|
21
22
|
readonly ignore?: boolean;
|
|
22
23
|
readonly replace?: boolean;
|
|
24
|
+
readonly explain?: ExplainNode;
|
|
23
25
|
}
|
|
24
26
|
/**
|
|
25
27
|
* @internal
|
|
@@ -68,6 +68,7 @@ import { ValuesNode } from './values-node.js';
|
|
|
68
68
|
import { SelectModifierNode } from './select-modifier-node.js';
|
|
69
69
|
import { CreateTypeNode } from './create-type-node.js';
|
|
70
70
|
import { DropTypeNode } from './drop-type-node.js';
|
|
71
|
+
import { ExplainNode } from './explain-node.js';
|
|
71
72
|
/**
|
|
72
73
|
* Transforms an operation node tree into another one.
|
|
73
74
|
*
|
|
@@ -172,4 +173,5 @@ export declare class OperationNodeTransformer {
|
|
|
172
173
|
protected transformValue(node: ValueNode): ValueNode;
|
|
173
174
|
protected transformPrimitiveValueList(node: PrimitiveValueListNode): PrimitiveValueListNode;
|
|
174
175
|
protected transformOperator(node: OperatorNode): OperatorNode;
|
|
176
|
+
protected transformExplain(node: ExplainNode): ExplainNode;
|
|
175
177
|
}
|
|
@@ -104,6 +104,7 @@ class OperationNodeTransformer {
|
|
|
104
104
|
SelectModifierNode: this.transformSelectModifier.bind(this),
|
|
105
105
|
CreateTypeNode: this.transformCreateType.bind(this),
|
|
106
106
|
DropTypeNode: this.transformDropType.bind(this),
|
|
107
|
+
ExplainNode: this.transformExplain.bind(this),
|
|
107
108
|
});
|
|
108
109
|
transformNode = (node) => {
|
|
109
110
|
if (!node) {
|
|
@@ -137,6 +138,7 @@ class OperationNodeTransformer {
|
|
|
137
138
|
with: this.transformNode(node.with),
|
|
138
139
|
having: this.transformNode(node.having),
|
|
139
140
|
union: this.transformNodeList(node.union),
|
|
141
|
+
explain: this.transformNode(node.explain),
|
|
140
142
|
});
|
|
141
143
|
}
|
|
142
144
|
transformSelection(node) {
|
|
@@ -245,6 +247,7 @@ class OperationNodeTransformer {
|
|
|
245
247
|
with: this.transformNode(node.with),
|
|
246
248
|
ignore: node.ignore,
|
|
247
249
|
replace: node.replace,
|
|
250
|
+
explain: this.transformNode(node.explain),
|
|
248
251
|
});
|
|
249
252
|
}
|
|
250
253
|
transformValues(node) {
|
|
@@ -263,6 +266,7 @@ class OperationNodeTransformer {
|
|
|
263
266
|
with: this.transformNode(node.with),
|
|
264
267
|
orderBy: this.transformNode(node.orderBy),
|
|
265
268
|
limit: this.transformNode(node.limit),
|
|
269
|
+
explain: this.transformNode(node.explain),
|
|
266
270
|
});
|
|
267
271
|
}
|
|
268
272
|
transformReturning(node) {
|
|
@@ -280,6 +284,8 @@ class OperationNodeTransformer {
|
|
|
280
284
|
temporary: node.temporary,
|
|
281
285
|
ifNotExists: node.ifNotExists,
|
|
282
286
|
onCommit: node.onCommit,
|
|
287
|
+
frontModifiers: this.transformNodeList(node.frontModifiers),
|
|
288
|
+
endModifiers: this.transformNodeList(node.endModifiers),
|
|
283
289
|
});
|
|
284
290
|
}
|
|
285
291
|
transformColumnDefinition(node) {
|
|
@@ -346,6 +352,7 @@ class OperationNodeTransformer {
|
|
|
346
352
|
updates: this.transformNodeList(node.updates),
|
|
347
353
|
returning: this.transformNode(node.returning),
|
|
348
354
|
with: this.transformNode(node.with),
|
|
355
|
+
explain: this.transformNode(node.explain),
|
|
349
356
|
});
|
|
350
357
|
}
|
|
351
358
|
transformColumnUpdate(node) {
|
|
@@ -644,5 +651,12 @@ class OperationNodeTransformer {
|
|
|
644
651
|
// An Object.freezed leaf node. No need to clone.
|
|
645
652
|
return node;
|
|
646
653
|
}
|
|
654
|
+
transformExplain(node) {
|
|
655
|
+
return (0, require_all_props_js_1.requireAllProps)({
|
|
656
|
+
kind: 'ExplainNode',
|
|
657
|
+
format: node.format,
|
|
658
|
+
options: this.transformNode(node.options),
|
|
659
|
+
});
|
|
660
|
+
}
|
|
647
661
|
}
|
|
648
662
|
exports.OperationNodeTransformer = OperationNodeTransformer;
|
|
@@ -68,6 +68,7 @@ import { ValuesNode } from './values-node.js';
|
|
|
68
68
|
import { SelectModifierNode } from './select-modifier-node.js';
|
|
69
69
|
import { CreateTypeNode } from './create-type-node.js';
|
|
70
70
|
import { DropTypeNode } from './drop-type-node.js';
|
|
71
|
+
import { ExplainNode } from './explain-node.js';
|
|
71
72
|
export declare abstract class OperationNodeVisitor {
|
|
72
73
|
#private;
|
|
73
74
|
protected readonly nodeStack: OperationNode[];
|
|
@@ -142,4 +143,5 @@ export declare abstract class OperationNodeVisitor {
|
|
|
142
143
|
protected abstract visitSelectModifier(node: SelectModifierNode): void;
|
|
143
144
|
protected abstract visitCreateType(node: CreateTypeNode): void;
|
|
144
145
|
protected abstract visitDropType(node: DropTypeNode): void;
|
|
146
|
+
protected abstract visitExplain(node: ExplainNode): void;
|
|
145
147
|
}
|
|
@@ -77,6 +77,7 @@ class OperationNodeVisitor {
|
|
|
77
77
|
SelectModifierNode: this.visitSelectModifier.bind(this),
|
|
78
78
|
CreateTypeNode: this.visitCreateType.bind(this),
|
|
79
79
|
DropTypeNode: this.visitDropType.bind(this),
|
|
80
|
+
ExplainNode: this.visitExplain.bind(this),
|
|
80
81
|
});
|
|
81
82
|
visitNode = (node) => {
|
|
82
83
|
this.nodeStack.push(node);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare type OperationNodeKind = 'IdentifierNode' | 'RawNode' | 'SelectQueryNode' | 'SelectionNode' | 'ReferenceNode' | 'ColumnNode' | 'TableNode' | 'AliasNode' | 'FromNode' | 'SelectAllNode' | 'FilterNode' | 'AndNode' | 'OrNode' | 'ParensNode' | 'ValueNode' | 'ValueListNode' | 'PrimitiveValueListNode' | 'JoinNode' | 'OperatorNode' | 'WhereNode' | 'InsertQueryNode' | 'DeleteQueryNode' | 'ReturningNode' | 'CreateTableNode' | 'ColumnDefinitionNode' | 'AddColumnNode' | 'DropTableNode' | 'DataTypeNode' | 'OrderByNode' | 'OrderByItemNode' | 'GroupByNode' | 'GroupByItemNode' | 'UpdateQueryNode' | 'ColumnUpdateNode' | 'LimitNode' | 'OffsetNode' | 'OnConflictNode' | 'OnDuplicateKeyNode' | 'CreateIndexNode' | 'DropIndexNode' | 'ListNode' | 'ReferencesNode' | 'PrimaryKeyConstraintNode' | 'UniqueConstraintNode' | 'CheckConstraintNode' | 'ForeignKeyConstraintNode' | 'WithNode' | 'CommonTableExpressionNode' | 'HavingNode' | 'CreateSchemaNode' | 'DropSchemaNode' | 'AlterTableNode' | 'ModifyColumnNode' | 'DropColumnNode' | 'RenameColumnNode' | 'AlterColumnNode' | 'AddConstraintNode' | 'DropConstraintNode' | 'UnionNode' | 'CreateViewNode' | 'DropViewNode' | 'GeneratedNode' | 'DefaultValueNode' | 'OnNode' | 'ValuesNode' | 'CommonTableExpressionNameNode' | 'SelectModifierNode' | 'CreateTypeNode' | 'DropTypeNode';
|
|
1
|
+
export declare type OperationNodeKind = 'IdentifierNode' | 'RawNode' | 'SelectQueryNode' | 'SelectionNode' | 'ReferenceNode' | 'ColumnNode' | 'TableNode' | 'AliasNode' | 'FromNode' | 'SelectAllNode' | 'FilterNode' | 'AndNode' | 'OrNode' | 'ParensNode' | 'ValueNode' | 'ValueListNode' | 'PrimitiveValueListNode' | 'JoinNode' | 'OperatorNode' | 'WhereNode' | 'InsertQueryNode' | 'DeleteQueryNode' | 'ReturningNode' | 'CreateTableNode' | 'ColumnDefinitionNode' | 'AddColumnNode' | 'DropTableNode' | 'DataTypeNode' | 'OrderByNode' | 'OrderByItemNode' | 'GroupByNode' | 'GroupByItemNode' | 'UpdateQueryNode' | 'ColumnUpdateNode' | 'LimitNode' | 'OffsetNode' | 'OnConflictNode' | 'OnDuplicateKeyNode' | 'CreateIndexNode' | 'DropIndexNode' | 'ListNode' | 'ReferencesNode' | 'PrimaryKeyConstraintNode' | 'UniqueConstraintNode' | 'CheckConstraintNode' | 'ForeignKeyConstraintNode' | 'WithNode' | 'CommonTableExpressionNode' | 'HavingNode' | 'CreateSchemaNode' | 'DropSchemaNode' | 'AlterTableNode' | 'ModifyColumnNode' | 'DropColumnNode' | 'RenameColumnNode' | 'AlterColumnNode' | 'AddConstraintNode' | 'DropConstraintNode' | 'UnionNode' | 'CreateViewNode' | 'DropViewNode' | 'GeneratedNode' | 'DefaultValueNode' | 'OnNode' | 'ValuesNode' | 'CommonTableExpressionNameNode' | 'SelectModifierNode' | 'CreateTypeNode' | 'DropTypeNode' | 'ExplainNode';
|
|
2
2
|
export interface OperationNode {
|
|
3
3
|
readonly kind: OperationNodeKind;
|
|
4
4
|
}
|
|
@@ -13,5 +13,5 @@ export interface ReferenceNode extends OperationNode {
|
|
|
13
13
|
export declare const ReferenceNode: Readonly<{
|
|
14
14
|
is(node: OperationNode): node is ReferenceNode;
|
|
15
15
|
create(table: TableNode, column: ColumnNode): ReferenceNode;
|
|
16
|
-
createSelectAll(table:
|
|
16
|
+
createSelectAll(table: TableNode): ReferenceNode;
|
|
17
17
|
}>;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ReferenceNode = void 0;
|
|
4
|
-
const table_node_js_1 = require("./table-node.js");
|
|
5
4
|
const select_all_node_js_1 = require("./select-all-node.js");
|
|
6
5
|
const object_utils_js_1 = require("../util/object-utils.js");
|
|
7
6
|
/**
|
|
@@ -21,7 +20,7 @@ exports.ReferenceNode = (0, object_utils_js_1.freeze)({
|
|
|
21
20
|
createSelectAll(table) {
|
|
22
21
|
return (0, object_utils_js_1.freeze)({
|
|
23
22
|
kind: 'ReferenceNode',
|
|
24
|
-
table
|
|
23
|
+
table,
|
|
25
24
|
column: select_all_node_js_1.SelectAllNode.create(),
|
|
26
25
|
});
|
|
27
26
|
},
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { OperationNode } from './operation-node.js';
|
|
2
2
|
import { ColumnNode } from './column-node.js';
|
|
3
3
|
import { TableNode } from './table-node.js';
|
|
4
|
-
|
|
4
|
+
import { ArrayItemType } from '../util/type-utils.js';
|
|
5
|
+
export declare const ON_MODIFY_FOREIGN_ACTIONS: readonly ["no action", "restrict", "cascade", "set null", "set default"];
|
|
6
|
+
export declare type OnModifyForeignAction = ArrayItemType<typeof ON_MODIFY_FOREIGN_ACTIONS>;
|
|
5
7
|
export interface ReferencesNode extends OperationNode {
|
|
6
8
|
readonly kind: 'ReferencesNode';
|
|
7
9
|
readonly table: TableNode;
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ReferencesNode = void 0;
|
|
3
|
+
exports.ReferencesNode = exports.ON_MODIFY_FOREIGN_ACTIONS = void 0;
|
|
4
4
|
const object_utils_js_1 = require("../util/object-utils.js");
|
|
5
|
+
exports.ON_MODIFY_FOREIGN_ACTIONS = [
|
|
6
|
+
'no action',
|
|
7
|
+
'restrict',
|
|
8
|
+
'cascade',
|
|
9
|
+
'set null',
|
|
10
|
+
'set default',
|
|
11
|
+
];
|
|
5
12
|
/**
|
|
6
13
|
* @internal
|
|
7
14
|
*/
|
|
@@ -14,6 +14,7 @@ import { WhereNode } from './where-node.js';
|
|
|
14
14
|
import { WithNode } from './with-node.js';
|
|
15
15
|
import { UnionNode } from './union-node.js';
|
|
16
16
|
import { SelectModifierNode } from './select-modifier-node.js';
|
|
17
|
+
import { ExplainNode } from './explain-node.js';
|
|
17
18
|
export interface SelectQueryNode extends OperationNode {
|
|
18
19
|
readonly kind: 'SelectQueryNode';
|
|
19
20
|
readonly from: FromNode;
|
|
@@ -30,6 +31,7 @@ export interface SelectQueryNode extends OperationNode {
|
|
|
30
31
|
readonly with?: WithNode;
|
|
31
32
|
readonly having?: HavingNode;
|
|
32
33
|
readonly union?: ReadonlyArray<UnionNode>;
|
|
34
|
+
readonly explain?: ExplainNode;
|
|
33
35
|
}
|
|
34
36
|
/**
|
|
35
37
|
* @internal
|
|
@@ -48,4 +50,5 @@ export declare const SelectQueryNode: Readonly<{
|
|
|
48
50
|
cloneWithHaving(selectNode: SelectQueryNode, filter: FilterExpressionNode): SelectQueryNode;
|
|
49
51
|
cloneWithOrHaving(selectNode: SelectQueryNode, filter: FilterExpressionNode): SelectQueryNode;
|
|
50
52
|
cloneWithUnion(selectNode: SelectQueryNode, union: UnionNode): SelectQueryNode;
|
|
53
|
+
cloneWithExplain(selectNode: SelectQueryNode, explain: ExplainNode): SelectQueryNode;
|
|
51
54
|
}>;
|
|
@@ -104,4 +104,10 @@ exports.SelectQueryNode = (0, object_utils_js_1.freeze)({
|
|
|
104
104
|
: (0, object_utils_js_1.freeze)([union]),
|
|
105
105
|
});
|
|
106
106
|
},
|
|
107
|
+
cloneWithExplain(selectNode, explain) {
|
|
108
|
+
return (0, object_utils_js_1.freeze)({
|
|
109
|
+
...selectNode,
|
|
110
|
+
explain,
|
|
111
|
+
});
|
|
112
|
+
},
|
|
107
113
|
});
|
|
@@ -3,6 +3,7 @@ import { ColumnNode } from './column-node.js';
|
|
|
3
3
|
import { OperationNode } from './operation-node.js';
|
|
4
4
|
import { ReferenceNode } from './reference-node.js';
|
|
5
5
|
import { SelectAllNode } from './select-all-node.js';
|
|
6
|
+
import { TableNode } from './table-node.js';
|
|
6
7
|
declare type SelectionNodeChild = ColumnNode | ReferenceNode | AliasNode | SelectAllNode;
|
|
7
8
|
export interface SelectionNode extends OperationNode {
|
|
8
9
|
readonly kind: 'SelectionNode';
|
|
@@ -15,6 +16,6 @@ export declare const SelectionNode: Readonly<{
|
|
|
15
16
|
is(node: OperationNode): node is SelectionNode;
|
|
16
17
|
create(selection: SelectionNodeChild): SelectionNode;
|
|
17
18
|
createSelectAll(): SelectionNode;
|
|
18
|
-
createSelectAllFromTable(table:
|
|
19
|
+
createSelectAllFromTable(table: TableNode): SelectionNode;
|
|
19
20
|
}>;
|
|
20
21
|
export {};
|