@yydb/light-db 0.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 (150) hide show
  1. package/dist/api/LightDB.d.ts +194 -0
  2. package/dist/api/LightDB.d.ts.map +1 -0
  3. package/dist/api/LightDB.js +299 -0
  4. package/dist/api/LightDB.js.map +1 -0
  5. package/dist/api/Transaction.d.ts +100 -0
  6. package/dist/api/Transaction.d.ts.map +1 -0
  7. package/dist/api/Transaction.js +263 -0
  8. package/dist/api/Transaction.js.map +1 -0
  9. package/dist/api/index.d.ts +24 -0
  10. package/dist/api/index.d.ts.map +1 -0
  11. package/dist/api/index.js +54 -0
  12. package/dist/api/index.js.map +1 -0
  13. package/dist/api/types.d.ts +154 -0
  14. package/dist/api/types.d.ts.map +1 -0
  15. package/dist/api/types.js +7 -0
  16. package/dist/api/types.js.map +1 -0
  17. package/dist/collection/Collection.d.ts +235 -0
  18. package/dist/collection/Collection.d.ts.map +1 -0
  19. package/dist/collection/Collection.js +671 -0
  20. package/dist/collection/Collection.js.map +1 -0
  21. package/dist/collection/QueryBuilder.d.ts +225 -0
  22. package/dist/collection/QueryBuilder.d.ts.map +1 -0
  23. package/dist/collection/QueryBuilder.js +475 -0
  24. package/dist/collection/QueryBuilder.js.map +1 -0
  25. package/dist/collection/QueryParser.d.ts +117 -0
  26. package/dist/collection/QueryParser.d.ts.map +1 -0
  27. package/dist/collection/QueryParser.js +438 -0
  28. package/dist/collection/QueryParser.js.map +1 -0
  29. package/dist/collection/index.d.ts +42 -0
  30. package/dist/collection/index.d.ts.map +1 -0
  31. package/dist/collection/index.js +41 -0
  32. package/dist/collection/index.js.map +1 -0
  33. package/dist/collection/types.d.ts +365 -0
  34. package/dist/collection/types.d.ts.map +1 -0
  35. package/dist/collection/types.js +7 -0
  36. package/dist/collection/types.js.map +1 -0
  37. package/dist/constants/index.d.ts +51 -0
  38. package/dist/constants/index.d.ts.map +1 -0
  39. package/dist/constants/index.js +68 -0
  40. package/dist/constants/index.js.map +1 -0
  41. package/dist/errors/index.d.ts +69 -0
  42. package/dist/errors/index.d.ts.map +1 -0
  43. package/dist/errors/index.js +132 -0
  44. package/dist/errors/index.js.map +1 -0
  45. package/dist/index.d.ts +220 -0
  46. package/dist/index.d.ts.map +1 -0
  47. package/dist/index.js +729 -0
  48. package/dist/index.js.map +1 -0
  49. package/dist/indexes/BPlusTree.d.ts +181 -0
  50. package/dist/indexes/BPlusTree.d.ts.map +1 -0
  51. package/dist/indexes/BPlusTree.js +528 -0
  52. package/dist/indexes/BPlusTree.js.map +1 -0
  53. package/dist/indexes/IndexManager.d.ts +236 -0
  54. package/dist/indexes/IndexManager.d.ts.map +1 -0
  55. package/dist/indexes/IndexManager.js +502 -0
  56. package/dist/indexes/IndexManager.js.map +1 -0
  57. package/dist/indexes/PrimaryIndex.d.ts +240 -0
  58. package/dist/indexes/PrimaryIndex.d.ts.map +1 -0
  59. package/dist/indexes/PrimaryIndex.js +354 -0
  60. package/dist/indexes/PrimaryIndex.js.map +1 -0
  61. package/dist/indexes/SecondaryIndex.d.ts +204 -0
  62. package/dist/indexes/SecondaryIndex.d.ts.map +1 -0
  63. package/dist/indexes/SecondaryIndex.js +480 -0
  64. package/dist/indexes/SecondaryIndex.js.map +1 -0
  65. package/dist/indexes/errors.d.ts +66 -0
  66. package/dist/indexes/errors.d.ts.map +1 -0
  67. package/dist/indexes/errors.js +117 -0
  68. package/dist/indexes/errors.js.map +1 -0
  69. package/dist/indexes/index.d.ts +52 -0
  70. package/dist/indexes/index.d.ts.map +1 -0
  71. package/dist/indexes/index.js +131 -0
  72. package/dist/indexes/index.js.map +1 -0
  73. package/dist/indexes/types.d.ts +246 -0
  74. package/dist/indexes/types.d.ts.map +1 -0
  75. package/dist/indexes/types.js +30 -0
  76. package/dist/indexes/types.js.map +1 -0
  77. package/dist/performance/BatchWALWriter.d.ts +185 -0
  78. package/dist/performance/BatchWALWriter.d.ts.map +1 -0
  79. package/dist/performance/BatchWALWriter.js +490 -0
  80. package/dist/performance/BatchWALWriter.js.map +1 -0
  81. package/dist/performance/ColumnarStorage.d.ts +138 -0
  82. package/dist/performance/ColumnarStorage.d.ts.map +1 -0
  83. package/dist/performance/ColumnarStorage.js +875 -0
  84. package/dist/performance/ColumnarStorage.js.map +1 -0
  85. package/dist/performance/LazyQuery.d.ts +307 -0
  86. package/dist/performance/LazyQuery.d.ts.map +1 -0
  87. package/dist/performance/LazyQuery.js +588 -0
  88. package/dist/performance/LazyQuery.js.map +1 -0
  89. package/dist/performance/OptimizedBuffer.d.ts +375 -0
  90. package/dist/performance/OptimizedBuffer.d.ts.map +1 -0
  91. package/dist/performance/OptimizedBuffer.js +730 -0
  92. package/dist/performance/OptimizedBuffer.js.map +1 -0
  93. package/dist/performance/RWLock.d.ts +260 -0
  94. package/dist/performance/RWLock.d.ts.map +1 -0
  95. package/dist/performance/RWLock.js +570 -0
  96. package/dist/performance/RWLock.js.map +1 -0
  97. package/dist/performance/index.d.ts +41 -0
  98. package/dist/performance/index.d.ts.map +1 -0
  99. package/dist/performance/index.js +162 -0
  100. package/dist/performance/index.js.map +1 -0
  101. package/dist/performance/types.d.ts +247 -0
  102. package/dist/performance/types.d.ts.map +1 -0
  103. package/dist/performance/types.js +26 -0
  104. package/dist/performance/types.js.map +1 -0
  105. package/dist/storage/Checkpoint.d.ts +128 -0
  106. package/dist/storage/Checkpoint.d.ts.map +1 -0
  107. package/dist/storage/Checkpoint.js +251 -0
  108. package/dist/storage/Checkpoint.js.map +1 -0
  109. package/dist/storage/LightFile.d.ts +227 -0
  110. package/dist/storage/LightFile.d.ts.map +1 -0
  111. package/dist/storage/LightFile.js +526 -0
  112. package/dist/storage/LightFile.js.map +1 -0
  113. package/dist/storage/Recovery.d.ts +172 -0
  114. package/dist/storage/Recovery.d.ts.map +1 -0
  115. package/dist/storage/Recovery.js +399 -0
  116. package/dist/storage/Recovery.js.map +1 -0
  117. package/dist/storage/SHMFile.d.ts +243 -0
  118. package/dist/storage/SHMFile.d.ts.map +1 -0
  119. package/dist/storage/SHMFile.js +436 -0
  120. package/dist/storage/SHMFile.js.map +1 -0
  121. package/dist/storage/StorageEngine.d.ts +146 -0
  122. package/dist/storage/StorageEngine.d.ts.map +1 -0
  123. package/dist/storage/StorageEngine.js +353 -0
  124. package/dist/storage/StorageEngine.js.map +1 -0
  125. package/dist/storage/WALFile.d.ts +248 -0
  126. package/dist/storage/WALFile.d.ts.map +1 -0
  127. package/dist/storage/WALFile.js +597 -0
  128. package/dist/storage/WALFile.js.map +1 -0
  129. package/dist/storage/index.d.ts +10 -0
  130. package/dist/storage/index.d.ts.map +1 -0
  131. package/dist/storage/index.js +153 -0
  132. package/dist/storage/index.js.map +1 -0
  133. package/dist/types/index.d.ts +220 -0
  134. package/dist/types/index.d.ts.map +1 -0
  135. package/dist/types/index.js +7 -0
  136. package/dist/types/index.js.map +1 -0
  137. package/dist/utils/binary.d.ts +271 -0
  138. package/dist/utils/binary.d.ts.map +1 -0
  139. package/dist/utils/binary.js +454 -0
  140. package/dist/utils/binary.js.map +1 -0
  141. package/dist/utils/file.d.ts +166 -0
  142. package/dist/utils/file.d.ts.map +1 -0
  143. package/dist/utils/file.js +346 -0
  144. package/dist/utils/file.js.map +1 -0
  145. package/dist/utils/index.d.ts +6 -0
  146. package/dist/utils/index.d.ts.map +1 -0
  147. package/dist/utils/index.js +39 -0
  148. package/dist/utils/index.js.map +1 -0
  149. package/package.json +37 -0
  150. package/readme.md +124 -0
@@ -0,0 +1,263 @@
1
+ "use strict";
2
+ /**
3
+ * LightDB 事务实现
4
+ * 提供 ACID 事务支持
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.TransactionManager = exports.Transaction = exports.TransactionError = void 0;
8
+ /**
9
+ * 事务错误类
10
+ */
11
+ class TransactionError extends Error {
12
+ constructor(message, code) {
13
+ super(message);
14
+ this.name = "TransactionError";
15
+ this.code = code;
16
+ Object.setPrototypeOf(this, TransactionError.prototype);
17
+ }
18
+ }
19
+ exports.TransactionError = TransactionError;
20
+ /**
21
+ * 事务集合包装器
22
+ * 提供事务内的集合操作
23
+ */
24
+ class TransactionCollectionWrapper {
25
+ constructor(collection, transaction) {
26
+ this.collection = collection;
27
+ this.transaction = transaction;
28
+ }
29
+ async find(filter = {}) {
30
+ this.transaction.ensureActive();
31
+ return this.collection.find({
32
+ where: filter,
33
+ }).docs;
34
+ }
35
+ async findOne(filter) {
36
+ this.transaction.ensureActive();
37
+ return this.collection.findOne(filter);
38
+ }
39
+ async insert(doc) {
40
+ this.transaction.ensureActive();
41
+ const result = this.collection.insert(doc);
42
+ if (!result.success) {
43
+ throw new TransactionError("Failed to insert document in transaction", "INSERT_FAILED");
44
+ }
45
+ this.transaction.recordOperation("insert", this.collection.Name, doc);
46
+ }
47
+ async update(filter, update) {
48
+ this.transaction.ensureActive();
49
+ const result = this.collection.updateMany(filter, { $set: update });
50
+ this.transaction.recordOperation("update", this.collection.Name, {
51
+ filter,
52
+ update,
53
+ count: result.modifiedCount,
54
+ });
55
+ return result.modifiedCount;
56
+ }
57
+ async delete(filter) {
58
+ this.transaction.ensureActive();
59
+ const result = this.collection.deleteMany(filter);
60
+ this.transaction.recordOperation("delete", this.collection.Name, {
61
+ filter,
62
+ count: result.deletedCount,
63
+ });
64
+ return result.deletedCount;
65
+ }
66
+ }
67
+ /**
68
+ * 事务类
69
+ * 管理事务的生命周期和操作
70
+ */
71
+ class Transaction {
72
+ constructor(collections, options) {
73
+ this.collections = collections;
74
+ this.options = {
75
+ timeout: options?.timeout ?? 5000,
76
+ isolationLevel: options?.isolationLevel ?? "read_committed",
77
+ };
78
+ this.state = "active";
79
+ this.operations = [];
80
+ this.startTime = Date.now();
81
+ }
82
+ /**
83
+ * 获取事务集合
84
+ */
85
+ collection(name) {
86
+ this.ensureActive();
87
+ const collection = this.collections.get(name);
88
+ if (!collection) {
89
+ throw new TransactionError(`Collection "${name}" not found`, "COLLECTION_NOT_FOUND");
90
+ }
91
+ return new TransactionCollectionWrapper(collection, this);
92
+ }
93
+ /**
94
+ * 确保事务处于活动状态
95
+ */
96
+ ensureActive() {
97
+ if (this.state !== "active") {
98
+ throw new TransactionError(`Transaction is not active (current state: ${this.state})`, "TRANSACTION_NOT_ACTIVE");
99
+ }
100
+ if (Date.now() - this.startTime > this.options.timeout) {
101
+ this.state = "failed";
102
+ throw new TransactionError("Transaction timed out", "TRANSACTION_TIMEOUT");
103
+ }
104
+ }
105
+ /**
106
+ * 记录操作
107
+ */
108
+ recordOperation(type, collectionName, data) {
109
+ this.operations.push({ type, collectionName, data });
110
+ }
111
+ /**
112
+ * 提交事务
113
+ */
114
+ commit() {
115
+ if (this.state !== "active") {
116
+ return {
117
+ success: false,
118
+ state: this.state,
119
+ durationMs: Date.now() - this.startTime,
120
+ error: `Cannot commit transaction in state: ${this.state}`,
121
+ };
122
+ }
123
+ try {
124
+ this.state = "committed";
125
+ return {
126
+ success: true,
127
+ state: "committed",
128
+ durationMs: Date.now() - this.startTime,
129
+ };
130
+ } catch (error) {
131
+ this.state = "failed";
132
+ return {
133
+ success: false,
134
+ state: "failed",
135
+ durationMs: Date.now() - this.startTime,
136
+ error: error instanceof Error ? error.message : "Unknown error",
137
+ };
138
+ }
139
+ }
140
+ /**
141
+ * 回滚事务
142
+ */
143
+ rollback() {
144
+ if (this.state !== "active") {
145
+ return {
146
+ success: false,
147
+ state: this.state,
148
+ durationMs: Date.now() - this.startTime,
149
+ error: `Cannot rollback transaction in state: ${this.state}`,
150
+ };
151
+ }
152
+ try {
153
+ for (let i = this.operations.length - 1; i >= 0; i--) {
154
+ const op = this.operations[i];
155
+ this.undoOperation(op);
156
+ }
157
+ this.state = "rolled_back";
158
+ return {
159
+ success: true,
160
+ state: "rolled_back",
161
+ durationMs: Date.now() - this.startTime,
162
+ };
163
+ } catch (error) {
164
+ this.state = "failed";
165
+ return {
166
+ success: false,
167
+ state: "failed",
168
+ durationMs: Date.now() - this.startTime,
169
+ error: error instanceof Error ? error.message : "Unknown error",
170
+ };
171
+ }
172
+ }
173
+ /**
174
+ * 撤销操作
175
+ */
176
+ undoOperation(op) {
177
+ const collection = this.collections.get(op.collectionName);
178
+ if (!collection) return;
179
+ switch (op.type) {
180
+ case "insert": {
181
+ const doc = op.data;
182
+ const primaryKey = collection.extractPrimaryKey(doc);
183
+ collection.deleteByPrimaryKey(primaryKey);
184
+ break;
185
+ }
186
+ case "delete": {
187
+ break;
188
+ }
189
+ case "update": {
190
+ break;
191
+ }
192
+ }
193
+ }
194
+ /**
195
+ * 获取事务状态
196
+ */
197
+ getState() {
198
+ return this.state;
199
+ }
200
+ /**
201
+ * 获取操作数量
202
+ */
203
+ getOperationCount() {
204
+ return this.operations.length;
205
+ }
206
+ }
207
+ exports.Transaction = Transaction;
208
+ /**
209
+ * 事务管理器
210
+ * 管理多个并发事务
211
+ */
212
+ class TransactionManager {
213
+ constructor(collections) {
214
+ this.collections = collections;
215
+ this.activeTransactions = new Map();
216
+ this.transactionCounter = 0;
217
+ }
218
+ /**
219
+ * 开始新事务
220
+ */
221
+ begin(options) {
222
+ const transaction = new Transaction(this.collections, options);
223
+ const txId = `tx_${++this.transactionCounter}`;
224
+ this.activeTransactions.set(txId, transaction);
225
+ return transaction;
226
+ }
227
+ /**
228
+ * 执行事务
229
+ */
230
+ async execute(callback, options) {
231
+ const transaction = this.begin(options);
232
+ try {
233
+ await callback(transaction);
234
+ return transaction.commit();
235
+ } catch (error) {
236
+ const rollbackResult = transaction.rollback();
237
+ return {
238
+ success: false,
239
+ state: "failed",
240
+ durationMs: rollbackResult.durationMs,
241
+ error: error instanceof Error ? error.message : "Unknown error",
242
+ };
243
+ }
244
+ }
245
+ /**
246
+ * 获取活动事务数量
247
+ */
248
+ getActiveTransactionCount() {
249
+ return this.activeTransactions.size;
250
+ }
251
+ /**
252
+ * 清理已完成的事务
253
+ */
254
+ cleanup() {
255
+ for (const [txId, tx] of this.activeTransactions) {
256
+ if (tx.getState() !== "active") {
257
+ this.activeTransactions.delete(txId);
258
+ }
259
+ }
260
+ }
261
+ }
262
+ exports.TransactionManager = TransactionManager;
263
+ //# sourceMappingURL=Transaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Transaction.js","sourceRoot":"","sources":["../../src/api/Transaction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * LightDB API 层
3
+ * 提供用户直接使用的接口层
4
+ *
5
+ * @packageDocumentation
6
+ */
7
+ export {
8
+ LightDBOptions,
9
+ CollectionCreateOptions,
10
+ TransactionContext,
11
+ TransactionCollection,
12
+ TransactionCallback,
13
+ TransactionOptions,
14
+ TransactionState,
15
+ TransactionResult,
16
+ DatabaseStats,
17
+ DatabaseConfig,
18
+ ILightDB,
19
+ DefineCollectionSchema,
20
+ CollectionSchema,
21
+ } from "./types";
22
+ export { TransactionError, Transaction, TransactionManager } from "./Transaction";
23
+ export { LightDB, defineCollectionSchema, openDatabase } from "./LightDB";
24
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACH,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,QAAQ,EACR,sBAAsB,EACtB,gBAAgB,GACnB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACH,gBAAgB,EAChB,WAAW,EACX,kBAAkB,GACrB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ /**
3
+ * LightDB API 层
4
+ * 提供用户直接使用的接口层
5
+ *
6
+ * @packageDocumentation
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.openDatabase =
10
+ exports.defineCollectionSchema =
11
+ exports.LightDB =
12
+ exports.TransactionManager =
13
+ exports.Transaction =
14
+ exports.TransactionError =
15
+ void 0;
16
+ var Transaction_1 = require("./Transaction");
17
+ Object.defineProperty(exports, "TransactionError", {
18
+ enumerable: true,
19
+ get: function () {
20
+ return Transaction_1.TransactionError;
21
+ },
22
+ });
23
+ Object.defineProperty(exports, "Transaction", {
24
+ enumerable: true,
25
+ get: function () {
26
+ return Transaction_1.Transaction;
27
+ },
28
+ });
29
+ Object.defineProperty(exports, "TransactionManager", {
30
+ enumerable: true,
31
+ get: function () {
32
+ return Transaction_1.TransactionManager;
33
+ },
34
+ });
35
+ var LightDB_1 = require("./LightDB");
36
+ Object.defineProperty(exports, "LightDB", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return LightDB_1.LightDB;
40
+ },
41
+ });
42
+ Object.defineProperty(exports, "defineCollectionSchema", {
43
+ enumerable: true,
44
+ get: function () {
45
+ return LightDB_1.defineCollectionSchema;
46
+ },
47
+ });
48
+ Object.defineProperty(exports, "openDatabase", {
49
+ enumerable: true,
50
+ get: function () {
51
+ return LightDB_1.openDatabase;
52
+ },
53
+ });
54
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAkBH,6CAIuB;AAHnB,+GAAA,gBAAgB,OAAA;AAChB,0GAAA,WAAW,OAAA;AACX,iHAAA,kBAAkB,OAAA;AAGtB,qCAA0E;AAAjE,kGAAA,OAAO,OAAA;AAAE,iHAAA,sBAAsB,OAAA;AAAE,uGAAA,YAAY,OAAA"}
@@ -0,0 +1,154 @@
1
+ /**
2
+ * LightDB API 层类型定义
3
+ * 包含所有公共 API 接口和类型定义
4
+ */
5
+ import type { Collection } from "../collection";
6
+ import type { CollectionOptions, IndexConfig } from "../collection/types";
7
+ import type { StorageEngineOptions, StorageStats, CheckpointResult } from "../types";
8
+ /**
9
+ * LightDB 配置选项
10
+ */
11
+ export interface LightDBOptions extends StorageEngineOptions {
12
+ /** 数据库名称,默认为 'default' */
13
+ dbName?: string;
14
+ }
15
+ /**
16
+ * 集合配置选项
17
+ * 用于创建类型安全的集合
18
+ */
19
+ export interface CollectionCreateOptions<T extends Record<string, unknown>> extends CollectionOptions<T> {
20
+ /** 集合名称(必填) */
21
+ name: string;
22
+ }
23
+ /**
24
+ * 事务上下文
25
+ * 提供事务内的集合访问
26
+ */
27
+ export interface TransactionContext {
28
+ /** 获取集合 */
29
+ collection<T extends Record<string, unknown>>(name: string): TransactionCollection<T>;
30
+ }
31
+ /**
32
+ * 事务集合接口
33
+ * 提供事务内的集合操作
34
+ */
35
+ export interface TransactionCollection<T extends Record<string, unknown>> {
36
+ /** 查找文档 */
37
+ find(filter?: Record<string, unknown>): Promise<T[]>;
38
+ /** 查找单个文档 */
39
+ findOne(filter: Record<string, unknown>): Promise<T | null>;
40
+ /** 插入文档 */
41
+ insert(doc: T): Promise<void>;
42
+ /** 更新文档 */
43
+ update(filter: Record<string, unknown>, update: Partial<T>): Promise<number>;
44
+ /** 删除文档 */
45
+ delete(filter: Record<string, unknown>): Promise<number>;
46
+ }
47
+ /**
48
+ * 事务回调函数类型
49
+ */
50
+ export type TransactionCallback = (tx: TransactionContext) => Promise<void>;
51
+ /**
52
+ * 事务选项
53
+ */
54
+ export interface TransactionOptions {
55
+ /** 事务超时时间(毫秒),默认 5000 */
56
+ timeout?: number;
57
+ /** 事务隔离级别 */
58
+ isolationLevel?: "read_committed" | "repeatable_read" | "serializable";
59
+ }
60
+ /**
61
+ * 事务状态
62
+ */
63
+ export type TransactionState = "active" | "committed" | "rolled_back" | "failed";
64
+ /**
65
+ * 事务结果
66
+ */
67
+ export interface TransactionResult {
68
+ /** 事务是否成功 */
69
+ success: boolean;
70
+ /** 事务状态 */
71
+ state: TransactionState;
72
+ /** 事务持续时间(毫秒) */
73
+ durationMs: number;
74
+ /** 错误信息(如果失败) */
75
+ error?: string;
76
+ }
77
+ /**
78
+ * 数据库统计信息
79
+ */
80
+ export interface DatabaseStats extends StorageStats {
81
+ /** 数据库名称 */
82
+ dbName: string;
83
+ /** 集合数量 */
84
+ collectionCount: number;
85
+ /** 集合统计信息列表 */
86
+ collections: Array<{
87
+ name: string;
88
+ documentCount: number;
89
+ indexCount: number;
90
+ }>;
91
+ }
92
+ /**
93
+ * 数据库配置信息
94
+ */
95
+ export interface DatabaseConfig {
96
+ /** 数据库名称 */
97
+ dbName: string;
98
+ /** 数据库路径 */
99
+ path: string;
100
+ /** 页面大小 */
101
+ pageSize: number;
102
+ /** WAL 阈值 */
103
+ walThreshold: number;
104
+ /** 是否启用自动检查点 */
105
+ autoCheckpoint: boolean;
106
+ }
107
+ /**
108
+ * LightDB 实例接口
109
+ * 定义 LightDB 的公共 API
110
+ */
111
+ export interface ILightDB {
112
+ /** 获取数据库名称 */
113
+ readonly dbName: string;
114
+ /** 获取数据库路径 */
115
+ readonly path: string;
116
+ /** 检查数据库是否已打开 */
117
+ readonly isOpen: boolean;
118
+ /** 获取或创建集合 */
119
+ collection<T extends Record<string, unknown>>(name: string, options: CollectionCreateOptions<T>): Collection<T>;
120
+ /** 检查集合是否存在 */
121
+ hasCollection(name: string): boolean;
122
+ /** 删除集合 */
123
+ dropCollection(name: string): boolean;
124
+ /** 获取所有集合名称 */
125
+ getCollectionNames(): string[];
126
+ /** 执行事务 */
127
+ transaction(callback: TransactionCallback, options?: TransactionOptions): Promise<TransactionResult>;
128
+ /** 执行检查点 */
129
+ checkpoint(): Promise<CheckpointResult>;
130
+ /** 获取数据库统计信息 */
131
+ getStats(): Promise<DatabaseStats>;
132
+ /** 获取数据库配置 */
133
+ getConfig(): DatabaseConfig;
134
+ /** 同步数据到磁盘 */
135
+ sync(): Promise<void>;
136
+ /** 关闭数据库 */
137
+ close(): Promise<void>;
138
+ }
139
+ /**
140
+ * 定义集合 Schema 的辅助类型
141
+ */
142
+ export type DefineCollectionSchema<T extends Record<string, unknown>> = {
143
+ /** 文档类型 */
144
+ schema: T;
145
+ /** 主键字段 */
146
+ primaryKey: keyof T & string;
147
+ /** 二级索引配置 */
148
+ indexes?: IndexConfig<T>[];
149
+ };
150
+ /**
151
+ * 创建集合 Schema 的辅助函数返回类型
152
+ */
153
+ export type CollectionSchema<T extends Record<string, unknown>> = DefineCollectionSchema<T>;
154
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * LightDB API 层类型定义
4
+ * 包含所有公共 API 接口和类型定义
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":";AAAA;;;GAGG"}