@delali/sirannon-db 0.3.2 → 0.3.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.
Files changed (30) hide show
  1. package/dist/backup/index.d.ts +5 -5
  2. package/dist/backup-scheduler/index.d.ts +2 -2
  3. package/dist/{change-tracker-BY8_k6lS.d.ts → change-tracker-CjRFuZdB.d.ts} +1 -1
  4. package/dist/client/index.d.ts +17 -9
  5. package/dist/client/topology.d.ts +5 -5
  6. package/dist/{client-base-BQ--zmeh.d.ts → client-base-Cmd9EVme.d.ts} +3 -3
  7. package/dist/core/index.d.ts +10 -10
  8. package/dist/{database-DHxMvGza.d.ts → database-BLQvqjsw.d.ts} +5 -5
  9. package/dist/{database-backup-CAuL6aA-.d.ts → database-backup-B7oszQ2n.d.ts} +1 -1
  10. package/dist/driver/better-sqlite3.d.ts +1 -1
  11. package/dist/driver/bun.d.ts +1 -1
  12. package/dist/driver/expo.d.ts +1 -1
  13. package/dist/driver/node.d.ts +1 -1
  14. package/dist/driver/wa-sqlite.d.ts +1 -1
  15. package/dist/file-migrations/index.d.ts +1 -1
  16. package/dist/{protocol-BM2_usOB.d.ts → protocol-HI-nY8DD.d.ts} +1 -1
  17. package/dist/react/index.d.ts +1 -1
  18. package/dist/replication/coordinator/etcd.d.ts +1 -1
  19. package/dist/replication/index.d.ts +10 -10
  20. package/dist/{restore-options-DDOqVqDn.d.ts → restore-options-CksYsH1l.d.ts} +1 -1
  21. package/dist/server/index.d.ts +18 -10
  22. package/dist/{server-options-C3KHEL8z.d.ts → server-options-Bj5iJnjx.d.ts} +1 -1
  23. package/dist/{sirannon-BoOZwMkx.d.ts → sirannon-BPxC5tC2.d.ts} +2 -2
  24. package/dist/transport/grpc.d.ts +4 -4
  25. package/dist/transport/memory.d.ts +4 -4
  26. package/dist/{types-CMBcFPhb.d.ts → types-B0EhgDbr.d.ts} +4 -0
  27. package/dist/{types-6QmvKWho.d.ts → types-CbjfRwrK.d.ts} +3 -3
  28. package/dist/{types-_k29or0d.d.ts → types-DPSmjU54.d.ts} +9 -4
  29. package/dist/{types-qohUrQx6.d.ts → types-DTO4CYhW.d.ts} +19 -0
  30. package/package.json +7 -7
@@ -1,8 +1,8 @@
1
- import { B as BackupDestination, f as BackupRunReport } from '../types-_k29or0d.js';
2
- export { g as BackupChain, h as BackupChainBase, i as BackupChainChange, j as BackupChainPosition, k as BackupChainRecord, l as BackupCycle, m as BackupCycleError, n as BackupCycleOptions, o as BackupCycleStatus, p as BackupFileReport, q as BackupGroupMembership, r as BackupGroupSource, s as BackupLogPosition, t as BackupNodePreference, u as BackupPiece, v as BackupProgress, w as BackupSkip, x as BackupSkipReason, y as BackupToDestinationOptions, z as BackupVerifyResult, C as DEFAULT_CHAIN_NAME, E as chainLogName, F as readBackupChains, G as verifyBackupRecord } from '../types-_k29or0d.js';
3
- export { B as BackupCapabilities, a as BackupChainLocation, b as BackupRestorePlan, c as BackupSafeToDeleteOptions, d as backupPiecesSafeToDelete, p as planBackupRestore } from '../database-backup-CAuL6aA-.js';
4
- import { B as BackupRestoreOptions, a as BackupRestoreReport } from '../restore-options-DDOqVqDn.js';
5
- export { b as BackupRestoreProgress } from '../restore-options-DDOqVqDn.js';
1
+ import { B as BackupDestination, f as BackupRunReport } from '../types-DPSmjU54.js';
2
+ export { g as BackupChain, h as BackupChainBase, i as BackupChainChange, j as BackupChainPosition, k as BackupChainRecord, l as BackupCycle, m as BackupCycleError, n as BackupCycleOptions, o as BackupCycleStatus, p as BackupFileReport, q as BackupGroupMembership, r as BackupGroupSource, s as BackupLogPosition, t as BackupNodePreference, u as BackupPiece, v as BackupProgress, w as BackupSkip, x as BackupSkipReason, y as BackupToDestinationOptions, z as BackupVerifyResult, C as DEFAULT_CHAIN_NAME, E as chainLogName, F as readBackupChains, G as verifyBackupRecord } from '../types-DPSmjU54.js';
3
+ export { B as BackupCapabilities, a as BackupChainLocation, b as BackupRestorePlan, c as BackupSafeToDeleteOptions, d as backupPiecesSafeToDelete, p as planBackupRestore } from '../database-backup-B7oszQ2n.js';
4
+ import { B as BackupRestoreOptions, a as BackupRestoreReport } from '../restore-options-CksYsH1l.js';
5
+ export { b as BackupRestoreProgress } from '../restore-options-CksYsH1l.js';
6
6
  import '../query-types-p1liOP-b.js';
7
7
 
8
8
  /** What one assembled file took to build.
@@ -1,5 +1,5 @@
1
- import { I as SQLiteConnection, J as BackupFileCopy, K as BackupRunRequest, f as BackupRunReport, L as BackupScheduleRequest } from '../types-_k29or0d.js';
2
- export { p as BackupFileReport, O as BackupScheduleOptions, R as RunExclusive } from '../types-_k29or0d.js';
1
+ import { I as SQLiteConnection, J as BackupFileCopy, K as BackupRunRequest, f as BackupRunReport, L as BackupScheduleRequest } from '../types-DPSmjU54.js';
2
+ export { p as BackupFileReport, O as BackupScheduleOptions, R as RunExclusive } from '../types-DPSmjU54.js';
3
3
  import '../query-types-p1liOP-b.js';
4
4
 
5
5
  /** What one runtime needs before a copy can reach a destination without a local file.
@@ -1,4 +1,4 @@
1
- import { I as SQLiteConnection } from './types-_k29or0d.js';
1
+ import { I as SQLiteConnection } from './types-DPSmjU54.js';
2
2
  import { C as ChangeEvent } from './query-types-p1liOP-b.js';
3
3
 
4
4
  /**
@@ -1,17 +1,17 @@
1
1
  export { F as FieldMergeResolver, L as LWWResolver, P as PrimaryWinsResolver } from '../primary-wins-B0np8JS3.js';
2
2
  import { C as ConflictResolver, R as ReplicationBatch } from '../types-CjhxcjhA.js';
3
3
  export { a as ConflictContext, b as ConflictResolution } from '../types-CjhxcjhA.js';
4
- import { C as ClientOptions, B as BulkLoadDurability } from '../server-options-C3KHEL8z.js';
5
- import { D as DatabaseClient, T as Transport, L as LiveHandlers, R as RemoteSubscription, a as RemoteSubscriptionBuilder, S as SubscribeOptions, b as RegistryDigestSource } from '../client-base-BQ--zmeh.js';
6
- export { c as LoadAllOptions, d as RemoteDatabase, e as RemoteError, f as SQL_REFUSED_MESSAGE, g as ServerCapabilities, h as ServerCapabilityCheck } from '../client-base-BQ--zmeh.js';
7
- import { a as LiveQuery, b as LiveQueryState, c as LiveUpdate } from '../types-qohUrQx6.js';
8
- import { l as DeviceSyncPort, D as Database } from '../database-DHxMvGza.js';
4
+ import { C as ClientOptions, B as BulkLoadDurability } from '../server-options-Bj5iJnjx.js';
5
+ import { D as DatabaseClient, T as Transport, L as LiveHandlers, R as RemoteSubscription, a as RemoteSubscriptionBuilder, S as SubscribeOptions, b as RegistryDigestSource } from '../client-base-Cmd9EVme.js';
6
+ export { c as LoadAllOptions, d as RemoteDatabase, e as RemoteError, f as SQL_REFUSED_MESSAGE, g as ServerCapabilities, h as ServerCapabilityCheck } from '../client-base-Cmd9EVme.js';
7
+ import { a as LiveQuery, b as LiveQueryState, c as LiveUpdate } from '../types-DTO4CYhW.js';
8
+ import { l as DeviceSyncPort, D as Database } from '../database-BLQvqjsw.js';
9
9
  import { C as ChangeEvent, P as Params, R as ReadConcern, W as WriteConcern } from '../query-types-p1liOP-b.js';
10
- import { Q as QueryResponse, E as ExecuteResponse, T as TransactionResponse, B as BatchResponse, L as LoadResponse, A as AckResponse } from '../protocol-BM2_usOB.js';
10
+ import { Q as QueryResponse, E as ExecuteResponse, T as TransactionResponse, B as BatchResponse, L as LoadResponse, A as AckResponse } from '../protocol-HI-nY8DD.js';
11
11
  import '../operation-registry-oiPuSYI6.js';
12
- import '../types-_k29or0d.js';
13
- import '../database-backup-CAuL6aA-.js';
14
- import '../change-tracker-BY8_k6lS.js';
12
+ import '../types-DPSmjU54.js';
13
+ import '../database-backup-B7oszQ2n.js';
14
+ import '../change-tracker-CjRFuZdB.js';
15
15
 
16
16
  /**
17
17
  * Connects to one sirannon-db server and hands out a {@link RemoteDatabase} per database.
@@ -207,17 +207,25 @@ interface SyncControllerOptions {
207
207
  * @public
208
208
  */
209
209
  type SnapshotOutcome = {
210
+ /** True where the download finished and its rows are in place. */
210
211
  ok: true;
212
+ /** Null on a download that finished. */
211
213
  error: null;
214
+ /** True, because a finished download leaves the local database ready to read. */
212
215
  databaseUsable: true;
216
+ /** False, because a finished download needs no further attempt. */
213
217
  retrying: false;
214
218
  } | {
219
+ /** False where the download failed. */
215
220
  ok: false;
221
+ /** The code and message of what stopped the download. */
216
222
  error: {
217
223
  code: string;
218
224
  message: string;
219
225
  };
226
+ /** Whether the local database still answers reads after the failure. */
220
227
  databaseUsable: boolean;
228
+ /** True while the controller is making another attempt. */
221
229
  retrying: boolean;
222
230
  };
223
231
  /**
@@ -1,11 +1,11 @@
1
1
  import { a as ReadConcernLevel } from '../query-types-p1liOP-b.js';
2
- import { C as ClientOptions } from '../server-options-C3KHEL8z.js';
3
- import { T as Transport, D as DatabaseClient } from '../client-base-BQ--zmeh.js';
4
- import { H as ClusterStatusInfo } from '../types-_k29or0d.js';
2
+ import { C as ClientOptions } from '../server-options-Bj5iJnjx.js';
3
+ import { T as Transport, D as DatabaseClient } from '../client-base-Cmd9EVme.js';
4
+ import { H as ClusterStatusInfo } from '../types-DPSmjU54.js';
5
5
  import '../operation-registry-oiPuSYI6.js';
6
6
  import '../types-CjhxcjhA.js';
7
- import '../types-qohUrQx6.js';
8
- import '../protocol-BM2_usOB.js';
7
+ import '../types-DTO4CYhW.js';
8
+ import '../protocol-HI-nY8DD.js';
9
9
 
10
10
  interface TopologyRouting {
11
11
  _getReadEndpoint(databaseId?: string, readConcern?: ReadConcernLevel): Promise<string>;
@@ -1,8 +1,8 @@
1
- import { B as BulkLoadDurability, a as BulkLoadResult, C as ClientOptions } from './server-options-C3KHEL8z.js';
2
- import { R as ResultOp, L as LiveQueryOptions, a as LiveQuery } from './types-qohUrQx6.js';
1
+ import { B as BulkLoadDurability, a as BulkLoadResult, C as ClientOptions } from './server-options-Bj5iJnjx.js';
2
+ import { R as ResultOp, L as LiveQueryOptions, a as LiveQuery } from './types-DTO4CYhW.js';
3
3
  import { O as OperationRef, b as OperationArguments } from './operation-registry-oiPuSYI6.js';
4
4
  import { P as Params, R as ReadConcern, W as WriteConcern, C as ChangeEvent, Q as QueryOptions } from './query-types-p1liOP-b.js';
5
- import { Q as QueryResponse, E as ExecuteResponse, T as TransactionResponse, B as BatchResponse, L as LoadResponse } from './protocol-BM2_usOB.js';
5
+ import { Q as QueryResponse, E as ExecuteResponse, T as TransactionResponse, B as BatchResponse, L as LoadResponse } from './protocol-HI-nY8DD.js';
6
6
 
7
7
  /**
8
8
  * Message a client raises when the server accepts no SQL over the network.
@@ -1,15 +1,15 @@
1
- export { B as BackupCapabilities, a as BackupChainLocation, b as BackupRestorePlan, c as BackupSafeToDeleteOptions, d as backupPiecesSafeToDelete, p as planBackupRestore } from '../database-backup-CAuL6aA-.js';
2
- import { I as SQLiteConnection, U as SynchronousLevel, S as SQLiteDriver, D as DatabaseOptions, V as LifecycleConfig, M as Migration, W as MigrationResult, X as RollbackResult } from '../types-_k29or0d.js';
3
- export { A as AfterQueryHook, Y as AppliedMigrationEntry, g as BackupChain, h as BackupChainBase, i as BackupChainChange, j as BackupChainPosition, k as BackupChainRecord, m as BackupCycleError, n as BackupCycleOptions, o as BackupCycleStatus, B as BackupDestination, p as BackupFileReport, q as BackupGroupMembership, r as BackupGroupSource, s as BackupLogPosition, t as BackupNodePreference, u as BackupPiece, v as BackupProgress, f as BackupRunReport, O as BackupScheduleOptions, w as BackupSkip, x as BackupSkipReason, y as BackupToDestinationOptions, z as BackupVerifyResult, Z as BatchSummary, c as BeforeConnectHook, b as BeforeQueryHook, _ as BeforeSnapshotHook, $ as BeforeSubscribeHook, a0 as CDCMetrics, a1 as ClusterReadEndpointInfo, H as ClusterStatusInfo, a2 as ConnectionHookContext, a3 as ConnectionMetrics, C as DEFAULT_CHAIN_NAME, e as DatabaseCloseHook, a4 as DatabaseCopyRequest, a5 as DatabaseCopyStep, d as DatabaseOpenHook, P as DriverCapabilities, a6 as DriverWorkerEntry, a7 as HookConfig, a8 as MIGRATION_NAME_RE, a9 as MetricsConfig, aa as MigrationBaseline, ab as MigrationSource, ac as NODE_HEALTH_REASONS, ad as NODE_HEALTH_STATES, N as NodeHealth, ae as NodeHealthReason, af as NodeHealthState, ag as OpenOptions, ah as QueryHookContext, ai as QueryMetrics, aj as RunResult, ak as SQLiteStatement, a as SirannonOptions, T as Transaction, al as WriterWorkerOptions, F as readBackupChains } from '../types-_k29or0d.js';
4
- import { B as BulkLoadDurability, a as BulkLoadResult, R as RequestContext } from '../server-options-C3KHEL8z.js';
5
- export { A as AppliedMigrationRow, b as AuthenticateHook, c as BulkLoadOptions, C as ClientOptions, d as ClusterStatusAuthorizer, e as CorsOptions, f as ReplicationStatusInfo, g as ServerExecutionTarget, h as ServerExecutionTargetResolver, S as ServerOptions, W as WSHandlerOptions } from '../server-options-C3KHEL8z.js';
6
- export { C as ChangeTracker, a as ChangeTrackerOptions } from '../change-tracker-BY8_k6lS.js';
7
- import { D as Database } from '../database-DHxMvGza.js';
8
- export { C as ConnectionPool, b as ConnectionPoolOptions, c as DatabaseBackups, d as DatabaseLifecycle, a as HookDispose, e as HookEvent, f as HookEventContextMap, g as HookHandler, H as HookRegistry, M as MetricsCollector, S as SnapshotHookContext, h as SubscribeHookContext, i as execute, j as executeBatch, q as query, k as queryOne } from '../database-DHxMvGza.js';
1
+ export { B as BackupCapabilities, a as BackupChainLocation, b as BackupRestorePlan, c as BackupSafeToDeleteOptions, d as backupPiecesSafeToDelete, p as planBackupRestore } from '../database-backup-B7oszQ2n.js';
2
+ import { I as SQLiteConnection, U as SynchronousLevel, S as SQLiteDriver, D as DatabaseOptions, V as LifecycleConfig, M as Migration, W as MigrationResult, X as RollbackResult } from '../types-DPSmjU54.js';
3
+ export { A as AfterQueryHook, Y as AfterQueryHookContext, Z as AppliedMigrationEntry, g as BackupChain, h as BackupChainBase, i as BackupChainChange, j as BackupChainPosition, k as BackupChainRecord, m as BackupCycleError, n as BackupCycleOptions, o as BackupCycleStatus, B as BackupDestination, p as BackupFileReport, q as BackupGroupMembership, r as BackupGroupSource, s as BackupLogPosition, t as BackupNodePreference, u as BackupPiece, v as BackupProgress, f as BackupRunReport, O as BackupScheduleOptions, w as BackupSkip, x as BackupSkipReason, y as BackupToDestinationOptions, z as BackupVerifyResult, _ as BatchSummary, c as BeforeConnectHook, b as BeforeQueryHook, $ as BeforeSnapshotHook, a0 as BeforeSubscribeHook, a1 as CDCMetrics, a2 as ClusterReadEndpointInfo, H as ClusterStatusInfo, a3 as ConnectionHookContext, a4 as ConnectionMetrics, C as DEFAULT_CHAIN_NAME, e as DatabaseCloseHook, a5 as DatabaseCopyRequest, a6 as DatabaseCopyStep, d as DatabaseOpenHook, P as DriverCapabilities, a7 as DriverWorkerEntry, a8 as HookConfig, a9 as MIGRATION_NAME_RE, aa as MetricsConfig, ab as MigrationBaseline, ac as MigrationSource, ad as NODE_HEALTH_REASONS, ae as NODE_HEALTH_STATES, N as NodeHealth, af as NodeHealthReason, ag as NodeHealthState, ah as OpenOptions, ai as QueryHookContext, aj as QueryMetrics, ak as RunResult, al as SQLiteStatement, a as SirannonOptions, T as Transaction, am as WriterWorkerOptions, F as readBackupChains } from '../types-DPSmjU54.js';
4
+ import { B as BulkLoadDurability, a as BulkLoadResult, R as RequestContext } from '../server-options-Bj5iJnjx.js';
5
+ export { A as AppliedMigrationRow, b as AuthenticateHook, c as BulkLoadOptions, C as ClientOptions, d as ClusterStatusAuthorizer, e as CorsOptions, f as ReplicationStatusInfo, g as ServerExecutionTarget, h as ServerExecutionTargetResolver, S as ServerOptions, W as WSHandlerOptions } from '../server-options-Bj5iJnjx.js';
6
+ export { C as ChangeTracker, a as ChangeTrackerOptions } from '../change-tracker-CjRFuZdB.js';
7
+ import { D as Database } from '../database-BLQvqjsw.js';
8
+ export { C as ConnectionPool, b as ConnectionPoolOptions, c as DatabaseBackups, d as DatabaseLifecycle, a as HookDispose, e as HookEvent, f as HookEventContextMap, g as HookHandler, H as HookRegistry, M as MetricsCollector, S as SnapshotHookContext, h as SubscribeHookContext, i as execute, j as executeBatch, q as query, k as queryOne } from '../database-BLQvqjsw.js';
9
9
  export { B as BackupError, C as CDCError, a as ConnectionPoolError, D as DatabaseAlreadyExistsError, b as DatabaseNotFoundError, E as ExtensionError, F as ForbiddenSqlError, H as HookDeniedError, M as MaxDatabasesError, c as MigrationError, Q as QueryError, R as ReadOnlyError, d as RequestDeniedError, S as SirannonError, T as TransactionError, W as WriteOverloadError } from '../errors-Dei4GdBb.js';
10
- export { a as LiveQuery, L as LiveQueryOptions, b as LiveQueryState, c as LiveUpdate, R as ResultOp } from '../types-qohUrQx6.js';
10
+ export { a as LiveQuery, L as LiveQueryOptions, b as LiveQueryState, c as LiveUpdate, R as ResultOp } from '../types-DTO4CYhW.js';
11
11
  import { B as BaselineFileOption } from '../baseline-D93hcIEE.js';
12
- export { S as Sirannon } from '../sirannon-BoOZwMkx.js';
12
+ export { S as Sirannon } from '../sirannon-BPxC5tC2.js';
13
13
  export { C as ChangeEvent, b as ChangeOperation, E as ExecuteResult, P as Params, Q as QueryOptions, R as ReadConcern, a as ReadConcernLevel, S as Subscription, c as SubscriptionBuilder, d as SubscriptionOptions, W as WriteConcern, e as WriteConcernLevel } from '../query-types-p1liOP-b.js';
14
14
  export { D as DatabaseOperations, b as OperationArguments, O as OperationRef, a as OperationRegistry, c as OperationStatement, R as ReadOperation, W as WriteOperation, o as operationName, d as operationRef } from '../operation-registry-oiPuSYI6.js';
15
15
  import '../types-CjhxcjhA.js';
@@ -1,10 +1,10 @@
1
- import { D as DatabaseBackupController, B as BackupCapabilities, a as BackupChainLocation, b as BackupRestorePlan, c as BackupSafeToDeleteOptions } from './database-backup-CAuL6aA-.js';
2
- import { S as SQLiteDriver, U as SynchronousLevel, am as WorkerHostOptions, I as SQLiteConnection, T as Transaction, an as WriterContext, M as Migration, W as MigrationResult, X as RollbackResult, ah as QueryHookContext, a2 as ConnectionHookContext, $ as BeforeSubscribeHook, _ as BeforeSnapshotHook, a7 as HookConfig, a9 as MetricsConfig, ai as QueryMetrics, a3 as ConnectionMetrics, a0 as CDCMetrics, D as DatabaseOptions, p as BackupFileReport, y as BackupToDestinationOptions, f as BackupRunReport, O as BackupScheduleOptions, g as BackupChain, o as BackupCycleStatus, z as BackupVerifyResult, k as BackupChainRecord, b as BeforeQueryHook, A as AfterQueryHook } from './types-_k29or0d.js';
3
- import { C as ChangeTracker } from './change-tracker-BY8_k6lS.js';
1
+ import { D as DatabaseBackupController, B as BackupCapabilities, a as BackupChainLocation, b as BackupRestorePlan, c as BackupSafeToDeleteOptions } from './database-backup-B7oszQ2n.js';
2
+ import { S as SQLiteDriver, U as SynchronousLevel, an as WorkerHostOptions, I as SQLiteConnection, T as Transaction, ao as WriterContext, M as Migration, W as MigrationResult, X as RollbackResult, ai as QueryHookContext, a3 as ConnectionHookContext, a0 as BeforeSubscribeHook, $ as BeforeSnapshotHook, a8 as HookConfig, aa as MetricsConfig, aj as QueryMetrics, a4 as ConnectionMetrics, a1 as CDCMetrics, D as DatabaseOptions, p as BackupFileReport, y as BackupToDestinationOptions, f as BackupRunReport, O as BackupScheduleOptions, g as BackupChain, o as BackupCycleStatus, z as BackupVerifyResult, k as BackupChainRecord, b as BeforeQueryHook, A as AfterQueryHook } from './types-DPSmjU54.js';
3
+ import { C as ChangeTracker } from './change-tracker-CjRFuZdB.js';
4
4
  import { C as ChangeEvent, d as SubscriptionOptions, S as Subscription, c as SubscriptionBuilder, P as Params, Q as QueryOptions, E as ExecuteResult } from './query-types-p1liOP-b.js';
5
5
  import { H as HLCTimestamp, c as ReplicationChange, C as ConflictResolver, A as ApplyResult, R as ReplicationBatch } from './types-CjhxcjhA.js';
6
- import { A as AppliedMigrationRow, c as BulkLoadOptions, a as BulkLoadResult } from './server-options-C3KHEL8z.js';
7
- import { L as LiveQueryOptions, a as LiveQuery } from './types-qohUrQx6.js';
6
+ import { A as AppliedMigrationRow, c as BulkLoadOptions, a as BulkLoadResult } from './server-options-Bj5iJnjx.js';
7
+ import { L as LiveQueryOptions, a as LiveQuery } from './types-DTO4CYhW.js';
8
8
 
9
9
  /**
10
10
  * Settings a connection pool opens its writer and readers with.
@@ -1,4 +1,4 @@
1
- import { h as BackupChainBase, i as BackupChainChange, g as BackupChain, k as BackupChainRecord, B as BackupDestination, I as SQLiteConnection, P as DriverCapabilities, Q as BackupEngine, p as BackupFileReport, y as BackupToDestinationOptions, f as BackupRunReport, O as BackupScheduleOptions, n as BackupCycleOptions, o as BackupCycleStatus, z as BackupVerifyResult } from './types-_k29or0d.js';
1
+ import { h as BackupChainBase, i as BackupChainChange, g as BackupChain, k as BackupChainRecord, B as BackupDestination, I as SQLiteConnection, P as DriverCapabilities, Q as BackupEngine, p as BackupFileReport, y as BackupToDestinationOptions, f as BackupRunReport, O as BackupScheduleOptions, n as BackupCycleOptions, o as BackupCycleStatus, z as BackupVerifyResult } from './types-DPSmjU54.js';
2
2
 
3
3
  /**
4
4
  * What one runtime supports of the backup operations, so a caller learns
@@ -1,4 +1,4 @@
1
- import { S as SQLiteDriver } from '../types-_k29or0d.js';
1
+ import { S as SQLiteDriver } from '../types-DPSmjU54.js';
2
2
  import '../query-types-p1liOP-b.js';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { S as SQLiteDriver } from '../types-_k29or0d.js';
1
+ import { S as SQLiteDriver } from '../types-DPSmjU54.js';
2
2
  import '../query-types-p1liOP-b.js';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { S as SQLiteDriver } from '../types-_k29or0d.js';
1
+ import { S as SQLiteDriver } from '../types-DPSmjU54.js';
2
2
  import '../query-types-p1liOP-b.js';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { S as SQLiteDriver } from '../types-_k29or0d.js';
1
+ import { S as SQLiteDriver } from '../types-DPSmjU54.js';
2
2
  import '../query-types-p1liOP-b.js';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { S as SQLiteDriver } from '../types-_k29or0d.js';
1
+ import { S as SQLiteDriver } from '../types-DPSmjU54.js';
2
2
  import '../query-types-p1liOP-b.js';
3
3
 
4
4
  /**
@@ -1,5 +1,5 @@
1
1
  import { B as BaselineFileOption } from '../baseline-D93hcIEE.js';
2
- import { M as Migration } from '../types-_k29or0d.js';
2
+ import { M as Migration } from '../types-DPSmjU54.js';
3
3
  import '../query-types-p1liOP-b.js';
4
4
 
5
5
  /**
@@ -1,5 +1,5 @@
1
1
  import { W as WriteConcern, R as ReadConcern, E as ExecuteResult } from './query-types-p1liOP-b.js';
2
- import { B as BulkLoadDurability, a as BulkLoadResult } from './server-options-C3KHEL8z.js';
2
+ import { B as BulkLoadDurability, a as BulkLoadResult } from './server-options-Bj5iJnjx.js';
3
3
 
4
4
  /**
5
5
  * Body of `POST /db/{id}/query`.
@@ -1,4 +1,4 @@
1
- import { L as LiveQueryOptions, a as LiveQuery, b as LiveQueryState } from '../types-qohUrQx6.js';
1
+ import { L as LiveQueryOptions, a as LiveQuery, b as LiveQueryState } from '../types-DTO4CYhW.js';
2
2
  import { O as OperationRef } from '../operation-registry-oiPuSYI6.js';
3
3
  import { P as Params } from '../query-types-p1liOP-b.js';
4
4
 
@@ -1,5 +1,5 @@
1
1
  import { IOptions } from 'etcd3';
2
- import { C as ClusterCoordinator, A as AcquireControllerLeaseInput, a as AcquireControllerLeaseResult, R as RegisterNodeSessionInput, b as CoordinatorNodeSession, S as SetReplicationGroupStateInput, c as ReplicationGroupState, d as ReplicationGroupWatcher, e as CoordinatorWatchDisposer, f as CompareAndAdvancePrimaryTermInput, g as CompareAndAdvancePrimaryTermResult, U as UpdateInSyncSetInput, h as AdmitNodeToInSyncSetInput, i as UpdateNodeMaintenanceInput, P as PromoteEligibleReplicaInput } from '../../types-CMBcFPhb.js';
2
+ import { C as ClusterCoordinator, A as AcquireControllerLeaseInput, a as AcquireControllerLeaseResult, R as RegisterNodeSessionInput, b as CoordinatorNodeSession, S as SetReplicationGroupStateInput, c as ReplicationGroupState, d as ReplicationGroupWatcher, e as CoordinatorWatchDisposer, f as CompareAndAdvancePrimaryTermInput, g as CompareAndAdvancePrimaryTermResult, U as UpdateInSyncSetInput, h as AdmitNodeToInSyncSetInput, i as UpdateNodeMaintenanceInput, P as PromoteEligibleReplicaInput } from '../../types-B0EhgDbr.js';
3
3
 
4
4
  /**
5
5
  * Where the etcd coordinator connects, under which key prefix it stores group state, and how it authenticates.
@@ -1,19 +1,19 @@
1
1
  export { F as FieldMergeResolver, L as LWWResolver, P as PrimaryWinsResolver } from '../primary-wins-B0np8JS3.js';
2
- import { m as HLC, D as Database } from '../database-DHxMvGza.js';
3
- import { r as BackupGroupSource, a1 as ClusterReadEndpointInfo, H as ClusterStatusInfo, I as SQLiteConnection, T as Transaction } from '../types-_k29or0d.js';
4
- import { C as ClusterCoordinator, c as ReplicationGroupState, e as CoordinatorWatchDisposer } from '../types-CMBcFPhb.js';
5
- export { A as AcquireControllerLeaseInput, a as AcquireControllerLeaseResult, h as AdmitNodeToInSyncSetInput, f as CompareAndAdvancePrimaryTermInput, g as CompareAndAdvancePrimaryTermResult, j as CoordinatorCompatibilityMetadata, k as CoordinatorLease, b as CoordinatorNodeSession, l as CoordinatorPrimary, P as PromoteEligibleReplicaInput, R as RegisterNodeSessionInput, d as ReplicationGroupWatcher, S as SetReplicationGroupStateInput, U as UpdateInSyncSetInput, i as UpdateNodeMaintenanceInput } from '../types-CMBcFPhb.js';
6
- import { f as ReplicationStatusInfo } from '../server-options-C3KHEL8z.js';
7
- import { C as CoordinatorRuntimeStatus, g as ReplicationStatus, h as SyncPhase, I as InFlightBatch, P as PeerState, a as ForwardedTransactionResult, b as SyncBatch, c as SyncComplete, d as SyncAck, S as SyncRequest, i as ReplicationConfig, j as SyncState, k as ReplicationErrorEvent, R as ReplicationAck, l as Topology, f as TopologyRole } from '../types-6QmvKWho.js';
8
- export { F as ForwardedTransaction, N as NodeInfo, e as ReplicationTransport, T as TransportConfig } from '../types-6QmvKWho.js';
2
+ import { m as HLC, D as Database } from '../database-BLQvqjsw.js';
3
+ import { r as BackupGroupSource, a2 as ClusterReadEndpointInfo, H as ClusterStatusInfo, I as SQLiteConnection, T as Transaction } from '../types-DPSmjU54.js';
4
+ import { C as ClusterCoordinator, c as ReplicationGroupState, e as CoordinatorWatchDisposer } from '../types-B0EhgDbr.js';
5
+ export { A as AcquireControllerLeaseInput, a as AcquireControllerLeaseResult, h as AdmitNodeToInSyncSetInput, f as CompareAndAdvancePrimaryTermInput, g as CompareAndAdvancePrimaryTermResult, j as CoordinatorCompatibilityMetadata, k as CoordinatorLease, b as CoordinatorNodeSession, l as CoordinatorPrimary, P as PromoteEligibleReplicaInput, R as RegisterNodeSessionInput, d as ReplicationGroupWatcher, S as SetReplicationGroupStateInput, U as UpdateInSyncSetInput, i as UpdateNodeMaintenanceInput } from '../types-B0EhgDbr.js';
6
+ import { f as ReplicationStatusInfo } from '../server-options-Bj5iJnjx.js';
7
+ import { C as CoordinatorRuntimeStatus, g as ReplicationStatus, h as SyncPhase, I as InFlightBatch, P as PeerState, a as ForwardedTransactionResult, b as SyncBatch, c as SyncComplete, d as SyncAck, S as SyncRequest, i as ReplicationConfig, j as SyncState, k as ReplicationErrorEvent, R as ReplicationAck, l as Topology, f as TopologyRole } from '../types-CbjfRwrK.js';
8
+ export { F as ForwardedTransaction, N as NodeInfo, e as ReplicationTransport, T as TransportConfig } from '../types-CbjfRwrK.js';
9
9
  import { EventEmitter } from 'node:events';
10
- import { C as ChangeTracker } from '../change-tracker-BY8_k6lS.js';
10
+ import { C as ChangeTracker } from '../change-tracker-CjRFuZdB.js';
11
11
  import { P as Params, Q as QueryOptions, E as ExecuteResult } from '../query-types-p1liOP-b.js';
12
12
  import { R as ReplicationBatch, C as ConflictResolver, A as ApplyResult, S as SyncTableManifest } from '../types-CjhxcjhA.js';
13
13
  export { a as ConflictContext, b as ConflictResolution, H as HLCTimestamp, c as ReplicationChange } from '../types-CjhxcjhA.js';
14
14
  import { S as SirannonError } from '../errors-Dei4GdBb.js';
15
- import '../database-backup-CAuL6aA-.js';
16
- import '../types-qohUrQx6.js';
15
+ import '../database-backup-B7oszQ2n.js';
16
+ import '../types-DTO4CYhW.js';
17
17
  import '../operation-registry-oiPuSYI6.js';
18
18
 
19
19
  /**
@@ -1,4 +1,4 @@
1
- import { B as BackupDestination, S as SQLiteDriver } from './types-_k29or0d.js';
1
+ import { B as BackupDestination, S as SQLiteDriver } from './types-DPSmjU54.js';
2
2
 
3
3
  /** How far one restore has got, reported after every piece it fetches.
4
4
  * @public
@@ -1,15 +1,15 @@
1
- import { g as BackupChain, k as BackupChainRecord, o as BackupCycleStatus, z as BackupVerifyResult } from '../types-_k29or0d.js';
2
- import { b as BackupRestoreProgress, a as BackupRestoreReport } from '../restore-options-DDOqVqDn.js';
3
- import { a as TransactionStatement, Q as QueryResponse, E as ExecuteResponse, T as TransactionResponse, B as BatchResponse, L as LoadResponse, A as AckResponse } from '../protocol-BM2_usOB.js';
4
- export { b as BatchRequest, c as ErrorResponse, d as ExecuteRequest, e as LoadRequest, f as QueryRequest, g as TransactionRequest, t as toExecuteResponse } from '../protocol-BM2_usOB.js';
5
- import { S as Sirannon } from '../sirannon-BoOZwMkx.js';
6
- import { B as BulkLoadDurability, S as ServerOptions, W as WSHandlerOptions } from '../server-options-C3KHEL8z.js';
1
+ import { g as BackupChain, k as BackupChainRecord, o as BackupCycleStatus, z as BackupVerifyResult } from '../types-DPSmjU54.js';
2
+ import { b as BackupRestoreProgress, a as BackupRestoreReport } from '../restore-options-CksYsH1l.js';
3
+ import { a as TransactionStatement, Q as QueryResponse, E as ExecuteResponse, T as TransactionResponse, B as BatchResponse, L as LoadResponse, A as AckResponse } from '../protocol-HI-nY8DD.js';
4
+ export { b as BatchRequest, c as ErrorResponse, d as ExecuteRequest, e as LoadRequest, f as QueryRequest, g as TransactionRequest, t as toExecuteResponse } from '../protocol-HI-nY8DD.js';
5
+ import { S as Sirannon } from '../sirannon-BPxC5tC2.js';
6
+ import { B as BulkLoadDurability, S as ServerOptions, W as WSHandlerOptions } from '../server-options-Bj5iJnjx.js';
7
7
  import { W as WriteConcern, R as ReadConcern } from '../query-types-p1liOP-b.js';
8
- import '../database-DHxMvGza.js';
9
- import '../database-backup-CAuL6aA-.js';
10
- import '../change-tracker-BY8_k6lS.js';
8
+ import '../database-BLQvqjsw.js';
9
+ import '../database-backup-B7oszQ2n.js';
10
+ import '../change-tracker-CjRFuZdB.js';
11
11
  import '../types-CjhxcjhA.js';
12
- import '../types-qohUrQx6.js';
12
+ import '../types-DTO4CYhW.js';
13
13
  import '../operation-registry-oiPuSYI6.js';
14
14
 
15
15
  /** The answer to a backup a caller triggered, which the server takes on and does not wait for.
@@ -289,15 +289,23 @@ type WSServerMessage = WSSubscribedMessage | WSUnsubscribedMessage | WSChangeMes
289
289
  * @public
290
290
  */
291
291
  type WSLiveOp = {
292
+ /** Which edit this is: `'insert'` for a row added, `'update'` for a row changed in place, `'delete'` for a row removed. */
292
293
  op: 'insert';
294
+ /** Position in the result set the edit applies to, counted from zero. */
293
295
  index: number;
296
+ /** The row that now sits at that position. */
294
297
  row: unknown;
295
298
  } | {
299
+ /** Names this edit as a row changed in place. */
296
300
  op: 'update';
301
+ /** Position of the row that changed. */
297
302
  index: number;
303
+ /** The row as it now reads. */
298
304
  row: unknown;
299
305
  } | {
306
+ /** Names this edit as a row removed. */
300
307
  op: 'delete';
308
+ /** Position the removed row held. */
301
309
  index: number;
302
310
  };
303
311
  /**
@@ -1,6 +1,6 @@
1
1
  import { a as OperationRegistry } from './operation-registry-oiPuSYI6.js';
2
2
  import { R as ReplicationBatch, C as ConflictResolver, A as ApplyResult } from './types-CjhxcjhA.js';
3
- import { N as NodeHealth, T as Transaction, H as ClusterStatusInfo } from './types-_k29or0d.js';
3
+ import { N as NodeHealth, T as Transaction, H as ClusterStatusInfo } from './types-DPSmjU54.js';
4
4
  import { P as Params, Q as QueryOptions, E as ExecuteResult } from './query-types-p1liOP-b.js';
5
5
 
6
6
  /**
@@ -1,5 +1,5 @@
1
- import { H as HookRegistry, D as Database, a as HookDispose } from './database-DHxMvGza.js';
2
- import { a as SirannonOptions, S as SQLiteDriver, D as DatabaseOptions, M as Migration, b as BeforeQueryHook, A as AfterQueryHook, c as BeforeConnectHook, d as DatabaseOpenHook, e as DatabaseCloseHook } from './types-_k29or0d.js';
1
+ import { H as HookRegistry, D as Database, a as HookDispose } from './database-BLQvqjsw.js';
2
+ import { a as SirannonOptions, S as SQLiteDriver, D as DatabaseOptions, M as Migration, b as BeforeQueryHook, A as AfterQueryHook, c as BeforeConnectHook, d as DatabaseOpenHook, e as DatabaseCloseHook } from './types-DPSmjU54.js';
3
3
 
4
4
  /** What one database taken out of service produced.
5
5
  * @internal
@@ -1,12 +1,12 @@
1
1
  import { BinaryWriter, BinaryReader } from '@bufbuild/protobuf/wire';
2
2
  import { Client, ClientDuplexStream, CallOptions, Metadata, ServiceError, ClientUnaryCall, ChannelCredentials, ClientOptions, ServerDuplexStream, Server } from '@grpc/grpc-js';
3
3
  import { HealthImplementation } from 'grpc-health-check';
4
- import { R as ReplicationAck, F as ForwardedTransaction, a as ForwardedTransactionResult, N as NodeInfo, S as SyncRequest, b as SyncBatch, c as SyncComplete, d as SyncAck, e as ReplicationTransport, f as TopologyRole, T as TransportConfig } from '../types-6QmvKWho.js';
4
+ import { R as ReplicationAck, F as ForwardedTransaction, a as ForwardedTransactionResult, N as NodeInfo, S as SyncRequest, b as SyncBatch, c as SyncComplete, d as SyncAck, e as ReplicationTransport, f as TopologyRole, T as TransportConfig } from '../types-CbjfRwrK.js';
5
5
  import { R as ReplicationBatch } from '../types-CjhxcjhA.js';
6
- import '../change-tracker-BY8_k6lS.js';
7
- import '../types-_k29or0d.js';
6
+ import '../change-tracker-CjRFuZdB.js';
7
+ import '../types-DPSmjU54.js';
8
8
  import '../query-types-p1liOP-b.js';
9
- import '../types-CMBcFPhb.js';
9
+ import '../types-B0EhgDbr.js';
10
10
 
11
11
  interface ColumnValue {
12
12
  nullValue?: boolean | undefined;
@@ -1,9 +1,9 @@
1
- import { R as ReplicationAck, F as ForwardedTransaction, a as ForwardedTransactionResult, S as SyncRequest, b as SyncBatch, c as SyncComplete, d as SyncAck, N as NodeInfo, e as ReplicationTransport, T as TransportConfig } from '../types-6QmvKWho.js';
1
+ import { R as ReplicationAck, F as ForwardedTransaction, a as ForwardedTransactionResult, S as SyncRequest, b as SyncBatch, c as SyncComplete, d as SyncAck, N as NodeInfo, e as ReplicationTransport, T as TransportConfig } from '../types-CbjfRwrK.js';
2
2
  import { R as ReplicationBatch } from '../types-CjhxcjhA.js';
3
- import '../change-tracker-BY8_k6lS.js';
4
- import '../types-_k29or0d.js';
3
+ import '../change-tracker-CjRFuZdB.js';
4
+ import '../types-DPSmjU54.js';
5
5
  import '../query-types-p1liOP-b.js';
6
- import '../types-CMBcFPhb.js';
6
+ import '../types-B0EhgDbr.js';
7
7
 
8
8
  type BatchHandler = (batch: ReplicationBatch, fromPeerId: string) => Promise<void>;
9
9
  type AckHandler = (ack: ReplicationAck, fromPeerId: string) => void;
@@ -54,10 +54,14 @@ interface AcquireControllerLeaseInput {
54
54
  * @public
55
55
  */
56
56
  type AcquireControllerLeaseResult = {
57
+ /** True where this bid won the lease. */
57
58
  acquired: true;
59
+ /** The lease this bid won, with its holder, term, and expiry. */
58
60
  lease: CoordinatorLease;
59
61
  } | {
62
+ /** False where another node already holds the lease. */
60
63
  acquired: false;
64
+ /** The lease its current holder owns, or null where the coordinator names no holder. */
61
65
  lease: CoordinatorLease | null;
62
66
  };
63
67
  /**
@@ -1,7 +1,7 @@
1
- import { C as ChangeTracker } from './change-tracker-BY8_k6lS.js';
2
- import { I as SQLiteConnection, N as NodeHealth } from './types-_k29or0d.js';
1
+ import { C as ChangeTracker } from './change-tracker-CjRFuZdB.js';
2
+ import { I as SQLiteConnection, N as NodeHealth } from './types-DPSmjU54.js';
3
3
  import { S as SyncTableManifest, R as ReplicationBatch, C as ConflictResolver } from './types-CjhxcjhA.js';
4
- import { C as ClusterCoordinator, j as CoordinatorCompatibilityMetadata, c as ReplicationGroupState } from './types-CMBcFPhb.js';
4
+ import { C as ClusterCoordinator, j as CoordinatorCompatibilityMetadata, c as ReplicationGroupState } from './types-B0EhgDbr.js';
5
5
 
6
6
  /**
7
7
  * What one node records about a peer it is connected to.
@@ -793,12 +793,17 @@ interface QueryHookContext {
793
793
  * @public
794
794
  */
795
795
  type BeforeQueryHook = (ctx: QueryHookContext) => void | Promise<void>;
796
- /** Hook invoked after a query is executed.
796
+ /** Context passed to the after-query hook, which is the query context plus how long the statement took.
797
797
  * @public
798
798
  */
799
- type AfterQueryHook = (ctx: QueryHookContext & {
799
+ interface AfterQueryHookContext extends QueryHookContext {
800
+ /** Milliseconds the statement took, measured from the moment it was sent to the moment it returned. */
800
801
  durationMs: number;
801
- }) => void | Promise<void>;
802
+ }
803
+ /** Hook invoked after a query is executed.
804
+ * @public
805
+ */
806
+ type AfterQueryHook = (ctx: AfterQueryHookContext) => void | Promise<void>;
802
807
  /** Context passed to connection hooks.
803
808
  * @public
804
809
  */
@@ -1510,4 +1515,4 @@ interface SQLiteDriver {
1510
1515
  resolveExtensionPath?(extensionPath: string): string;
1511
1516
  }
1512
1517
 
1513
- export { type BeforeSubscribeHook as $, type AfterQueryHook as A, type BackupDestination as B, DEFAULT_CHAIN_NAME as C, type DatabaseOptions as D, chainLogName as E, readBackupChains as F, verifyBackupRecord as G, type ClusterStatusInfo as H, type SQLiteConnection as I, type BackupFileCopy as J, type BackupRunRequest as K, type BackupScheduleRequest as L, type Migration as M, type NodeHealth as N, type BackupScheduleOptions as O, type DriverCapabilities as P, type BackupEngine as Q, type RunExclusive as R, type SQLiteDriver as S, Transaction as T, type SynchronousLevel as U, type LifecycleConfig as V, type MigrationResult as W, type RollbackResult as X, type AppliedMigrationEntry as Y, type BatchSummary as Z, type BeforeSnapshotHook as _, type SirannonOptions as a, type CDCMetrics as a0, type ClusterReadEndpointInfo as a1, type ConnectionHookContext as a2, type ConnectionMetrics as a3, type DatabaseCopyRequest as a4, type DatabaseCopyStep as a5, type DriverWorkerEntry as a6, type HookConfig as a7, MIGRATION_NAME_RE as a8, type MetricsConfig as a9, type MigrationBaseline as aa, type MigrationSource as ab, NODE_HEALTH_REASONS as ac, NODE_HEALTH_STATES as ad, type NodeHealthReason as ae, type NodeHealthState as af, type OpenOptions as ag, type QueryHookContext as ah, type QueryMetrics as ai, type RunResult as aj, type SQLiteStatement as ak, type WriterWorkerOptions as al, type WorkerHostOptions as am, type WriterContext as an, type BeforeQueryHook as b, type BeforeConnectHook as c, type DatabaseOpenHook as d, type DatabaseCloseHook as e, type BackupRunReport as f, type BackupChain as g, type BackupChainBase as h, type BackupChainChange as i, type BackupChainPosition as j, type BackupChainRecord as k, BackupCycle as l, type BackupCycleError as m, type BackupCycleOptions as n, type BackupCycleStatus as o, type BackupFileReport as p, type BackupGroupMembership as q, type BackupGroupSource as r, type BackupLogPosition as s, type BackupNodePreference as t, type BackupPiece as u, type BackupProgress as v, type BackupSkip as w, type BackupSkipReason as x, type BackupToDestinationOptions as y, type BackupVerifyResult as z };
1518
+ export { type BeforeSnapshotHook as $, type AfterQueryHook as A, type BackupDestination as B, DEFAULT_CHAIN_NAME as C, type DatabaseOptions as D, chainLogName as E, readBackupChains as F, verifyBackupRecord as G, type ClusterStatusInfo as H, type SQLiteConnection as I, type BackupFileCopy as J, type BackupRunRequest as K, type BackupScheduleRequest as L, type Migration as M, type NodeHealth as N, type BackupScheduleOptions as O, type DriverCapabilities as P, type BackupEngine as Q, type RunExclusive as R, type SQLiteDriver as S, Transaction as T, type SynchronousLevel as U, type LifecycleConfig as V, type MigrationResult as W, type RollbackResult as X, type AfterQueryHookContext as Y, type AppliedMigrationEntry as Z, type BatchSummary as _, type SirannonOptions as a, type BeforeSubscribeHook as a0, type CDCMetrics as a1, type ClusterReadEndpointInfo as a2, type ConnectionHookContext as a3, type ConnectionMetrics as a4, type DatabaseCopyRequest as a5, type DatabaseCopyStep as a6, type DriverWorkerEntry as a7, type HookConfig as a8, MIGRATION_NAME_RE as a9, type MetricsConfig as aa, type MigrationBaseline as ab, type MigrationSource as ac, NODE_HEALTH_REASONS as ad, NODE_HEALTH_STATES as ae, type NodeHealthReason as af, type NodeHealthState as ag, type OpenOptions as ah, type QueryHookContext as ai, type QueryMetrics as aj, type RunResult as ak, type SQLiteStatement as al, type WriterWorkerOptions as am, type WorkerHostOptions as an, type WriterContext as ao, type BeforeQueryHook as b, type BeforeConnectHook as c, type DatabaseOpenHook as d, type DatabaseCloseHook as e, type BackupRunReport as f, type BackupChain as g, type BackupChainBase as h, type BackupChainChange as i, type BackupChainPosition as j, type BackupChainRecord as k, BackupCycle as l, type BackupCycleError as m, type BackupCycleOptions as n, type BackupCycleStatus as o, type BackupFileReport as p, type BackupGroupMembership as q, type BackupGroupSource as r, type BackupLogPosition as s, type BackupNodePreference as t, type BackupPiece as u, type BackupProgress as v, type BackupSkip as w, type BackupSkipReason as x, type BackupToDestinationOptions as y, type BackupVerifyResult as z };
@@ -2,41 +2,60 @@
2
2
  * @public
3
3
  */
4
4
  type LiveQueryState<T> = {
5
+ /** Where the query stands: `'pending'` while its first read is in flight, `'ready'` once it holds rows, `'error'` after a failure. */
5
6
  status: 'pending';
6
7
  } | {
8
+ /** Names this state as one holding rows. */
7
9
  status: 'ready';
10
+ /** The rows the query holds, in the order the read returned them. */
8
11
  rows: readonly T[];
12
+ /** True while the query re-reads, and the rows above stay readable throughout. */
9
13
  revalidating: boolean;
10
14
  } | {
15
+ /** Names this state as one holding the failure the query met. */
11
16
  status: 'error';
17
+ /** What the read or the subscription behind it threw. */
12
18
  error: Error;
13
19
  };
14
20
  /** One change to a live query's result set, as a position and the row at it.
15
21
  * @public
16
22
  */
17
23
  type ResultOp<T> = {
24
+ /** Which edit this is: `'insert'` for a row added, `'update'` for a row changed in place, `'delete'` for a row removed. */
18
25
  op: 'insert';
26
+ /** Position in the result set the edit applies to, counted from zero. */
19
27
  index: number;
28
+ /** The row that now sits at that position. */
20
29
  row: T;
21
30
  } | {
31
+ /** Names this edit as a row changed in place. */
22
32
  op: 'update';
33
+ /** Position of the row that changed. */
23
34
  index: number;
35
+ /** The row as it now reads. */
24
36
  row: T;
25
37
  } | {
38
+ /** Names this edit as a row removed. */
26
39
  op: 'delete';
40
+ /** Position the removed row held. */
27
41
  index: number;
28
42
  };
29
43
  /** What a live query tells its listeners: the rows replaced, edited in place, being re-read, or failed.
30
44
  * @public
31
45
  */
32
46
  type LiveUpdate<T> = {
47
+ /** Which update this is: `'rows'` for a replaced result set, `'ops'` for edits to apply, `'revalidating'` while the query re-reads, `'error'` after a failure. */
33
48
  kind: 'rows';
34
49
  } | {
50
+ /** Names this update as one carrying edits. */
35
51
  kind: 'ops';
52
+ /** The edits that move the result set to its new state, in the order to apply them. */
36
53
  ops: readonly ResultOp<T>[];
37
54
  } | {
55
+ /** Names this update as notice that the query has started re-reading. */
38
56
  kind: 'revalidating';
39
57
  } | {
58
+ /** Names this update as notice that the query failed. */
40
59
  kind: 'error';
41
60
  };
42
61
  /** A registered read that keeps its rows current as the underlying tables change.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@delali/sirannon-db",
3
3
  "type": "module",
4
- "version": "0.3.2",
4
+ "version": "0.3.3",
5
5
  "description": "A production-grade library that turns SQLite databases into a networked data layer with real-time subscriptions.",
6
6
  "author": "Delali (https://sondelali.com)",
7
7
  "license": "Apache-2.0",
@@ -210,11 +210,11 @@
210
210
  "vitest": "4.0.18"
211
211
  },
212
212
  "optionalDependencies": {
213
- "@delali/sirannon-vfs-darwin-arm64": "0.3.2",
214
- "@delali/sirannon-vfs-darwin-x64": "0.3.2",
215
- "@delali/sirannon-vfs-linux-arm64": "0.3.2",
216
- "@delali/sirannon-vfs-linux-x64": "0.3.2",
217
- "@delali/sirannon-vfs-win32-arm64": "0.3.2",
218
- "@delali/sirannon-vfs-win32-x64": "0.3.2"
213
+ "@delali/sirannon-vfs-darwin-arm64": "0.3.3",
214
+ "@delali/sirannon-vfs-darwin-x64": "0.3.3",
215
+ "@delali/sirannon-vfs-linux-arm64": "0.3.3",
216
+ "@delali/sirannon-vfs-linux-x64": "0.3.3",
217
+ "@delali/sirannon-vfs-win32-arm64": "0.3.3",
218
+ "@delali/sirannon-vfs-win32-x64": "0.3.3"
219
219
  }
220
220
  }