@sqlite-sync/core 0.0.1 → 0.0.3
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/dist/chunk-627DSM2Q.js +1410 -0
- package/dist/chunk-627DSM2Q.js.map +1 -0
- package/dist/chunk-UGF5IU53.js +132 -0
- package/dist/chunk-UGF5IU53.js.map +1 -0
- package/dist/crdt-schema-DQ1cYsFE.d.ts +63 -0
- package/dist/crdt-sync-remote-source-idoIjMcs.d.ts +479 -0
- package/dist/index.d.ts +117 -207
- package/dist/index.js +614 -357
- package/dist/index.js.map +1 -1
- package/dist/server.d.ts +50 -26
- package/dist/server.js +28 -36
- package/dist/server.js.map +1 -1
- package/dist/worker.d.ts +13 -11
- package/dist/worker.js +275 -140
- package/dist/worker.js.map +1 -1
- package/package.json +6 -6
- package/dist/chunk-LK5FJCUD.js +0 -522
- package/dist/chunk-LK5FJCUD.js.map +0 -1
- package/dist/chunk-YLXMST5Z.js +0 -490
- package/dist/chunk-YLXMST5Z.js.map +0 -1
- package/dist/crdt-sync-producer-0toEpGf0.d.ts +0 -15
- package/dist/crdt-sync-remote-source-rrqinqLn.d.ts +0 -271
package/dist/index.d.ts
CHANGED
|
@@ -1,20 +1,23 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
export {
|
|
1
|
+
import * as kysely from 'kysely';
|
|
2
|
+
import { Kysely, SchemaModule, SelectQueryBuilder } from 'kysely';
|
|
3
|
+
import { S as SQLiteDbWrapper, L as Logger, T as TypedEvent, a as SQLiteTransactionWrapper, b as StoredValue, C as CrdtStorage, P as PersistedCrdtEvent, G as GetEventsOptions, E as ExecuteParams, c as ExecuteResult, Q as QueryBuilderOutput, K as KyselyQueryFactory, W as WorkerState } from './crdt-sync-remote-source-idoIjMcs.js';
|
|
4
|
+
export { z as CrdtEventOrigin, A as CrdtEventStatus, B as CrdtEventType, u as CrdtSyncRemoteSource, F as CrdtUpdateLogItem, I as CrdtUpdateLogPayload, D as DatabaseIntrospection, U as DeferredPromise, V as DistributiveOmit, w as EventsPullRequest, x as EventsPushRequest, y as EventsPushResponse, H as HLC, f as HLCCounter, h as LogLevel, M as MigratableEvent, m as Migrations, n as MigrationsDb, r as PendingCrdtEvent, N as PreparedStatement, o as SyncDbMigrator, g as TableMetadata, _ as TypedBroadcastChannel, $ as TypedEventTarget, a2 as WorkerConfig, d as compareHLC, p as createCrdtApplyFunction, t as createCrdtStorage, v as createCrdtSyncRemoteSource, O as createDeferredPromise, k as createMigrations, l as createMigrator, q as createSQLiteCrdtApplyFunction, J as createStoredValue, R as createTypedEventTarget, e as deserializeHLC, X as generateId, i as introspectDb, Y as jsonSafeParse, Z as quoteId, s as serializeHLC, j as startPerformanceLogger, a0 as tryCatch, a1 as tryCatchAsync } from './crdt-sync-remote-source-idoIjMcs.js';
|
|
5
|
+
import { S as SyncDbSchema } from './crdt-schema-DQ1cYsFE.js';
|
|
6
|
+
export { C as CreateCrdtSchemaOptions, c as createSyncDbSchema } from './crdt-schema-DQ1cYsFE.js';
|
|
5
7
|
import '@sqlite.org/sqlite-wasm';
|
|
6
8
|
|
|
9
|
+
declare const dummyKysely: Kysely<any>;
|
|
10
|
+
|
|
7
11
|
type TableName<Database> = keyof Database extends string ? keyof Database : never;
|
|
8
12
|
type SQLiteReactiveDbOptions = {
|
|
9
|
-
snapshot
|
|
10
|
-
logger
|
|
13
|
+
snapshot: Uint8Array<ArrayBufferLike>;
|
|
14
|
+
logger: Logger;
|
|
11
15
|
};
|
|
12
16
|
type EventsMap = {
|
|
13
|
-
"transaction-committed":
|
|
14
|
-
"transaction-rolled-back":
|
|
15
|
-
"any-table-changed":
|
|
17
|
+
"transaction-committed": undefined;
|
|
18
|
+
"transaction-rolled-back": undefined;
|
|
19
|
+
"any-table-changed": undefined;
|
|
16
20
|
} & Record<`table:${string}`, void>;
|
|
17
|
-
declare function createSQLiteReactiveDb<Database>(opts: SQLiteReactiveDbOptions): Promise<SQLiteReactiveDb<Database>>;
|
|
18
21
|
declare class SQLiteReactiveDb<Database> {
|
|
19
22
|
readonly db: SQLiteDbWrapper<Database>;
|
|
20
23
|
private sqlite3;
|
|
@@ -23,12 +26,13 @@ declare class SQLiteReactiveDb<Database> {
|
|
|
23
26
|
private eventTarget;
|
|
24
27
|
private constructor();
|
|
25
28
|
static create<Database>(opts: SQLiteReactiveDbOptions): Promise<SQLiteReactiveDb<Database>>;
|
|
29
|
+
private liveQueryStatements;
|
|
26
30
|
createLiveQuery<TResult>(query: {
|
|
27
31
|
sql: string;
|
|
28
32
|
parameters: readonly unknown[];
|
|
29
33
|
}): {
|
|
30
34
|
getRows: () => TResult[];
|
|
31
|
-
refresh: () => void;
|
|
35
|
+
refresh: (parameters?: readonly unknown[]) => void;
|
|
32
36
|
subscribe: (onchange: () => void) => () => void;
|
|
33
37
|
};
|
|
34
38
|
subscribeToQueryChanges(params: {
|
|
@@ -51,125 +55,81 @@ declare class SQLiteReactiveDb<Database> {
|
|
|
51
55
|
private registerDbHooks;
|
|
52
56
|
createSnapshot(): Uint8Array<ArrayBuffer>;
|
|
53
57
|
useSnapshot(snapshot: Uint8Array<ArrayBufferLike>): void;
|
|
58
|
+
dispose(): void;
|
|
54
59
|
}
|
|
55
60
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
declare
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
}
|
|
71
|
-
declare function serializeHLC(hlc: HLC): string;
|
|
72
|
-
declare function deserializeHLC(serialized: string): {
|
|
73
|
-
timestamp: number;
|
|
74
|
-
counter: number;
|
|
75
|
-
nodeId: string;
|
|
61
|
+
type KvStoreItem = {
|
|
62
|
+
key: string;
|
|
63
|
+
value: string;
|
|
64
|
+
};
|
|
65
|
+
declare function createKvStoreTableQuery(schema: SchemaModule, tableName: string): kysely.CreateTableBuilder<string, "key" | "value">;
|
|
66
|
+
declare function createSQLiteKvStore({ db, metaTableName, }: {
|
|
67
|
+
db: SQLiteTransactionWrapper<any>;
|
|
68
|
+
metaTableName: string;
|
|
69
|
+
}): {
|
|
70
|
+
get: (key: string) => string | null;
|
|
71
|
+
set: (key: string, value: string) => void;
|
|
72
|
+
remove: (key: string) => void;
|
|
73
|
+
createStringStoredValue: (key: string, defaultValue: string) => StoredValue<string>;
|
|
74
|
+
createNumberStoredValue: (key: string, defaultValue: number) => StoredValue<number>;
|
|
76
75
|
};
|
|
77
|
-
declare function compareHLC(one: HLC, two: HLC): number;
|
|
78
76
|
|
|
79
|
-
type
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
declare function
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
firstEventSyncId: number;
|
|
100
|
-
lastEventSyncId: number;
|
|
101
|
-
};
|
|
102
|
-
addEventListener: <K extends "event-applied" | "event-processing-done">(type: K, listener: (event: TypedEvent<{
|
|
103
|
-
"event-applied": PersistedCrdtEvent;
|
|
104
|
-
"event-processing-done": void;
|
|
105
|
-
}[K]>) => void) => void;
|
|
106
|
-
removeEventListener: <K extends "event-applied" | "event-processing-done">(type: K, listener: (event: TypedEvent<{
|
|
107
|
-
"event-applied": PersistedCrdtEvent;
|
|
108
|
-
"event-processing-done": void;
|
|
109
|
-
}[K]>) => void) => void;
|
|
110
|
-
dispatchEvent: <K extends "event-applied" | "event-processing-done">(type: K, payload: {
|
|
111
|
-
"event-applied": PersistedCrdtEvent;
|
|
112
|
-
"event-processing-done": void;
|
|
113
|
-
}[K]) => void;
|
|
114
|
-
};
|
|
115
|
-
}>;
|
|
77
|
+
type SystemMigrationContext = {
|
|
78
|
+
eventsTableName: string;
|
|
79
|
+
updateLogTableName: string;
|
|
80
|
+
execute: (sql: string) => void;
|
|
81
|
+
};
|
|
82
|
+
type SystemMigration = {
|
|
83
|
+
version: number;
|
|
84
|
+
up: (ctx: SystemMigrationContext) => void;
|
|
85
|
+
};
|
|
86
|
+
declare const baseSystemMigrations: SystemMigration[];
|
|
87
|
+
declare function runSystemMigrations(opts: {
|
|
88
|
+
version: StoredValue<number>;
|
|
89
|
+
migrations: SystemMigration[];
|
|
90
|
+
eventsTableName: string;
|
|
91
|
+
updateLogTableName: string;
|
|
92
|
+
execute: (sql: string) => void;
|
|
93
|
+
transaction: (callback: () => void) => void;
|
|
94
|
+
}): void;
|
|
95
|
+
declare function applyWorkerDbSchema(db: SQLiteDbWrapper<any>): void;
|
|
96
|
+
declare function applyMemoryDbSchema(db: SQLiteDbWrapper<any>): void;
|
|
116
97
|
|
|
117
|
-
type
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
98
|
+
type CrdtStorageMutator<Database> = ReturnType<typeof createCrdtStorageMutator<Database>>;
|
|
99
|
+
type CommitEventOptions<Database, Table extends keyof Database & string> = {
|
|
100
|
+
type: "item-created";
|
|
101
|
+
dataset: Table;
|
|
102
|
+
item_id: string;
|
|
103
|
+
payload: CreateEventPayload<Database, Table>;
|
|
104
|
+
} | {
|
|
105
|
+
type: "item-updated";
|
|
106
|
+
dataset: Table;
|
|
107
|
+
item_id: string;
|
|
108
|
+
payload: UpdateEventPayload<Database, Table>;
|
|
109
|
+
} | {
|
|
110
|
+
type: "item-deleted";
|
|
111
|
+
dataset: Table;
|
|
112
|
+
item_id: string;
|
|
113
|
+
};
|
|
114
|
+
type CreateEventPayload<Database, Table extends keyof Database> = Omit<Database[Table], "tombstone">;
|
|
115
|
+
type UpdateEventPayload<Database, Table extends keyof Database> = Omit<Partial<Database[Table]>, "id" | "tombstone">;
|
|
116
|
+
declare function createCrdtStorageMutator<Database>({ storage }: {
|
|
117
|
+
storage: CrdtStorage;
|
|
118
|
+
}): {
|
|
119
|
+
enqueueEvents: (events: CommitEventOptions<Database, keyof Database & string>[]) => void;
|
|
120
|
+
createEvent: <Table extends keyof Database & string>(event: CommitEventOptions<Database, Table>) => CommitEventOptions<Database, Table>;
|
|
121
|
+
enqueueEvent: (event: CommitEventOptions<Database, keyof Database & string>) => void;
|
|
122
122
|
};
|
|
123
|
-
declare function createSyncedDb<Database>(options: SyncedDbOptions): Promise<{
|
|
124
|
-
db: SQLiteDbWrapper<Database>;
|
|
125
|
-
reactiveDb: Omit<SQLiteReactiveDb<Database>, "db">;
|
|
126
|
-
workerDb: {
|
|
127
|
-
addEventListener: <K extends "new-notification">(type: K, listener: (event: TypedEvent<{
|
|
128
|
-
"new-notification": WorkerNotificationMessage;
|
|
129
|
-
}[K]>) => void) => void;
|
|
130
|
-
removeEventListener: <K extends "new-notification">(type: K, listener: (event: TypedEvent<{
|
|
131
|
-
"new-notification": WorkerNotificationMessage;
|
|
132
|
-
}[K]>) => void) => void;
|
|
133
|
-
getSnapshot: () => Promise<GetSnapshotResponse>;
|
|
134
|
-
pushTabEvents: (request: EventsPushRequest) => Promise<EventsPushResponse>;
|
|
135
|
-
execute: (query: ExecuteParams) => Promise<ExecuteResult<unknown>>;
|
|
136
|
-
pullEvents: (params: EventsPullRequest) => Promise<EventsPullResponse>;
|
|
137
|
-
postInitReady: () => Promise<void>;
|
|
138
|
-
};
|
|
139
|
-
}>;
|
|
140
|
-
type SyncedDb<Database> = Awaited<ReturnType<typeof createSyncedDb<Database>>>;
|
|
141
123
|
|
|
142
|
-
type
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
}) =>
|
|
147
|
-
rows: unknown[];
|
|
148
|
-
};
|
|
149
|
-
close: () => void;
|
|
124
|
+
type CrdtSyncProducer = {
|
|
125
|
+
storage: CrdtStorage;
|
|
126
|
+
broadcastEvents: (request: {
|
|
127
|
+
newSyncId: number;
|
|
128
|
+
}) => void;
|
|
150
129
|
};
|
|
151
|
-
declare
|
|
152
|
-
#private;
|
|
153
|
-
constructor(db: SqliteDatabase);
|
|
154
|
-
init(): Promise<void>;
|
|
155
|
-
acquireConnection(): Promise<DatabaseConnection>;
|
|
156
|
-
beginTransaction(connection: DatabaseConnection): Promise<void>;
|
|
157
|
-
commitTransaction(connection: DatabaseConnection): Promise<void>;
|
|
158
|
-
rollbackTransaction(connection: DatabaseConnection): Promise<void>;
|
|
159
|
-
releaseConnection(): Promise<void>;
|
|
160
|
-
destroy(): Promise<void>;
|
|
161
|
-
}
|
|
162
|
-
declare function createSQLiteKysely<Database>(sqliteDb: SqliteDatabase): Kysely<Database>;
|
|
130
|
+
declare const createCrdtSyncProducer: ({ storage, broadcastEvents }: CrdtSyncProducer) => void;
|
|
163
131
|
|
|
164
|
-
|
|
165
|
-
db: Kysely<unknown>;
|
|
166
|
-
migrations: Record<string, Migration>;
|
|
167
|
-
};
|
|
168
|
-
declare function createSyncDbMigrator(options: SyncDbMigratorOptions): Migrator;
|
|
169
|
-
declare function createSyncDbMigrations(migrations: Record<number, Migration>): Record<number, Migration>;
|
|
170
|
-
|
|
171
|
-
declare function applyWorkerDbSchema(db: SQLiteDbWrapper<any>): void;
|
|
172
|
-
declare function applyMemoryDbSchema(db: SQLiteDbWrapper<any>): void;
|
|
132
|
+
declare function applyKyselyEventsBatchFilters(query: SelectQueryBuilder<any, any, PersistedCrdtEvent>, opts: GetEventsOptions): SelectQueryBuilder<any, any, PersistedCrdtEvent>;
|
|
173
133
|
|
|
174
134
|
declare function makeCrdtTable({ db, baseTableName, crdtTableName, }: {
|
|
175
135
|
db: SQLiteDbWrapper<any>;
|
|
@@ -177,92 +137,42 @@ declare function makeCrdtTable({ db, baseTableName, crdtTableName, }: {
|
|
|
177
137
|
crdtTableName: string;
|
|
178
138
|
}): void;
|
|
179
139
|
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
notificationType: "new-event-chunk-applied";
|
|
183
|
-
newSyncId: number;
|
|
184
|
-
};
|
|
185
|
-
type PushTabEventsResponse = {
|
|
186
|
-
firstEventSyncId: number;
|
|
187
|
-
lastEventSyncId: number;
|
|
188
|
-
};
|
|
189
|
-
type GetSnapshotResponse = {
|
|
190
|
-
file: Uint8Array<ArrayBufferLike>;
|
|
191
|
-
syncId: number;
|
|
192
|
-
};
|
|
193
|
-
interface WorkerRpc {
|
|
194
|
-
getSnapshot: () => GetSnapshotResponse;
|
|
195
|
-
pushTabEvents: (request: EventsPushRequest) => EventsPushResponse;
|
|
196
|
-
execute: (query: ExecuteParams) => ExecuteResult<unknown>;
|
|
197
|
-
pullEvents: (params: EventsPullRequest) => EventsPullResponse;
|
|
198
|
-
postInitReady: () => void;
|
|
199
|
-
}
|
|
200
|
-
type WorkerRequestMethod = keyof WorkerRpc;
|
|
201
|
-
type WorkerRequestMessage<TMethod extends WorkerRequestMethod = WorkerRequestMethod> = {
|
|
202
|
-
type: "request";
|
|
203
|
-
requestId: string;
|
|
204
|
-
method: TMethod;
|
|
205
|
-
args: Parameters<WorkerRpc[TMethod]>;
|
|
206
|
-
};
|
|
207
|
-
type WorkerResponseMessage<TMethod extends WorkerRequestMethod = WorkerRequestMethod> = {
|
|
208
|
-
type: "response";
|
|
209
|
-
requestId: string;
|
|
210
|
-
data: ReturnType<WorkerRpc[TMethod]>;
|
|
211
|
-
};
|
|
212
|
-
type AsyncRpc<T> = {
|
|
213
|
-
[K in keyof T]: T[K] extends (...args: infer U) => infer V ? (...args: U) => V extends Promise<infer W> ? Promise<W> : Promise<V> : never;
|
|
214
|
-
};
|
|
215
|
-
declare const broadcastChannelNames: {
|
|
216
|
-
readonly requests: "sync-db-worker-requests";
|
|
217
|
-
readonly responses: "sync-db-worker-responses";
|
|
218
|
-
};
|
|
219
|
-
type WorkerBroadcastChannels = {
|
|
220
|
-
requests: TypedBroadcastChannel<WorkerRequestMessage>;
|
|
221
|
-
responses: TypedBroadcastChannel<WorkerResponseMessage | WorkerNotificationMessage | WorkerInitResponse>;
|
|
222
|
-
};
|
|
223
|
-
declare const createBroadcastChannels: () => WorkerBroadcastChannels;
|
|
224
|
-
type WorkerConfig = {
|
|
225
|
-
dbPath: string;
|
|
226
|
-
clientId: string;
|
|
140
|
+
type SyncedDbOptions<Database, Props = undefined> = {
|
|
141
|
+
dbId: string;
|
|
227
142
|
clearOnInit?: boolean;
|
|
228
|
-
syncServer: SyncServerConfig;
|
|
229
|
-
};
|
|
230
|
-
type SyncServerConfig = {
|
|
231
|
-
host: string;
|
|
232
|
-
room: string;
|
|
233
|
-
};
|
|
234
|
-
type WorkerInitMessage = {
|
|
235
|
-
type: "init";
|
|
236
|
-
config: WorkerConfig;
|
|
237
|
-
};
|
|
238
|
-
declare function isWorkerInitMessage(message: unknown): message is WorkerInitMessage;
|
|
239
|
-
type WorkerInitResponse = {
|
|
240
|
-
type: "init-ready";
|
|
241
|
-
};
|
|
242
|
-
declare function isWorkerInitResponse(message: unknown): message is WorkerInitResponse;
|
|
243
|
-
declare function isWorkerRequestMessage(message: unknown): message is WorkerRequestMessage;
|
|
244
|
-
declare function isWorkerResponseMessage(message: unknown): message is WorkerResponseMessage;
|
|
245
|
-
declare function isWorkerNotificationMessage(message: unknown): message is WorkerNotificationMessage;
|
|
246
|
-
|
|
247
|
-
declare const createWorkerDbClient: ({ broadcastChannels, }: {
|
|
248
|
-
broadcastChannels: WorkerBroadcastChannels;
|
|
249
|
-
}) => {
|
|
250
|
-
addEventListener: <K extends "new-notification">(type: K, listener: (event: TypedEvent<{
|
|
251
|
-
"new-notification": WorkerNotificationMessage;
|
|
252
|
-
}[K]>) => void) => void;
|
|
253
|
-
removeEventListener: <K extends "new-notification">(type: K, listener: (event: TypedEvent<{
|
|
254
|
-
"new-notification": WorkerNotificationMessage;
|
|
255
|
-
}[K]>) => void) => void;
|
|
256
|
-
getSnapshot: () => Promise<GetSnapshotResponse>;
|
|
257
|
-
pushTabEvents: (request: EventsPushRequest) => Promise<EventsPushResponse>;
|
|
258
|
-
execute: (query: ExecuteParams) => Promise<ExecuteResult<unknown>>;
|
|
259
|
-
pullEvents: (params: EventsPullRequest) => Promise<EventsPullResponse>;
|
|
260
|
-
postInitReady: () => Promise<void>;
|
|
261
|
-
};
|
|
262
|
-
declare function initializeWorkerDb({ worker, broadcastChannels, config, }: {
|
|
263
143
|
worker: Worker;
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
}
|
|
144
|
+
workerProps: Props;
|
|
145
|
+
syncDbSchema: SyncDbSchema<Database>;
|
|
146
|
+
};
|
|
147
|
+
declare function createSyncedDb<Database, Props = undefined>(options: SyncedDbOptions<Database, Props>): Promise<{
|
|
148
|
+
db: {
|
|
149
|
+
execute: <T = unknown>(opts: ExecuteParams | string | kysely.CompiledQuery<T>, meta?: {
|
|
150
|
+
loggerLevel?: "info" | "system";
|
|
151
|
+
}) => ExecuteResult<T>;
|
|
152
|
+
executeKysely: <TQuery extends kysely.Compilable<TResult>, TResult = QueryBuilderOutput<TQuery>>(factory: KyselyQueryFactory<Database, TQuery, TResult>, meta?: {
|
|
153
|
+
loggerLevel?: "info" | "system";
|
|
154
|
+
}) => ExecuteResult<TResult>;
|
|
155
|
+
executeTransaction: <T>(callback: (db: SQLiteTransactionWrapper<Database>) => T) => T;
|
|
156
|
+
createLiveQuery: <TResult>(query: {
|
|
157
|
+
sql: string;
|
|
158
|
+
parameters: readonly unknown[];
|
|
159
|
+
}) => {
|
|
160
|
+
getRows: () => TResult[];
|
|
161
|
+
refresh: (parameters?: readonly unknown[]) => void;
|
|
162
|
+
subscribe: (onchange: () => void) => () => void;
|
|
163
|
+
};
|
|
164
|
+
};
|
|
165
|
+
state: {
|
|
166
|
+
getState: () => WorkerState;
|
|
167
|
+
subscribe: (onChange: () => void) => () => void;
|
|
168
|
+
goOnline: () => Promise<void>;
|
|
169
|
+
goOffline: () => Promise<void>;
|
|
170
|
+
};
|
|
171
|
+
dispose: () => Promise<void>;
|
|
172
|
+
_internal: {
|
|
173
|
+
executeAsync: (query: ExecuteParams) => Promise<ExecuteResult<unknown>>;
|
|
174
|
+
};
|
|
175
|
+
}>;
|
|
176
|
+
type SyncedDb<Database> = Awaited<ReturnType<typeof createSyncedDb<Database>>>;
|
|
267
177
|
|
|
268
|
-
export {
|
|
178
|
+
export { CrdtStorage, type CrdtStorageMutator, ExecuteParams, ExecuteResult, type KvStoreItem, KyselyQueryFactory, Logger, PersistedCrdtEvent, QueryBuilderOutput, SQLiteDbWrapper, SQLiteReactiveDb, SQLiteTransactionWrapper, StoredValue, SyncDbSchema, type SyncedDb, type SystemMigration, type SystemMigrationContext, TypedEvent, WorkerState, applyKyselyEventsBatchFilters, applyMemoryDbSchema, applyWorkerDbSchema, baseSystemMigrations, createCrdtStorageMutator, createCrdtSyncProducer, createKvStoreTableQuery, createSQLiteKvStore, createSyncedDb, dummyKysely, makeCrdtTable, runSystemMigrations };
|