@neogroup/neorm 0.0.1 → 0.0.2

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.
Files changed (225) hide show
  1. package/README.md +1 -0
  2. package/dist/database/Connection.d.ts +10 -0
  3. package/dist/database/Connection.js +3 -0
  4. package/dist/database/Connection.js.map +1 -0
  5. package/dist/database/DB.d.ts +58 -0
  6. package/dist/database/DB.js +229 -0
  7. package/dist/database/DB.js.map +1 -0
  8. package/dist/database/DataConnection.d.ts +24 -0
  9. package/dist/database/DataConnection.js +99 -0
  10. package/dist/database/DataConnection.js.map +1 -0
  11. package/dist/database/DataSet.d.ts +3 -0
  12. package/dist/database/DataSet.js +3 -0
  13. package/dist/database/DataSet.js.map +1 -0
  14. package/dist/database/DataSource.d.ts +23 -0
  15. package/dist/database/DataSource.js +56 -0
  16. package/dist/database/DataSource.js.map +1 -0
  17. package/dist/database/DataTable.d.ts +19 -0
  18. package/dist/database/DataTable.js +75 -0
  19. package/dist/database/DataTable.js.map +1 -0
  20. package/dist/database/index.d.ts +7 -0
  21. package/dist/database/index.js +24 -0
  22. package/dist/database/index.js.map +1 -0
  23. package/dist/database/sources/index.d.ts +3 -0
  24. package/dist/database/sources/index.js +20 -0
  25. package/dist/database/sources/index.js.map +1 -0
  26. package/dist/database/sources/mysql/MysqlConnection.d.ts +14 -0
  27. package/dist/database/sources/mysql/MysqlConnection.js +36 -0
  28. package/dist/database/sources/mysql/MysqlConnection.js.map +1 -0
  29. package/dist/database/sources/mysql/MysqlDataSource.d.ts +24 -0
  30. package/dist/database/sources/mysql/MysqlDataSource.js +72 -0
  31. package/dist/database/sources/mysql/MysqlDataSource.js.map +1 -0
  32. package/dist/database/sources/mysql/MysqlQueryBuilder.d.ts +6 -0
  33. package/dist/database/sources/mysql/MysqlQueryBuilder.js +28 -0
  34. package/dist/database/sources/mysql/MysqlQueryBuilder.js.map +1 -0
  35. package/dist/database/sources/mysql/index.d.ts +3 -0
  36. package/dist/database/sources/mysql/index.js +20 -0
  37. package/dist/database/sources/mysql/index.js.map +1 -0
  38. package/dist/database/sources/postgres/PostgresConnection.d.ts +13 -0
  39. package/dist/database/sources/postgres/PostgresConnection.js +40 -0
  40. package/dist/database/sources/postgres/PostgresConnection.js.map +1 -0
  41. package/dist/database/sources/postgres/PostgresDataSource.d.ts +24 -0
  42. package/dist/database/sources/postgres/PostgresDataSource.js +73 -0
  43. package/dist/database/sources/postgres/PostgresDataSource.js.map +1 -0
  44. package/dist/database/sources/postgres/PostgresQueryBuilder.d.ts +5 -0
  45. package/dist/database/sources/postgres/PostgresQueryBuilder.js +13 -0
  46. package/dist/database/sources/postgres/PostgresQueryBuilder.js.map +1 -0
  47. package/dist/database/sources/postgres/index.d.ts +2 -0
  48. package/dist/database/sources/postgres/index.js +19 -0
  49. package/dist/database/sources/postgres/index.js.map +1 -0
  50. package/dist/database/sources/sqlite/SqliteConnection.d.ts +14 -0
  51. package/dist/database/sources/sqlite/SqliteConnection.js +37 -0
  52. package/dist/database/sources/sqlite/SqliteConnection.js.map +1 -0
  53. package/dist/database/sources/sqlite/SqliteDataSource.d.ts +11 -0
  54. package/dist/database/sources/sqlite/SqliteDataSource.js +34 -0
  55. package/dist/database/sources/sqlite/SqliteDataSource.js.map +1 -0
  56. package/dist/database/sources/sqlite/SqliteQueryBuilder.d.ts +6 -0
  57. package/dist/database/sources/sqlite/SqliteQueryBuilder.js +23 -0
  58. package/dist/database/sources/sqlite/SqliteQueryBuilder.js.map +1 -0
  59. package/dist/database/sources/sqlite/index.d.ts +3 -0
  60. package/dist/database/sources/sqlite/index.js +20 -0
  61. package/dist/database/sources/sqlite/index.js.map +1 -0
  62. package/dist/entities/CastType.d.ts +1 -0
  63. package/dist/entities/CastType.js +3 -0
  64. package/dist/entities/CastType.js.map +1 -0
  65. package/dist/entities/Entities.d.ts +14 -0
  66. package/dist/entities/Entities.js +85 -0
  67. package/dist/entities/Entities.js.map +1 -0
  68. package/dist/entities/EntityQuery.d.ts +60 -0
  69. package/dist/entities/EntityQuery.js +305 -0
  70. package/dist/entities/EntityQuery.js.map +1 -0
  71. package/dist/entities/RelationshipType.d.ts +1 -0
  72. package/dist/entities/RelationshipType.js +3 -0
  73. package/dist/entities/RelationshipType.js.map +1 -0
  74. package/dist/entities/decorators/BelongsTo.d.ts +2 -0
  75. package/dist/entities/decorators/BelongsTo.js +16 -0
  76. package/dist/entities/decorators/BelongsTo.js.map +1 -0
  77. package/dist/entities/decorators/Column.d.ts +13 -0
  78. package/dist/entities/decorators/Column.js +13 -0
  79. package/dist/entities/decorators/Column.js.map +1 -0
  80. package/dist/entities/decorators/Entity.d.ts +15 -0
  81. package/dist/entities/decorators/Entity.js +170 -0
  82. package/dist/entities/decorators/Entity.js.map +1 -0
  83. package/dist/entities/decorators/HasMany.d.ts +2 -0
  84. package/dist/entities/decorators/HasMany.js +16 -0
  85. package/dist/entities/decorators/HasMany.js.map +1 -0
  86. package/dist/entities/decorators/HasManyThrough.d.ts +2 -0
  87. package/dist/entities/decorators/HasManyThrough.js +24 -0
  88. package/dist/entities/decorators/HasManyThrough.js.map +1 -0
  89. package/dist/entities/decorators/HasOne.d.ts +2 -0
  90. package/dist/entities/decorators/HasOne.js +13 -0
  91. package/dist/entities/decorators/HasOne.js.map +1 -0
  92. package/dist/entities/decorators/HasOneThrough.d.ts +2 -0
  93. package/dist/entities/decorators/HasOneThrough.js +24 -0
  94. package/dist/entities/decorators/HasOneThrough.js.map +1 -0
  95. package/dist/entities/decorators/casts.d.ts +3 -0
  96. package/dist/entities/decorators/casts.js +39 -0
  97. package/dist/entities/decorators/casts.js.map +1 -0
  98. package/dist/entities/decorators/index.d.ts +7 -0
  99. package/dist/entities/decorators/index.js +24 -0
  100. package/dist/entities/decorators/index.js.map +1 -0
  101. package/dist/entities/decorators/metadata.d.ts +19 -0
  102. package/dist/entities/decorators/metadata.js +12 -0
  103. package/dist/entities/decorators/metadata.js.map +1 -0
  104. package/dist/entities/index.d.ts +5 -3
  105. package/dist/entities/index.js +5 -2
  106. package/dist/entities/index.js.map +1 -1
  107. package/dist/entities/relationship.d.ts +1 -6
  108. package/dist/entities/relationship.js +1 -22
  109. package/dist/entities/relationship.js.map +1 -1
  110. package/dist/index.d.ts +2 -9
  111. package/dist/index.js +2 -14
  112. package/dist/index.js.map +1 -1
  113. package/dist/query/DeleteQuery.d.ts +8 -0
  114. package/dist/query/DeleteQuery.js +17 -0
  115. package/dist/query/DeleteQuery.js.map +1 -0
  116. package/dist/query/InsertQuery.d.ts +8 -0
  117. package/dist/query/InsertQuery.js +17 -0
  118. package/dist/query/InsertQuery.js.map +1 -0
  119. package/dist/query/QueryTable.d.ts +7 -0
  120. package/dist/query/QueryTable.js +3 -0
  121. package/dist/query/QueryTable.js.map +1 -0
  122. package/dist/query/SelectQuery.d.ts +9 -0
  123. package/dist/query/SelectQuery.js +33 -0
  124. package/dist/query/SelectQuery.js.map +1 -0
  125. package/dist/query/UpdateQuery.d.ts +8 -0
  126. package/dist/query/UpdateQuery.js +17 -0
  127. package/dist/query/UpdateQuery.js.map +1 -0
  128. package/dist/query/builders/DefaultQueryBuilder.d.ts +87 -0
  129. package/dist/query/builders/DefaultQueryBuilder.js +524 -0
  130. package/dist/query/builders/DefaultQueryBuilder.js.map +1 -0
  131. package/dist/query/builders/QueryBuilder.d.ts +5 -0
  132. package/dist/query/builders/QueryBuilder.js +7 -0
  133. package/dist/query/builders/QueryBuilder.js.map +1 -0
  134. package/dist/query/builders/index.d.ts +2 -2
  135. package/dist/query/builders/index.js +2 -2
  136. package/dist/query/builders/index.js.map +1 -1
  137. package/dist/query/conditions/BasicCondition.d.ts +6 -0
  138. package/dist/query/conditions/BasicCondition.js +3 -0
  139. package/dist/query/conditions/BasicCondition.js.map +1 -0
  140. package/dist/query/conditions/ColumnCondition.d.ts +6 -0
  141. package/dist/query/conditions/ColumnCondition.js +3 -0
  142. package/dist/query/conditions/ColumnCondition.js.map +1 -0
  143. package/dist/query/conditions/Condition.d.ts +5 -0
  144. package/dist/query/conditions/Condition.js +3 -0
  145. package/dist/query/conditions/Condition.js.map +1 -0
  146. package/dist/query/conditions/ConditionConnector.d.ts +4 -0
  147. package/dist/query/conditions/ConditionConnector.js +9 -0
  148. package/dist/query/conditions/ConditionConnector.js.map +1 -0
  149. package/dist/query/conditions/ConditionGroup.d.ts +40 -0
  150. package/dist/query/conditions/ConditionGroup.js +138 -0
  151. package/dist/query/conditions/ConditionGroup.js.map +1 -0
  152. package/dist/query/conditions/ConnectedCondition.d.ts +6 -0
  153. package/dist/query/conditions/ConnectedCondition.js +3 -0
  154. package/dist/query/conditions/ConnectedCondition.js.map +1 -0
  155. package/dist/query/conditions/RawCondition.d.ts +4 -0
  156. package/dist/query/conditions/RawCondition.js +3 -0
  157. package/dist/query/conditions/RawCondition.js.map +1 -0
  158. package/dist/query/conditions/index.d.ts +7 -0
  159. package/dist/query/conditions/index.js +24 -0
  160. package/dist/query/conditions/index.js.map +1 -0
  161. package/dist/query/features/HasAlias.d.ts +6 -0
  162. package/dist/query/features/HasAlias.js +17 -0
  163. package/dist/query/features/HasAlias.js.map +1 -0
  164. package/dist/query/features/HasDistinct.d.ts +6 -0
  165. package/dist/query/features/HasDistinct.js +20 -0
  166. package/dist/query/features/HasDistinct.js.map +1 -0
  167. package/dist/query/features/HasFieldValues.d.ts +9 -0
  168. package/dist/query/features/HasFieldValues.js +27 -0
  169. package/dist/query/features/HasFieldValues.js.map +1 -0
  170. package/dist/query/features/HasGroupByFields.d.ts +7 -0
  171. package/dist/query/features/HasGroupByFields.js +21 -0
  172. package/dist/query/features/HasGroupByFields.js.map +1 -0
  173. package/dist/query/features/HasHavingConditions.d.ts +13 -0
  174. package/dist/query/features/HasHavingConditions.js +28 -0
  175. package/dist/query/features/HasHavingConditions.js.map +1 -0
  176. package/dist/query/features/HasJoins.d.ts +41 -0
  177. package/dist/query/features/HasJoins.js +66 -0
  178. package/dist/query/features/HasJoins.js.map +1 -0
  179. package/dist/query/features/HasLimit.d.ts +6 -0
  180. package/dist/query/features/HasLimit.js +20 -0
  181. package/dist/query/features/HasLimit.js.map +1 -0
  182. package/dist/query/features/HasOffset.d.ts +6 -0
  183. package/dist/query/features/HasOffset.js +20 -0
  184. package/dist/query/features/HasOffset.js.map +1 -0
  185. package/dist/query/features/HasOrderByFields.d.ts +15 -0
  186. package/dist/query/features/HasOrderByFields.js +38 -0
  187. package/dist/query/features/HasOrderByFields.js.map +1 -0
  188. package/dist/query/features/HasSelectFields.d.ts +11 -0
  189. package/dist/query/features/HasSelectFields.js +21 -0
  190. package/dist/query/features/HasSelectFields.js.map +1 -0
  191. package/dist/query/features/HasTable.d.ts +7 -0
  192. package/dist/query/features/HasTable.js +20 -0
  193. package/dist/query/features/HasTable.js.map +1 -0
  194. package/dist/query/features/HasUnions.d.ts +13 -0
  195. package/dist/query/features/HasUnions.js +21 -0
  196. package/dist/query/features/HasUnions.js.map +1 -0
  197. package/dist/query/features/HasWhen.d.ts +3 -0
  198. package/dist/query/features/HasWhen.js +13 -0
  199. package/dist/query/features/HasWhen.js.map +1 -0
  200. package/dist/query/features/HasWhereConditions.d.ts +35 -0
  201. package/dist/query/features/HasWhereConditions.js +92 -0
  202. package/dist/query/features/HasWhereConditions.js.map +1 -0
  203. package/dist/query/features/index.d.ts +14 -14
  204. package/dist/query/features/index.js +14 -14
  205. package/dist/query/features/index.js.map +1 -1
  206. package/dist/query/fields/BasicField.d.ts +5 -0
  207. package/dist/query/fields/BasicField.js +3 -0
  208. package/dist/query/fields/BasicField.js.map +1 -0
  209. package/dist/query/fields/Field.d.ts +3 -0
  210. package/dist/query/fields/Field.js +3 -0
  211. package/dist/query/fields/Field.js.map +1 -0
  212. package/dist/query/fields/RawField.d.ts +1 -0
  213. package/dist/query/fields/RawField.js +3 -0
  214. package/dist/query/fields/RawField.js.map +1 -0
  215. package/dist/query/fields/index.d.ts +3 -0
  216. package/dist/query/fields/index.js +20 -0
  217. package/dist/query/fields/index.js.map +1 -0
  218. package/dist/query/index.d.ts +7 -7
  219. package/dist/query/index.js +7 -7
  220. package/dist/query/index.js.map +1 -1
  221. package/dist/query/query.js +1 -1
  222. package/dist/query/query.js.map +1 -1
  223. package/dist/query/statement.js +1 -1
  224. package/dist/query/statement.js.map +1 -1
  225. package/package.json +14 -9
@@ -0,0 +1,7 @@
1
+ type RawTable = string;
2
+ type BasicTable = {
3
+ name?: string;
4
+ schema?: string;
5
+ };
6
+ export type QueryTable = RawTable | BasicTable;
7
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=QueryTable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryTable.js","sourceRoot":"","sources":["../../src/query/QueryTable.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { HasAlias, HasDistinct, HasFieldValues, HasGroupByFields, HasHavingConditions, HasJoins, HasLimit, HasOffset, HasSelectFields, HasTable, HasUnions, HasWhen, HasWhereConditions } from './features';
2
+ import { HasOrderByFields } from './features/HasOrderByFields';
3
+ import { Query } from './Query';
4
+ import { QueryTable } from './QueryTable';
5
+ export declare class SelectQuery extends Query {
6
+ constructor(table?: QueryTable);
7
+ }
8
+ export interface SelectQuery extends HasDistinct<SelectQuery>, HasLimit<SelectQuery>, HasOffset<SelectQuery>, HasOrderByFields<SelectQuery>, HasGroupByFields<SelectQuery>, HasHavingConditions<SelectQuery>, HasFieldValues<SelectQuery>, HasSelectFields<SelectQuery>, HasTable<SelectQuery>, HasAlias<SelectQuery>, HasWhereConditions<SelectQuery>, HasJoins<SelectQuery>, HasUnions<SelectQuery>, HasWhen<SelectQuery> {
9
+ }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SelectQuery = void 0;
4
+ const utilities_1 = require("../utilities");
5
+ const features_1 = require("./features");
6
+ const HasOrderByFields_1 = require("./features/HasOrderByFields");
7
+ const Query_1 = require("./Query");
8
+ class SelectQuery extends Query_1.Query {
9
+ constructor(table) {
10
+ super();
11
+ if (table) {
12
+ this.setTable(table);
13
+ }
14
+ }
15
+ }
16
+ exports.SelectQuery = SelectQuery;
17
+ (0, utilities_1.applyMixins)(SelectQuery, [
18
+ features_1.HasDistinct,
19
+ features_1.HasLimit,
20
+ features_1.HasOffset,
21
+ HasOrderByFields_1.HasOrderByFields,
22
+ features_1.HasGroupByFields,
23
+ features_1.HasHavingConditions,
24
+ features_1.HasFieldValues,
25
+ features_1.HasSelectFields,
26
+ features_1.HasTable,
27
+ features_1.HasAlias,
28
+ features_1.HasWhereConditions,
29
+ features_1.HasJoins,
30
+ features_1.HasUnions,
31
+ features_1.HasWhen
32
+ ]);
33
+ //# sourceMappingURL=SelectQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectQuery.js","sourceRoot":"","sources":["../../src/query/SelectQuery.ts"],"names":[],"mappings":";;;AAAA,4CAA0C;AAC1C,yCAcmB;AACnB,kEAA8D;AAC9D,mCAA+B;AAG/B,MAAa,WAAY,SAAQ,aAAK;IACpC,YAAY,KAAkB;QAC5B,KAAK,EAAE,CAAA;QAEP,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;SACrB;IACH,CAAC;CACF;AARD,kCAQC;AAiBD,IAAA,uBAAW,EAAC,WAAW,EAAE;IACvB,sBAAW;IACX,mBAAQ;IACR,oBAAS;IACT,mCAAgB;IAChB,2BAAgB;IAChB,8BAAmB;IACnB,yBAAc;IACd,0BAAe;IACf,mBAAQ;IACR,mBAAQ;IACR,6BAAkB;IAClB,mBAAQ;IACR,oBAAS;IACT,kBAAO;CACR,CAAC,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { HasFieldValues, HasTable, HasWhereConditions } from './features';
2
+ import { Query } from './Query';
3
+ import { QueryTable } from './QueryTable';
4
+ export declare class UpdateQuery extends Query {
5
+ constructor(table?: QueryTable);
6
+ }
7
+ export interface UpdateQuery extends HasTable<UpdateQuery>, HasFieldValues<UpdateQuery>, HasWhereConditions<UpdateQuery> {
8
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpdateQuery = void 0;
4
+ const utilities_1 = require("../utilities");
5
+ const features_1 = require("./features");
6
+ const Query_1 = require("./Query");
7
+ class UpdateQuery extends Query_1.Query {
8
+ constructor(table) {
9
+ super();
10
+ if (table) {
11
+ this.setTable(table);
12
+ }
13
+ }
14
+ }
15
+ exports.UpdateQuery = UpdateQuery;
16
+ (0, utilities_1.applyMixins)(UpdateQuery, [features_1.HasTable, features_1.HasFieldValues, features_1.HasWhereConditions]);
17
+ //# sourceMappingURL=UpdateQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UpdateQuery.js","sourceRoot":"","sources":["../../src/query/UpdateQuery.ts"],"names":[],"mappings":";;;AAAA,4CAA0C;AAC1C,yCAAyE;AACzE,mCAA+B;AAG/B,MAAa,WAAY,SAAQ,aAAK;IACpC,YAAY,KAAkB;QAC5B,KAAK,EAAE,CAAA;QAEP,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;SACrB;IACH,CAAC;CACF;AARD,kCAQC;AAMD,IAAA,uBAAW,EAAC,WAAW,EAAE,CAAC,mBAAQ,EAAE,yBAAc,EAAE,6BAAkB,CAAC,CAAC,CAAA"}
@@ -0,0 +1,87 @@
1
+ import { Condition, ConditionGroup } from '../conditions';
2
+ import { DeleteQuery } from '../DeleteQuery';
3
+ import { Join, OrderByField, SelectField } from '../features';
4
+ import { Field } from '../fields';
5
+ import { InsertQuery } from '../InsertQuery';
6
+ import { Query } from '../Query';
7
+ import { QueryTable } from '../QueryTable';
8
+ import { SelectQuery } from '../SelectQuery';
9
+ import { Statement } from '../Statement';
10
+ import { UpdateQuery } from '../UpdateQuery';
11
+ import { QueryBuilder } from './QueryBuilder';
12
+ export declare class DefaultQueryBuilder extends QueryBuilder {
13
+ protected static readonly SPACE = " ";
14
+ protected static readonly COMMA = ",";
15
+ protected static readonly DOUBLE_QUOTES = "\"";
16
+ protected static readonly EQUALS = "=";
17
+ protected static readonly PARENTHESIS_START = "(";
18
+ protected static readonly PARENTHESIS_END = ")";
19
+ protected static readonly SELECT = "SELECT";
20
+ protected static readonly INSERT = "INSERT";
21
+ protected static readonly UPDATE = "UPDATE";
22
+ protected static readonly DELETE = "DELETE";
23
+ protected static readonly INTO = "INTO";
24
+ protected static readonly SET = "SET";
25
+ protected static readonly VALUES = "VALUES";
26
+ protected static readonly DISTINCT = "DISTINCT";
27
+ protected static readonly ALL = "*";
28
+ protected static readonly AS = "AS";
29
+ protected static readonly POINT = ".";
30
+ protected static readonly FROM = "FROM";
31
+ protected static readonly AND = "AND";
32
+ protected static readonly OR = "OR";
33
+ protected static readonly NULL = "NULL";
34
+ protected static readonly IS = "IS";
35
+ protected static readonly NOT = "NOT";
36
+ protected static readonly ON = "ON";
37
+ protected static readonly WHERE = "WHERE";
38
+ protected static readonly HAVING = "HAVING";
39
+ protected static readonly GROUP = "GROUP";
40
+ protected static readonly ORDER = "ORDER";
41
+ protected static readonly BY = "BY";
42
+ protected static readonly LIMIT = "LIMIT";
43
+ protected static readonly OFFSET = "OFFSET";
44
+ protected static readonly ASC = "ASC";
45
+ protected static readonly DESC = "DESC";
46
+ protected static readonly JOIN = "JOIN";
47
+ protected static readonly INNER = "INNER";
48
+ protected static readonly OUTER = "OUTER";
49
+ protected static readonly LEFT = "LEFT";
50
+ protected static readonly RIGHT = "RIGHT";
51
+ protected static readonly CROSS = "CROSS";
52
+ protected static readonly WILDCARD = "?";
53
+ protected static readonly UNION = "UNION";
54
+ protected static readonly BETWEEN = "BETWEEN";
55
+ buildQuery(query: Query): Statement;
56
+ protected buildSelectQuery(query: SelectQuery, statement: Statement): void;
57
+ protected buildLimitOffset(query: SelectQuery, statement: Statement): void;
58
+ protected buildInsertQuery(query: InsertQuery, statement: Statement): void;
59
+ protected buildUpdateQuery(query: UpdateQuery, statement: Statement): void;
60
+ protected buildDeleteQuery(query: DeleteQuery, statement: Statement): void;
61
+ /**
62
+ * Outputs a plain identifier (column name). Override in engine-specific
63
+ * subclasses to add quoting (e.g. backticks for MySQL).
64
+ */
65
+ protected buildFieldName(name: string, statement: Statement): void;
66
+ /**
67
+ * Parses and outputs a raw string field, supporting:
68
+ * - 'field' → plain identifier
69
+ * - 'table.field' → quoted table + field (engine-aware)
70
+ * - 'FUNC(field)' → function call, field parsed recursively
71
+ * - 'FUNC(table.field)' → function call with qualified field
72
+ * - Any string with spaces is treated as a raw SQL expression and
73
+ * passed through as-is (e.g. 'COUNT(*) AS total').
74
+ */
75
+ protected buildRawFieldString(raw: string, statement: Statement): void;
76
+ protected buildSelectField(field: SelectField, statement: Statement): void;
77
+ protected buildOrderByField(field: OrderByField, statement: Statement): void;
78
+ protected buildField(field: Field, statement: Statement): void;
79
+ protected buildCondition(condition: Condition, statement: Statement): void;
80
+ protected buildConditionGroup(conditionGroup: ConditionGroup, statement: Statement): void;
81
+ protected buildJoin(join: Join, statement: Statement): void;
82
+ protected buildTable(table: QueryTable, statement: Statement): void;
83
+ protected buildValue(value: any, statement: Statement): void;
84
+ protected buildArrayValue(value: Array<any>, statement: Statement): void;
85
+ protected buildSingleValue(value: any, statement: Statement): void;
86
+ protected buildOperator(operator: string, statement: Statement): void;
87
+ }