admindb 1.2.0 → 2.0.0

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 (202) hide show
  1. package/README.md +250 -352
  2. package/dist/app.d.ts +25 -4
  3. package/dist/app.js +79 -15
  4. package/dist/app.js.map +1 -1
  5. package/dist/auth/config.d.ts +19 -0
  6. package/dist/auth/config.js +147 -0
  7. package/dist/auth/config.js.map +1 -0
  8. package/dist/auth/crypto.d.ts +27 -0
  9. package/dist/auth/crypto.js +133 -0
  10. package/dist/auth/crypto.js.map +1 -0
  11. package/dist/auth/index.d.ts +5 -0
  12. package/dist/auth/index.js +22 -0
  13. package/dist/auth/index.js.map +1 -0
  14. package/dist/auth/middleware.d.ts +14 -0
  15. package/dist/auth/middleware.js +100 -0
  16. package/dist/auth/middleware.js.map +1 -0
  17. package/dist/auth/routes.d.ts +7 -0
  18. package/dist/auth/routes.js +78 -0
  19. package/dist/auth/routes.js.map +1 -0
  20. package/dist/auth/types.d.ts +35 -0
  21. package/dist/auth/types.js +11 -0
  22. package/dist/auth/types.js.map +1 -0
  23. package/dist/cli/args.d.ts +45 -0
  24. package/dist/cli/args.js +328 -0
  25. package/dist/cli/args.js.map +1 -0
  26. package/dist/cli/config.d.ts +56 -0
  27. package/dist/cli/config.js +133 -0
  28. package/dist/cli/config.js.map +1 -0
  29. package/dist/cli/index.d.ts +4 -0
  30. package/dist/cli/index.js +21 -0
  31. package/dist/cli/index.js.map +1 -0
  32. package/dist/cli/runner.d.ts +1 -0
  33. package/dist/cli/runner.js +222 -0
  34. package/dist/cli/runner.js.map +1 -0
  35. package/dist/cli.js +2 -127
  36. package/dist/cli.js.map +1 -1
  37. package/dist/data/datasets.d.ts +17 -0
  38. package/dist/data/datasets.js +133 -0
  39. package/dist/data/datasets.js.map +1 -0
  40. package/dist/data/detector.d.ts +30 -0
  41. package/dist/data/detector.js +472 -0
  42. package/dist/data/detector.js.map +1 -0
  43. package/dist/data/engine.d.ts +10 -0
  44. package/dist/data/engine.js +211 -0
  45. package/dist/data/engine.js.map +1 -0
  46. package/dist/data/index.d.ts +5 -0
  47. package/dist/data/index.js +22 -0
  48. package/dist/data/index.js.map +1 -0
  49. package/dist/data/strategies.d.ts +30 -0
  50. package/dist/data/strategies.js +343 -0
  51. package/dist/data/strategies.js.map +1 -0
  52. package/dist/data/types.d.ts +73 -0
  53. package/dist/data/types.js +8 -0
  54. package/dist/data/types.js.map +1 -0
  55. package/dist/db/database.d.ts +14 -142
  56. package/dist/db/database.js +209 -435
  57. package/dist/db/database.js.map +1 -1
  58. package/dist/db/export.d.ts +2 -2
  59. package/dist/db/export.js +7 -2
  60. package/dist/db/export.js.map +1 -1
  61. package/dist/db/filters.d.ts +22 -0
  62. package/dist/db/filters.js +158 -0
  63. package/dist/db/filters.js.map +1 -0
  64. package/dist/db/index.d.ts +8 -0
  65. package/dist/db/index.js +25 -0
  66. package/dist/db/index.js.map +1 -0
  67. package/dist/db/introspection.d.ts +6 -0
  68. package/dist/db/introspection.js +172 -0
  69. package/dist/db/introspection.js.map +1 -0
  70. package/dist/db/manager.d.ts +32 -19
  71. package/dist/db/manager.js +203 -44
  72. package/dist/db/manager.js.map +1 -1
  73. package/dist/db/migrations.d.ts +5 -0
  74. package/dist/db/migrations.js +110 -0
  75. package/dist/db/migrations.js.map +1 -0
  76. package/dist/db/postgres.d.ts +85 -0
  77. package/dist/db/postgres.js +745 -0
  78. package/dist/db/postgres.js.map +1 -0
  79. package/dist/db/types.d.ts +206 -0
  80. package/dist/db/types.js +7 -0
  81. package/dist/db/types.js.map +1 -0
  82. package/dist/index.d.ts +9 -2
  83. package/dist/index.js +46 -4
  84. package/dist/index.js.map +1 -1
  85. package/dist/public/css/app.css +1 -1
  86. package/dist/public/css/input.css +83 -13
  87. package/dist/public/js/app.js +142 -0
  88. package/dist/public/js/browse.js +591 -104
  89. package/dist/public/js/databases.js +105 -13
  90. package/dist/public/js/designer.js +40 -2
  91. package/dist/public/js/forms.js +610 -28
  92. package/dist/public/js/icons.js +51 -0
  93. package/dist/public/js/inspector.js +638 -0
  94. package/dist/public/js/query.js +93 -3
  95. package/dist/public/js/schema.js +170 -52
  96. package/dist/public/js/seed.js +1090 -0
  97. package/dist/routes/api/helpers.d.ts +42 -0
  98. package/dist/routes/api/helpers.js +133 -0
  99. package/dist/routes/api/helpers.js.map +1 -0
  100. package/dist/routes/api/import-export.d.ts +3 -0
  101. package/dist/routes/api/import-export.js +85 -0
  102. package/dist/routes/api/import-export.js.map +1 -0
  103. package/dist/routes/api/index.d.ts +4 -0
  104. package/dist/routes/api/index.js +37 -0
  105. package/dist/routes/api/index.js.map +1 -0
  106. package/dist/routes/api/query.d.ts +3 -0
  107. package/dist/routes/api/query.js +76 -0
  108. package/dist/routes/api/query.js.map +1 -0
  109. package/dist/routes/api/rows.d.ts +3 -0
  110. package/dist/routes/api/rows.js +373 -0
  111. package/dist/routes/api/rows.js.map +1 -0
  112. package/dist/routes/api/seed.d.ts +3 -0
  113. package/dist/routes/api/seed.js +82 -0
  114. package/dist/routes/api/seed.js.map +1 -0
  115. package/dist/routes/api/tables.d.ts +3 -0
  116. package/dist/routes/api/tables.js +160 -0
  117. package/dist/routes/api/tables.js.map +1 -0
  118. package/dist/routes/databases.d.ts +8 -11
  119. package/dist/routes/databases.js +100 -66
  120. package/dist/routes/databases.js.map +1 -1
  121. package/dist/routes/index.d.ts +3 -0
  122. package/dist/routes/index.js +20 -0
  123. package/dist/routes/index.js.map +1 -0
  124. package/dist/routes/pages.d.ts +3 -3
  125. package/dist/routes/pages.js +163 -54
  126. package/dist/routes/pages.js.map +1 -1
  127. package/dist/serverless.d.ts +40 -0
  128. package/dist/serverless.js +210 -0
  129. package/dist/serverless.js.map +1 -0
  130. package/dist/sql/generator.d.ts +4 -3
  131. package/dist/sql/generator.js +103 -6
  132. package/dist/sql/generator.js.map +1 -1
  133. package/dist/sql/index.d.ts +2 -0
  134. package/dist/sql/index.js +19 -0
  135. package/dist/sql/index.js.map +1 -0
  136. package/dist/types/api.d.ts +412 -0
  137. package/dist/types/api.js +9 -0
  138. package/dist/types/api.js.map +1 -0
  139. package/dist/utils/colors.d.ts +40 -0
  140. package/dist/utils/colors.js +64 -0
  141. package/dist/utils/colors.js.map +1 -0
  142. package/dist/{util.d.ts → utils/common.d.ts} +10 -6
  143. package/dist/{util.js → utils/common.js} +80 -13
  144. package/dist/utils/common.js.map +1 -0
  145. package/dist/utils/csv.js.map +1 -0
  146. package/dist/utils/datatype.d.ts +49 -0
  147. package/dist/utils/datatype.js +222 -0
  148. package/dist/utils/datatype.js.map +1 -0
  149. package/dist/utils/icons.d.ts +11 -0
  150. package/dist/utils/icons.js +72 -0
  151. package/dist/utils/icons.js.map +1 -0
  152. package/dist/utils/index.d.ts +4 -0
  153. package/dist/utils/index.js +21 -0
  154. package/dist/utils/index.js.map +1 -0
  155. package/dist/{logger.d.ts → utils/logger.d.ts} +1 -1
  156. package/dist/utils/logger.js +40 -0
  157. package/dist/utils/logger.js.map +1 -0
  158. package/dist/views/layouts/main.hbs +33 -11
  159. package/dist/views/pages/databases.hbs +182 -74
  160. package/dist/views/pages/designer.hbs +9 -6
  161. package/dist/views/pages/error.hbs +3 -3
  162. package/dist/views/pages/form.hbs +5 -3
  163. package/dist/views/pages/home.hbs +22 -13
  164. package/dist/views/pages/login.hbs +111 -0
  165. package/dist/views/pages/query.hbs +10 -8
  166. package/dist/views/pages/schema.hbs +41 -13
  167. package/dist/views/pages/seed.hbs +232 -0
  168. package/dist/views/pages/table.hbs +155 -70
  169. package/dist/views/partials/icon.hbs +2 -0
  170. package/dist/views/partials/navbar.hbs +70 -31
  171. package/dist/views/partials/sidebar.hbs +108 -99
  172. package/package.json +12 -5
  173. package/dist/args.d.ts +0 -28
  174. package/dist/args.js +0 -187
  175. package/dist/args.js.map +0 -1
  176. package/dist/config.d.ts +0 -17
  177. package/dist/config.js +0 -23
  178. package/dist/config.js.map +0 -1
  179. package/dist/csv.js.map +0 -1
  180. package/dist/logger.js +0 -25
  181. package/dist/logger.js.map +0 -1
  182. package/dist/routes/api.d.ts +0 -9
  183. package/dist/routes/api.js +0 -786
  184. package/dist/routes/api.js.map +0 -1
  185. package/dist/test/classifier.test.d.ts +0 -1
  186. package/dist/test/classifier.test.js +0 -44
  187. package/dist/test/classifier.test.js.map +0 -1
  188. package/dist/test/csv.test.d.ts +0 -1
  189. package/dist/test/csv.test.js +0 -64
  190. package/dist/test/csv.test.js.map +0 -1
  191. package/dist/test/database.test.d.ts +0 -1
  192. package/dist/test/database.test.js +0 -402
  193. package/dist/test/database.test.js.map +0 -1
  194. package/dist/test/generator.test.d.ts +0 -1
  195. package/dist/test/generator.test.js +0 -132
  196. package/dist/test/generator.test.js.map +0 -1
  197. package/dist/test/manager.test.d.ts +0 -1
  198. package/dist/test/manager.test.js +0 -146
  199. package/dist/test/manager.test.js.map +0 -1
  200. package/dist/util.js.map +0 -1
  201. /package/dist/{csv.d.ts → utils/csv.d.ts} +0 -0
  202. /package/dist/{csv.js → utils/csv.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategies.js","sourceRoot":"","sources":["../../src/data/strategies.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ import type { ForeignKeyInfo, WhereClause } from '../db/database';
2
+ /** Hard cap on how many rows a single seed run may generate. */
3
+ export declare const MAX_SEED_ROWS = 5000;
4
+ export type StrategyCategory = 'identity' | 'contact_web' | 'commerce' | 'location' | 'numeric' | 'datetime' | 'system_crypto' | 'custom_control' | 'relational';
5
+ export type GeneratorStrategyId = 'skip' | 'null' | 'fixed' | 'list' | 'pattern' | 'first' | 'last' | 'fullname' | 'username' | 'job' | 'email' | 'phone' | 'url' | 'domain' | 'ip' | 'avatar' | 'company' | 'currency' | 'status' | 'creditCard' | 'city' | 'country' | 'state' | 'postal' | 'address' | 'countryCode' | 'latitude' | 'longitude' | 'words' | 'sentence' | 'paragraph' | 'slug' | 'int' | 'decimal' | 'sequence' | 'date' | 'datetime' | 'time' | 'timestampUnix' | 'bool' | 'bytes' | 'json' | 'hash' | 'token' | 'uuid' | 'color' | 'mac' | 'fk';
6
+ /** Per-column generator settings. Which options are meaningful depends on `strategy`. */
7
+ export interface ColumnPlan {
8
+ strategy: GeneratorStrategyId;
9
+ /** `fixed` / `list` and the string-ish options. */
10
+ value?: string;
11
+ /** `list` — random value picked from this set. */
12
+ values?: string[];
13
+ /** `int` / `decimal` / `latitude` / `longitude` range. */
14
+ min?: number;
15
+ max?: number;
16
+ /** `decimal` — digits after the decimal point. */
17
+ precision?: number;
18
+ /** `date` / `datetime` / `timestampUnix` bounds (ISO strings). */
19
+ from?: string;
20
+ to?: string;
21
+ /** `words` / `bytes` / `hash` / `token` / `sentence` — length bounds. */
22
+ minLen?: number;
23
+ maxLen?: number;
24
+ /** `json` — object keys to include (comma-separated in the UI). */
25
+ jsonKeys?: string[];
26
+ /** `json` — per-key allowed values, derived from CHECK constraints. */
27
+ jsonValues?: Record<string, string[]>;
28
+ /** Percentage chance (0 to 100) to generate NULL for nullable columns. */
29
+ nullPct?: number;
30
+ /** Optional string prefix to prepend to generated string/text values. */
31
+ prefix?: string;
32
+ /** Optional string suffix to append to generated string/text values. */
33
+ suffix?: string;
34
+ /** Sequence start (for `sequence` strategy). */
35
+ start?: number;
36
+ /** Sequence step increment (for `sequence` strategy). */
37
+ step?: number;
38
+ /** Custom pattern template with tokens (for `pattern` strategy). */
39
+ pattern?: string;
40
+ /** Format variation (e.g. 'hex' | 'name' for color, 'sec' | 'ms' for unix timestamp). */
41
+ format?: string;
42
+ }
43
+ /** A strategy choice offered to the UI for a column. */
44
+ export interface StrategyDescriptor {
45
+ id: GeneratorStrategyId;
46
+ label: string;
47
+ category: StrategyCategory;
48
+ description?: string;
49
+ }
50
+ /** Everything the "Seed data" page needs to render one column's controls. */
51
+ export interface ColumnGeneratorConfig {
52
+ name: string;
53
+ type: string;
54
+ pk: boolean;
55
+ notnull: boolean;
56
+ hasDefault: boolean;
57
+ /** True when a single-column UNIQUE index enforces uniqueness on this column. */
58
+ unique: boolean;
59
+ /** The foreign key this column participates in (as the child), if any. */
60
+ fk: ForeignKeyInfo | null;
61
+ strategies: StrategyDescriptor[];
62
+ defaultPlan: ColumnPlan;
63
+ }
64
+ export interface GenerateResult {
65
+ /** One entry per generated row: the columns/values to bind (skipped columns are absent). */
66
+ rows: WhereClause[][];
67
+ /** Structured row records for interactive UI table preview. */
68
+ previewRows: Record<string, unknown>[];
69
+ /** Non-fatal notes surfaced to the user (e.g. a NOT NULL column being skipped). */
70
+ warnings: string[];
71
+ }
72
+ /** Sentinel returned by value generation when the column should be omitted from the row. */
73
+ export declare const SKIP: unique symbol;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SKIP = exports.MAX_SEED_ROWS = void 0;
4
+ /** Hard cap on how many rows a single seed run may generate. */
5
+ exports.MAX_SEED_ROWS = 5000;
6
+ /** Sentinel returned by value generation when the column should be omitted from the row. */
7
+ exports.SKIP = Symbol('skip');
8
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/data/types.ts"],"names":[],"mappings":";;;AAEA,gEAAgE;AACnD,QAAA,aAAa,GAAG,IAAI,CAAC;AA+IlC,4FAA4F;AAC/E,QAAA,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC"}
@@ -1,127 +1,26 @@
1
- import type { Logger } from '../logger';
1
+ import type { Logger } from '../utils/logger';
2
2
  import { type ColumnDef, type IndexDef } from '../sql/generator';
3
- import { type FilterValue } from '../util';
4
- /** Structured filter types are shared with the API layer. */
5
- export type { FilterCondition, FilterValue } from '../util';
6
- /** SQLite-compatible bind value accepted by better-sqlite3 statements. */
7
- export type SQLInputValue = null | number | bigint | string | Uint8Array;
8
- export interface Result<T = unknown> {
9
- success: boolean;
10
- data?: T;
11
- error?: string;
12
- }
13
- export interface TableListItem {
14
- name: string;
15
- }
16
- export interface ColumnInfo {
17
- cid: number;
18
- name: string;
19
- type: string;
20
- notnull: number;
21
- dflt_value: string | null;
22
- pk: number;
23
- }
24
- export interface ForeignKeyInfo {
25
- id: number;
26
- seq: number;
27
- table: string;
28
- from: string;
29
- to: string | null;
30
- on_update: string;
31
- on_delete: string;
32
- }
33
- export interface TableInfoData {
34
- table: string;
35
- columns: ColumnInfo[];
36
- foreignKeys: ForeignKeyInfo[];
37
- primaryKey: string[];
38
- }
39
- export interface SavedQuery {
40
- id: number;
41
- name: string;
42
- sql: string;
43
- created_at: string;
44
- }
45
- export interface WhereClause {
46
- column: string;
47
- value: unknown;
48
- }
49
- export interface IndexInfo {
50
- name: string;
51
- unique: boolean;
52
- partial: number;
53
- /** Index origin: 'c' = explicit CREATE INDEX, 'pk'/'u' = automatic (primary key / unique). */
54
- origin: string;
55
- columns: string[];
56
- /** The `CREATE INDEX` statement from sqlite_master, when available. */
57
- sql?: string | null;
58
- }
59
- export interface RowFilters {
60
- [column: string]: FilterValue;
61
- }
62
- export interface ColumnDetail extends ColumnInfo {
63
- unique: boolean;
64
- indexed: boolean;
65
- /** Foreign keys in OTHER tables whose referenced column is this column. */
66
- referencedBy: {
67
- table: string;
68
- from: string;
69
- }[];
70
- /** The foreign key this column participates in (as the child), if any. */
71
- fk: ForeignKeyInfo | null;
72
- canDrop: boolean;
73
- dropBlockers: string[];
74
- }
75
- export interface SchemaInfo {
76
- table: string;
77
- columns: ColumnDetail[];
78
- foreignKeys: ForeignKeyInfo[];
79
- indexes: IndexInfo[];
80
- /** Foreign keys in other tables that reference this table. */
81
- references: {
82
- table: string;
83
- from: string;
84
- to: string;
85
- }[];
86
- }
87
- export interface ReferencingTableInfo {
88
- table: string;
89
- /** FK columns in `table` that point at this table (`from` → `to`). */
90
- refs: {
91
- from: string;
92
- to: string;
93
- }[];
94
- /** Rows in `table` whose FK column(s) actually reference this table. */
95
- refCount: number;
96
- }
97
- export declare const INTERNAL_TABLES: {
98
- readonly savedQueries: "_saved_queries";
99
- };
100
- export declare function buildFilterClause(filters: RowFilters | undefined, availableCols: string[]): {
101
- where: string;
102
- params: SQLInputValue[];
103
- };
3
+ import type { DatabaseDialect, DbOpenOptions, IDatabase, ReferencingTableInfo, Result, RowFilters, SavedQuery, SchemaInfo, SQLInputValue, TableInfoData, TableListItem, WhereClause } from './types';
4
+ export * from './types';
5
+ export * from './filters';
104
6
  /**
105
7
  * Promise-style wrapper around the better-sqlite3 driver.
106
8
  * Every call returns a consistent `{ success, data?, error? }` shape and
107
9
  * performs one-time, idempotent schema initialization.
108
10
  */
109
- export interface DbOpenOptions {
110
- /** Open the database read-only: every write is rejected. */
111
- readonly?: boolean;
112
- }
113
- export declare class SqliteDatabase {
11
+ export declare class SqliteDatabase implements IDatabase {
114
12
  private db;
115
13
  private logger;
116
14
  readonly path: string;
117
- /** True when this database was opened in read-only mode. */
118
15
  readonly isReadOnly: boolean;
16
+ readonly dialect: DatabaseDialect;
119
17
  constructor(dbPath: string, logger: Logger, options?: DbOpenOptions);
120
- /** Standard error returned for every write attempt in read-only mode. */
121
18
  private readonlyBlocked;
122
19
  close(): void;
123
20
  private initSchema;
124
21
  private tryRun;
22
+ /** Run an atomic transaction. Reverts on any error and enforces read-only mode. */
23
+ private transaction;
125
24
  private toBind;
126
25
  all(sql: string, params?: SQLInputValue[]): Promise<Result<unknown[]>>;
127
26
  run(sql: string, params?: SQLInputValue[]): Promise<Result<{
@@ -131,13 +30,7 @@ export declare class SqliteDatabase {
131
30
  execResult(sql: string): Promise<Result<{
132
31
  changes?: number;
133
32
  }>>;
134
- /**
135
- * True when `sql` contains more than one statement. Detection is delegated to
136
- * SQLite itself via `prepare()` (which refuses multi-statement strings), so
137
- * comments, string literals and quoted identifiers are handled correctly.
138
- */
139
33
  hasMultipleStatements(sql: string): boolean;
140
- /** Run a write statement, reporting row changes when it is a single statement. */
141
34
  runWrite(sql: string): Promise<Result<{
142
35
  changes?: number;
143
36
  }>>;
@@ -157,7 +50,7 @@ export declare class SqliteDatabase {
157
50
  changes: number;
158
51
  lastInsertRowid: number | null;
159
52
  }>>;
160
- /** Insert many rows (used by CSV import) inside a single transaction. */
53
+ /** Insert many rows inside a single atomic transaction. */
161
54
  insertRows(table: string, rows: WhereClause[][]): Promise<Result<{
162
55
  inserted: number;
163
56
  skipped: number;
@@ -166,11 +59,7 @@ export declare class SqliteDatabase {
166
59
  changes: number;
167
60
  lastInsertRowid: number | null;
168
61
  }>>;
169
- /**
170
- * Apply many row updates (each with its own SET fields + primary-key WHERE
171
- * clause) inside a single transaction. Used by the bulk "apply changes"
172
- * flow of inline grid editing. Rolls everything back if any row fails.
173
- */
62
+ /** Apply many row updates inside a single atomic transaction. */
174
63
  updateRows(table: string, rows: {
175
64
  fields: WhereClause[];
176
65
  where: WhereClause[];
@@ -181,17 +70,10 @@ export declare class SqliteDatabase {
181
70
  changes: number;
182
71
  lastInsertRowid: number | null;
183
72
  }>>;
184
- /**
185
- * Delete many rows (each identified by its primary-key WHERE clause) inside a
186
- * single transaction. Used by bulk delete.
187
- */
73
+ /** Delete many rows inside a single atomic transaction. */
188
74
  deleteRows(table: string, rows: WhereClause[][]): Promise<Result<{
189
75
  deleted: number;
190
76
  }>>;
191
- /**
192
- * Fetch the rows matching the given primary-key WHERE clauses in one query
193
- * (`(a = ? AND b = ?) OR …`). Used by bulk export and FK-impact checks.
194
- */
195
77
  getRowsByPks(table: string, pks: WhereClause[][]): Promise<Result<Record<string, unknown>[]>>;
196
78
  getCreateStatement(table: string): Promise<Result<string | null>>;
197
79
  listSavedQueries(): Promise<Result<SavedQuery[]>>;
@@ -203,21 +85,8 @@ export declare class SqliteDatabase {
203
85
  changes: number;
204
86
  lastInsertRowid: number | null;
205
87
  }>>;
206
- /**
207
- * Detailed schema for a table: columns with constraint info, indexes,
208
- * foreign keys, and which other tables reference it.
209
- */
210
88
  getSchema(table: string): Promise<Result<SchemaInfo>>;
211
- /**
212
- * Other tables with foreign keys pointing at `table`, grouped by table, each
213
- * with the FK column mapping and a count of rows that actually reference it.
214
- */
215
89
  getReferencingTables(table: string): Promise<Result<ReferencingTableInfo[]>>;
216
- /**
217
- * Rows in `table` whose `column` equals `value` — used to show which rows in
218
- * a referencing table point at a specific row via a foreign key — with the
219
- * total matching count.
220
- */
221
90
  getRowsByFk(table: string, column: string, value: unknown, limit?: number): Promise<Result<{
222
91
  rows: Record<string, unknown>[];
223
92
  total: number;
@@ -228,6 +97,9 @@ export declare class SqliteDatabase {
228
97
  addColumn(table: string, col: ColumnDef): Promise<Result<{
229
98
  changes?: number;
230
99
  }>>;
100
+ modifyColumn(table: string, oldColName: string, newColDef: ColumnDef): Promise<Result<{
101
+ changes?: number;
102
+ }>>;
231
103
  renameColumn(table: string, oldName: string, newName: string): Promise<Result<{
232
104
  changes?: number;
233
105
  }>>;