admindb 1.2.1 → 2.1.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 (208) hide show
  1. package/README.md +262 -329
  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 -146
  56. package/dist/db/database.js +208 -461
  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 +74 -11
  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 +55 -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 +185 -52
  96. package/dist/public/js/seed.js +865 -152
  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 +157 -64
  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 +7 -3
  131. package/dist/sql/generator.js +144 -7
  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 +40 -11
  159. package/dist/views/pages/databases.hbs +182 -74
  160. package/dist/views/pages/designer.hbs +29 -11
  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 +8 -6
  166. package/dist/views/pages/schema.hbs +41 -13
  167. package/dist/views/pages/seed.hbs +200 -54
  168. package/dist/views/pages/table.hbs +152 -72
  169. package/dist/views/partials/icon.hbs +2 -0
  170. package/dist/views/partials/navbar.hbs +69 -25
  171. package/dist/views/partials/sidebar.hbs +108 -94
  172. package/docs/API.md +144 -0
  173. package/docs/EXAMPLES.md +576 -0
  174. package/docs/SECURITY.md +265 -0
  175. package/package.json +15 -4
  176. package/dist/args.d.ts +0 -28
  177. package/dist/args.js +0 -187
  178. package/dist/args.js.map +0 -1
  179. package/dist/config.d.ts +0 -17
  180. package/dist/config.js +0 -23
  181. package/dist/config.js.map +0 -1
  182. package/dist/csv.js.map +0 -1
  183. package/dist/data/generator.d.ts +0 -86
  184. package/dist/data/generator.js +0 -1031
  185. package/dist/data/generator.js.map +0 -1
  186. package/dist/logger.js +0 -25
  187. package/dist/logger.js.map +0 -1
  188. package/dist/routes/api.d.ts +0 -9
  189. package/dist/routes/api.js +0 -848
  190. package/dist/routes/api.js.map +0 -1
  191. package/dist/test/classifier.test.d.ts +0 -1
  192. package/dist/test/classifier.test.js +0 -44
  193. package/dist/test/classifier.test.js.map +0 -1
  194. package/dist/test/csv.test.d.ts +0 -1
  195. package/dist/test/csv.test.js +0 -64
  196. package/dist/test/csv.test.js.map +0 -1
  197. package/dist/test/database.test.d.ts +0 -1
  198. package/dist/test/database.test.js +0 -402
  199. package/dist/test/database.test.js.map +0 -1
  200. package/dist/test/generator.test.d.ts +0 -1
  201. package/dist/test/generator.test.js +0 -132
  202. package/dist/test/generator.test.js.map +0 -1
  203. package/dist/test/manager.test.d.ts +0 -1
  204. package/dist/test/manager.test.js +0 -146
  205. package/dist/test/manager.test.js.map +0 -1
  206. package/dist/util.js.map +0 -1
  207. /package/dist/{csv.d.ts → utils/csv.d.ts} +0 -0
  208. /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,131 +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
- /** Indexes (including UNIQUE / JSON-expression indexes) — used by the data generator. */
39
- indexes: IndexInfo[];
40
- /** The table's `CREATE TABLE` statement (used to parse CHECK constraints). */
41
- sql: string | null;
42
- }
43
- export interface SavedQuery {
44
- id: number;
45
- name: string;
46
- sql: string;
47
- created_at: string;
48
- }
49
- export interface WhereClause {
50
- column: string;
51
- value: unknown;
52
- }
53
- export interface IndexInfo {
54
- name: string;
55
- unique: boolean;
56
- partial: number;
57
- /** Index origin: 'c' = explicit CREATE INDEX, 'pk'/'u' = automatic (primary key / unique). */
58
- origin: string;
59
- columns: string[];
60
- /** The `CREATE INDEX` statement from sqlite_master, when available. */
61
- sql?: string | null;
62
- }
63
- export interface RowFilters {
64
- [column: string]: FilterValue;
65
- }
66
- export interface ColumnDetail extends ColumnInfo {
67
- unique: boolean;
68
- indexed: boolean;
69
- /** Foreign keys in OTHER tables whose referenced column is this column. */
70
- referencedBy: {
71
- table: string;
72
- from: string;
73
- }[];
74
- /** The foreign key this column participates in (as the child), if any. */
75
- fk: ForeignKeyInfo | null;
76
- canDrop: boolean;
77
- dropBlockers: string[];
78
- }
79
- export interface SchemaInfo {
80
- table: string;
81
- columns: ColumnDetail[];
82
- foreignKeys: ForeignKeyInfo[];
83
- indexes: IndexInfo[];
84
- /** Foreign keys in other tables that reference this table. */
85
- references: {
86
- table: string;
87
- from: string;
88
- to: string;
89
- }[];
90
- }
91
- export interface ReferencingTableInfo {
92
- table: string;
93
- /** FK columns in `table` that point at this table (`from` → `to`). */
94
- refs: {
95
- from: string;
96
- to: string;
97
- }[];
98
- /** Rows in `table` whose FK column(s) actually reference this table. */
99
- refCount: number;
100
- }
101
- export declare const INTERNAL_TABLES: {
102
- readonly savedQueries: "_saved_queries";
103
- };
104
- export declare function buildFilterClause(filters: RowFilters | undefined, availableCols: string[]): {
105
- where: string;
106
- params: SQLInputValue[];
107
- };
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';
108
6
  /**
109
7
  * Promise-style wrapper around the better-sqlite3 driver.
110
8
  * Every call returns a consistent `{ success, data?, error? }` shape and
111
9
  * performs one-time, idempotent schema initialization.
112
10
  */
113
- export interface DbOpenOptions {
114
- /** Open the database read-only: every write is rejected. */
115
- readonly?: boolean;
116
- }
117
- export declare class SqliteDatabase {
11
+ export declare class SqliteDatabase implements IDatabase {
118
12
  private db;
119
13
  private logger;
120
14
  readonly path: string;
121
- /** True when this database was opened in read-only mode. */
122
15
  readonly isReadOnly: boolean;
16
+ readonly dialect: DatabaseDialect;
123
17
  constructor(dbPath: string, logger: Logger, options?: DbOpenOptions);
124
- /** Standard error returned for every write attempt in read-only mode. */
125
18
  private readonlyBlocked;
126
19
  close(): void;
127
20
  private initSchema;
128
21
  private tryRun;
22
+ /** Run an atomic transaction. Reverts on any error and enforces read-only mode. */
23
+ private transaction;
129
24
  private toBind;
130
25
  all(sql: string, params?: SQLInputValue[]): Promise<Result<unknown[]>>;
131
26
  run(sql: string, params?: SQLInputValue[]): Promise<Result<{
@@ -135,13 +30,7 @@ export declare class SqliteDatabase {
135
30
  execResult(sql: string): Promise<Result<{
136
31
  changes?: number;
137
32
  }>>;
138
- /**
139
- * True when `sql` contains more than one statement. Detection is delegated to
140
- * SQLite itself via `prepare()` (which refuses multi-statement strings), so
141
- * comments, string literals and quoted identifiers are handled correctly.
142
- */
143
33
  hasMultipleStatements(sql: string): boolean;
144
- /** Run a write statement, reporting row changes when it is a single statement. */
145
34
  runWrite(sql: string): Promise<Result<{
146
35
  changes?: number;
147
36
  }>>;
@@ -161,7 +50,7 @@ export declare class SqliteDatabase {
161
50
  changes: number;
162
51
  lastInsertRowid: number | null;
163
52
  }>>;
164
- /** Insert many rows (used by CSV import) inside a single transaction. */
53
+ /** Insert many rows inside a single atomic transaction. */
165
54
  insertRows(table: string, rows: WhereClause[][]): Promise<Result<{
166
55
  inserted: number;
167
56
  skipped: number;
@@ -170,11 +59,7 @@ export declare class SqliteDatabase {
170
59
  changes: number;
171
60
  lastInsertRowid: number | null;
172
61
  }>>;
173
- /**
174
- * Apply many row updates (each with its own SET fields + primary-key WHERE
175
- * clause) inside a single transaction. Used by the bulk "apply changes"
176
- * flow of inline grid editing. Rolls everything back if any row fails.
177
- */
62
+ /** Apply many row updates inside a single atomic transaction. */
178
63
  updateRows(table: string, rows: {
179
64
  fields: WhereClause[];
180
65
  where: WhereClause[];
@@ -185,17 +70,10 @@ export declare class SqliteDatabase {
185
70
  changes: number;
186
71
  lastInsertRowid: number | null;
187
72
  }>>;
188
- /**
189
- * Delete many rows (each identified by its primary-key WHERE clause) inside a
190
- * single transaction. Used by bulk delete.
191
- */
73
+ /** Delete many rows inside a single atomic transaction. */
192
74
  deleteRows(table: string, rows: WhereClause[][]): Promise<Result<{
193
75
  deleted: number;
194
76
  }>>;
195
- /**
196
- * Fetch the rows matching the given primary-key WHERE clauses in one query
197
- * (`(a = ? AND b = ?) OR …`). Used by bulk export and FK-impact checks.
198
- */
199
77
  getRowsByPks(table: string, pks: WhereClause[][]): Promise<Result<Record<string, unknown>[]>>;
200
78
  getCreateStatement(table: string): Promise<Result<string | null>>;
201
79
  listSavedQueries(): Promise<Result<SavedQuery[]>>;
@@ -207,21 +85,8 @@ export declare class SqliteDatabase {
207
85
  changes: number;
208
86
  lastInsertRowid: number | null;
209
87
  }>>;
210
- /**
211
- * Detailed schema for a table: columns with constraint info, indexes,
212
- * foreign keys, and which other tables reference it.
213
- */
214
88
  getSchema(table: string): Promise<Result<SchemaInfo>>;
215
- /**
216
- * Other tables with foreign keys pointing at `table`, grouped by table, each
217
- * with the FK column mapping and a count of rows that actually reference it.
218
- */
219
89
  getReferencingTables(table: string): Promise<Result<ReferencingTableInfo[]>>;
220
- /**
221
- * Rows in `table` whose `column` equals `value` — used to show which rows in
222
- * a referencing table point at a specific row via a foreign key — with the
223
- * total matching count.
224
- */
225
90
  getRowsByFk(table: string, column: string, value: unknown, limit?: number): Promise<Result<{
226
91
  rows: Record<string, unknown>[];
227
92
  total: number;
@@ -232,6 +97,9 @@ export declare class SqliteDatabase {
232
97
  addColumn(table: string, col: ColumnDef): Promise<Result<{
233
98
  changes?: number;
234
99
  }>>;
100
+ modifyColumn(table: string, oldColName: string, newColDef: ColumnDef): Promise<Result<{
101
+ changes?: number;
102
+ }>>;
235
103
  renameColumn(table: string, oldName: string, newName: string): Promise<Result<{
236
104
  changes?: number;
237
105
  }>>;