@supalive/core 1.2.1 → 1.3.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 (55) hide show
  1. package/dist/index-4Nis7Wnk.d.ts +1973 -0
  2. package/dist/index-4Nis7Wnk.d.ts.map +1 -0
  3. package/dist/index-Ca58CrWX.d.ts +2103 -0
  4. package/dist/index-Ca58CrWX.d.ts.map +1 -0
  5. package/dist/index-DDK9ZIYb.d.ts +2103 -0
  6. package/dist/index-DDK9ZIYb.d.ts.map +1 -0
  7. package/dist/index-Oz3eyddt.d.ts +1974 -0
  8. package/dist/index-Oz3eyddt.d.ts.map +1 -0
  9. package/dist/mysql-D0pFocWL.d.ts +109 -0
  10. package/dist/mysql-D0pFocWL.d.ts.map +1 -0
  11. package/dist/mysql-DF-dZHi7.d.ts +109 -0
  12. package/dist/mysql-DF-dZHi7.d.ts.map +1 -0
  13. package/dist/mysql-QWBVXBjM.d.ts +109 -0
  14. package/dist/mysql-QWBVXBjM.d.ts.map +1 -0
  15. package/dist/mysql-fECZYP_m.d.ts +109 -0
  16. package/dist/mysql-fECZYP_m.d.ts.map +1 -0
  17. package/dist/object-storage-4t7JvpuK.d.ts +67 -0
  18. package/dist/object-storage-4t7JvpuK.d.ts.map +1 -0
  19. package/dist/postgres-C1qWlB--.d.ts +113 -0
  20. package/dist/postgres-C1qWlB--.d.ts.map +1 -0
  21. package/dist/postgres-CKtJ62S4.d.ts +113 -0
  22. package/dist/postgres-CKtJ62S4.d.ts.map +1 -0
  23. package/dist/postgres-DdqpjjYF.d.ts +113 -0
  24. package/dist/postgres-DdqpjjYF.d.ts.map +1 -0
  25. package/dist/postgres-DhCgxVOr.d.ts +113 -0
  26. package/dist/postgres-DhCgxVOr.d.ts.map +1 -0
  27. package/dist/procedure-Ze1GE-N9.js.map +1 -1
  28. package/dist/src/client/index.d.ts +1 -1
  29. package/dist/src/client/index.js +7 -1
  30. package/dist/src/client/index.js.map +1 -1
  31. package/dist/src/exports/mysql.d.ts +1 -1
  32. package/dist/src/exports/postgres.d.ts +1 -1
  33. package/dist/src/exports/procedure.d.ts +1 -1
  34. package/dist/src/exports/schema-sql.d.ts +1 -1
  35. package/dist/src/exports/schema-sql.d.ts.map +1 -1
  36. package/dist/src/exports/schema-sql.js +8 -1
  37. package/dist/src/exports/schema-sql.js.map +1 -1
  38. package/dist/src/exports/server.d.ts +9 -7
  39. package/dist/src/exports/server.d.ts.map +1 -1
  40. package/dist/src/exports/server.js +14 -7
  41. package/dist/src/exports/server.js.map +1 -1
  42. package/dist/src/exports/storage.d.ts +56 -0
  43. package/dist/src/exports/storage.d.ts.map +1 -0
  44. package/dist/src/exports/storage.js +62 -0
  45. package/dist/src/exports/storage.js.map +1 -0
  46. package/dist/src/exports/types.d.ts +2 -2
  47. package/dist/types_server-AN8OiTEx.d.ts +302 -0
  48. package/dist/types_server-AN8OiTEx.d.ts.map +1 -0
  49. package/dist/types_server-C9owgeSs.d.ts +302 -0
  50. package/dist/types_server-C9owgeSs.d.ts.map +1 -0
  51. package/dist/types_server-D5JDD_Dp.d.ts +430 -0
  52. package/dist/types_server-D5JDD_Dp.d.ts.map +1 -0
  53. package/dist/types_server-Dxx_Xx86.d.ts +430 -0
  54. package/dist/types_server-Dxx_Xx86.d.ts.map +1 -0
  55. package/package.json +15 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-Oz3eyddt.d.ts","names":[],"sources":["../src/db/types_db.ts","../src/server/subscription-manager-types.ts","../src/db/cache.ts","../src/db/db.ts","../src/db/schema.ts","../src/db/query.ts","../src/db/context.ts","../src/db/query_definition.ts","../src/db/realtime_db.ts","../src/router/procedure.ts","../src/router/router.ts","../src/client/ws_client_manager.ts","../src/db/types_client_rpc.ts","../src/client/client.ts","../src/client/caller_client.ts"],"mappings":"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"}
@@ -0,0 +1,109 @@
1
+ import { An as DbType, Dn as CoreInitLockCtx, Fn as SqlBuilder, Fr as ReadEntry, In as TxDatabase, Ln as CacheLayer, Mn as PooledClient, Nn as PreparedQueries, On as Database, Rr as WriteEntry, ir as CommitLogEntry, jn as LazyCommitTsParam, kn as DbQueryResult } from "./index-4Nis7Wnk.js";
2
+ import { Pool, PoolOptions } from "mysql2/promise";
3
+ import { Logger } from "pino";
4
+
5
+ //#region src/db/mysql.d.ts
6
+ /**
7
+ * mysql2's PoolOptions does not have a per-statement timeout field; we
8
+ * carry our own. Set 0 to disable.
9
+ */
10
+ type MySqlPoolOptions = PoolOptions & {
11
+ queryTimeoutMs?: number;
12
+ };
13
+ declare class MySqlDatabase implements Database {
14
+ constructor(logger: Logger, config: MySqlPoolOptions, pool?: Pool | undefined);
15
+ private logger;
16
+ config: PoolOptions;
17
+ protected queryTimeoutMs: number;
18
+ private pool;
19
+ readonly dbType: DbType;
20
+ readonly sqlBuilder: SqlBuilder;
21
+ columnTypes: Map<string, Map<string, string>>;
22
+ protected sqlCache: Map<string, string>;
23
+ /**
24
+ * Fetches actual column types from MySQL for `table` and returns a
25
+ * map of DB column name → MySQL type string (as produced by `COLUMN_TYPE`,
26
+ * e.g. `bigint`, `integer`, `varchar(32)`, `text`, `json`).
27
+ * No caching here — see {@link getColumnTypes} for the cached path.
28
+ */
29
+ loadColumnTypesFromMySql(table: string): Promise<Map<string, string>>;
30
+ /**
31
+ * Synchronous column-type lookup. The apply path calls this on every
32
+ * batched write, so it can't await — populate the cache via
33
+ * {@link bootstrapColumnTypes} at server start. Throws if `table` is
34
+ * missing (programmer error / bootstrap skipped).
35
+ */
36
+ getColumnTypes(table: string): Map<string, string> | null;
37
+ /**
38
+ * Eagerly load column types into the in-memory cache. With a Redis
39
+ * client supplied, attempts the cache key first and falls through to
40
+ * MySQL on miss (writing the result back to Redis). This is the
41
+ * "one server queries MySQL, the rest read from Redis" pattern for cold
42
+ * starts in a multi-instance deploy. Without Redis, always queries MySQL.
43
+ *
44
+ * Pass `tables` to limit the load to a specific list; otherwise every
45
+ * user table in the connected database is loaded.
46
+ *
47
+ * The Redis cache key should encode whatever invalidates types in your
48
+ * environment (typically a schema version / deploy version). The
49
+ * subscriber in supalive-server.ts is expected to publish a reload
50
+ * signal after migrations and invoke {@link invalidateColumnTypes}.
51
+ */
52
+ bootstrapColumnTypes(opts: {
53
+ redis?: CacheLayer;
54
+ cacheKey: string;
55
+ tables?: string[];
56
+ }): Promise<void>;
57
+ /**
58
+ * Invalidate cached types (and dependent SQL) for `table`, or the entire
59
+ * cache if `table` is omitted. The Redis-pubsub reload signal in
60
+ * supalive-server.ts is expected to call this on schema changes.
61
+ */
62
+ invalidateColumnTypes(table?: string): void;
63
+ /** Replace this instance's caches with shared references from a parent.
64
+ * Used by getTransactionClient so types loaded once at startup are
65
+ * visible inside transactions. */
66
+ adoptCaches(columnTypes: Map<string, Map<string, string>>, sqlCache: Map<string, string>): void;
67
+ /** Enumerate the user-defined tables in the connected database for mysql — used
68
+ * by bootstrapColumnTypes() when no explicit list is provided. */
69
+ private listUserTables;
70
+ getCoreVersion(): Promise<bigint>;
71
+ coreMigrationStatements(toVersion: bigint): string[];
72
+ withCoreInitLock(fn: (ctx: CoreInitLockCtx) => Promise<void>): Promise<void>;
73
+ query<T = any>(sql: string, params?: unknown[]): Promise<DbQueryResult<T>>;
74
+ getClient(): Promise<PooledClient>;
75
+ getTransactionClient(): Promise<TxDatabase>;
76
+ getLatestSnapshotTimestamp(): Promise<bigint>;
77
+ updateLatestSnapshotTimestamp(commitTs: bigint): Promise<void>;
78
+ getMinSnapshotTimestamp(): Promise<bigint>;
79
+ updateMinSnapshotTimestamp(ts: bigint): Promise<void>;
80
+ getNextTimestamp(): Promise<bigint>;
81
+ attachPrevDataToWriteSet(writeSet: WriteEntry[], readSet: ReadEntry[]): Promise<void>;
82
+ prepareCommitWrites(readSet: ReadEntry[], writeSet: WriteEntry[], commitTs: LazyCommitTsParam): Promise<PreparedQueries>;
83
+ private mysqlPrepareBatchWrites;
84
+ private mysqlPrepareInsertBatch;
85
+ private mysqlPrepareUpdateSingle;
86
+ private mysqlPrepareDeleteBatch;
87
+ private mysqlPrepareCommitLogs;
88
+ /**
89
+ * Point-only OCC check. For each genuine point read, compare the row's
90
+ * current commit_ts against the value captured at read time. A `null`
91
+ * expectedCommitTs means "row didn't exist when we read"; any row found
92
+ * now is a conflict. Reads whose row is being written in this same txn
93
+ * are skipped — the CAS UPDATE/DELETE already validated those.
94
+ */
95
+ private mysqlPrepareValidatePointReadsByCommitTs;
96
+ commitWrites(beginTs: bigint, queries: PreparedQueries, commitTs: bigint): Promise<{
97
+ success: boolean;
98
+ }>;
99
+ private mysqlApplyWrites;
100
+ private validatePointReadsByCommitTs;
101
+ pruneCommitLogsBefore(ts: bigint): Promise<bigint>;
102
+ getMinCommitLogTs(): Promise<bigint | null>;
103
+ getCommitLogsBetweenTs(beginTs: bigint, endTs: bigint, tableIds: Uint8Array[]): Promise<CommitLogEntry[]>;
104
+ getCommitLogsSinceTs(sinceTs: bigint, excludeTs: bigint, tableIds: Uint8Array[]): Promise<CommitLogEntry[]>;
105
+ close(): Promise<void>;
106
+ }
107
+ //#endregion
108
+ export { MySqlDatabase as t };
109
+ //# sourceMappingURL=mysql-D0pFocWL.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mysql-D0pFocWL.d.ts","names":[],"sources":["../src/db/mysql.ts"],"mappings":";;;;;;;;;KAwCY,gBAAA,GAAmB,WAAW;EAAK,cAAc;AAAA;AAAA,cAEhD,aAAA,YAAyB,QAAA;cAElC,MAAA,EAAQ,MAAA,EACR,MAAA,EAAQ,gBAAA,EACR,IAAA,GAAM,IAAA;EAAA,QAaA,MAAA;EACD,MAAA,EAAQ,WAAA;EAAA,UACL,cAAA;EAAA,QACF,IAAA;EAAA,SACC,MAAA,EAAQ,MAAA;EAAA,SACR,UAAA,EAAY,UAAA;EAMd,WAAA,EAAa,GAAA,SAAY,GAAA;EAAA,UAGtB,QAAA,EAAU,GAAA;EAwII;;;;;;EAhIlB,wBAAA,CAAyB,KAAA,WAAgB,OAAA,CAAQ,GAAA;EA0M5B;;;;;;EAlL3B,cAAA,CAAe,KAAA,WAAgB,GAAA;EA+Me;;;;;;;;;;;;;;;EAvLxC,oBAAA,CAAqB,IAAA;IACzB,KAAA,GAAQ,UAAA;IACR,QAAA;IACA,MAAA;EAAA,IACE,OAAA;EAgsBW;;;;;EAtpBf,qBAAA,CAAsB,KAAA;EAnIZ;;;EAkJV,WAAA,CACE,WAAA,EAAa,GAAA,SAAY,GAAA,mBACzB,QAAA,EAAU,GAAA;EAlJJ;;EAAA,QA0JM,cAAA;EASR,cAAA,IAAkB,OAAA;EAYxB,uBAAA,CAAwB,SAAA;EAWlB,gBAAA,CAAiB,EAAA,GAAK,GAAA,EAAK,eAAA,KAAoB,OAAA,SAAgB,OAAA;EAqC/D,KAAA,UAAe,GAAA,UAAa,MAAA,eAAyB,OAAA,CAAQ,aAAA,CAAc,CAAA;EAc3E,SAAA,IAAa,OAAA,CAAQ,YAAA;EAKrB,oBAAA,IAAwB,OAAA,CAAQ,UAAA;EAOhC,0BAAA,IAA8B,OAAA;EAK9B,6BAAA,CAA8B,QAAA,WAAmB,OAAA;EAOjD,uBAAA,IAA2B,OAAA;EAK3B,0BAAA,CAA2B,EAAA,WAAa,OAAA;EAOxC,gBAAA,IAAoB,OAAA;EAuBpB,wBAAA,CAAyB,QAAA,EAAU,UAAA,IAAc,OAAA,EAAS,SAAA,KAAc,OAAA;EA6DxE,mBAAA,CACJ,OAAA,EAAS,SAAA,IACT,QAAA,EAAU,UAAA,IACV,QAAA,EAAU,iBAAA,GACT,OAAA,CAAQ,eAAA;EAAA,QAmBG,uBAAA;EAAA,QAyBA,uBAAA;EAAA,QA2CA,wBAAA;EAAA,QAiCA,uBAAA;EAAA,QA4BA,sBAAA;EAlcC;;;;;;;EAAA,QA4eP,wCAAA;EAgDF,YAAA,CACJ,OAAA,UACA,OAAA,EAAS,eAAA,EACT,QAAA,WACC,OAAA;IAAU,OAAA;EAAA;EAAA,QAqCC,gBAAA;EAAA,QAyDA,4BAAA;EAwCR,qBAAA,CAAsB,EAAA,WAAa,OAAA;EAQnC,iBAAA,IAAqB,OAAA;EAQrB,sBAAA,CAAuB,OAAA,UAAiB,KAAA,UAAe,QAAA,EAAU,UAAA,KAAe,OAAA,CAAQ,cAAA;EAmBxF,oBAAA,CAAqB,OAAA,UAAiB,SAAA,UAAmB,QAAA,EAAU,UAAA,KAAe,OAAA,CAAQ,cAAA;EAmB1F,KAAA,IAAS,OAAA;AAAA"}
@@ -0,0 +1,109 @@
1
+ import { Bn as DbType, Gn as SqlBuilder, Gr as ReadEntry, Hn as PooledClient, Jr as WriteEntry, Kn as TxDatabase, Ln as CoreInitLockCtx, Rn as Database, Un as PreparedQueries, Vn as LazyCommitTsParam, mr as CommitLogEntry, qn as CacheLayer, zn as DbQueryResult } from "./index-DDK9ZIYb.js";
2
+ import { Pool, PoolOptions } from "mysql2/promise";
3
+ import { Logger } from "pino";
4
+
5
+ //#region src/db/mysql.d.ts
6
+ /**
7
+ * mysql2's PoolOptions does not have a per-statement timeout field; we
8
+ * carry our own. Set 0 to disable.
9
+ */
10
+ type MySqlPoolOptions = PoolOptions & {
11
+ queryTimeoutMs?: number;
12
+ };
13
+ declare class MySqlDatabase implements Database {
14
+ constructor(logger: Logger, config: MySqlPoolOptions, pool?: Pool | undefined);
15
+ private logger;
16
+ config: PoolOptions;
17
+ protected queryTimeoutMs: number;
18
+ private pool;
19
+ readonly dbType: DbType;
20
+ readonly sqlBuilder: SqlBuilder;
21
+ columnTypes: Map<string, Map<string, string>>;
22
+ protected sqlCache: Map<string, string>;
23
+ /**
24
+ * Fetches actual column types from MySQL for `table` and returns a
25
+ * map of DB column name → MySQL type string (as produced by `COLUMN_TYPE`,
26
+ * e.g. `bigint`, `integer`, `varchar(32)`, `text`, `json`).
27
+ * No caching here — see {@link getColumnTypes} for the cached path.
28
+ */
29
+ loadColumnTypesFromMySql(table: string): Promise<Map<string, string>>;
30
+ /**
31
+ * Synchronous column-type lookup. The apply path calls this on every
32
+ * batched write, so it can't await — populate the cache via
33
+ * {@link bootstrapColumnTypes} at server start. Throws if `table` is
34
+ * missing (programmer error / bootstrap skipped).
35
+ */
36
+ getColumnTypes(table: string): Map<string, string> | null;
37
+ /**
38
+ * Eagerly load column types into the in-memory cache. With a Redis
39
+ * client supplied, attempts the cache key first and falls through to
40
+ * MySQL on miss (writing the result back to Redis). This is the
41
+ * "one server queries MySQL, the rest read from Redis" pattern for cold
42
+ * starts in a multi-instance deploy. Without Redis, always queries MySQL.
43
+ *
44
+ * Pass `tables` to limit the load to a specific list; otherwise every
45
+ * user table in the connected database is loaded.
46
+ *
47
+ * The Redis cache key should encode whatever invalidates types in your
48
+ * environment (typically a schema version / deploy version). The
49
+ * subscriber in supalive-server.ts is expected to publish a reload
50
+ * signal after migrations and invoke {@link invalidateColumnTypes}.
51
+ */
52
+ bootstrapColumnTypes(opts: {
53
+ redis?: CacheLayer;
54
+ cacheKey: string;
55
+ tables?: string[];
56
+ }): Promise<void>;
57
+ /**
58
+ * Invalidate cached types (and dependent SQL) for `table`, or the entire
59
+ * cache if `table` is omitted. The Redis-pubsub reload signal in
60
+ * supalive-server.ts is expected to call this on schema changes.
61
+ */
62
+ invalidateColumnTypes(table?: string): void;
63
+ /** Replace this instance's caches with shared references from a parent.
64
+ * Used by getTransactionClient so types loaded once at startup are
65
+ * visible inside transactions. */
66
+ adoptCaches(columnTypes: Map<string, Map<string, string>>, sqlCache: Map<string, string>): void;
67
+ /** Enumerate the user-defined tables in the connected database for mysql — used
68
+ * by bootstrapColumnTypes() when no explicit list is provided. */
69
+ private listUserTables;
70
+ getCoreVersion(): Promise<bigint>;
71
+ coreMigrationStatements(toVersion: bigint): string[];
72
+ withCoreInitLock(fn: (ctx: CoreInitLockCtx) => Promise<void>): Promise<void>;
73
+ query<T = any>(sql: string, params?: unknown[]): Promise<DbQueryResult<T>>;
74
+ getClient(): Promise<PooledClient>;
75
+ getTransactionClient(): Promise<TxDatabase>;
76
+ getLatestSnapshotTimestamp(): Promise<bigint>;
77
+ updateLatestSnapshotTimestamp(commitTs: bigint): Promise<void>;
78
+ getMinSnapshotTimestamp(): Promise<bigint>;
79
+ updateMinSnapshotTimestamp(ts: bigint): Promise<void>;
80
+ getNextTimestamp(): Promise<bigint>;
81
+ attachPrevDataToWriteSet(writeSet: WriteEntry[], readSet: ReadEntry[]): Promise<void>;
82
+ prepareCommitWrites(readSet: ReadEntry[], writeSet: WriteEntry[], commitTs: LazyCommitTsParam): Promise<PreparedQueries>;
83
+ private mysqlPrepareBatchWrites;
84
+ private mysqlPrepareInsertBatch;
85
+ private mysqlPrepareUpdateSingle;
86
+ private mysqlPrepareDeleteBatch;
87
+ private mysqlPrepareCommitLogs;
88
+ /**
89
+ * Point-only OCC check. For each genuine point read, compare the row's
90
+ * current commit_ts against the value captured at read time. A `null`
91
+ * expectedCommitTs means "row didn't exist when we read"; any row found
92
+ * now is a conflict. Reads whose row is being written in this same txn
93
+ * are skipped — the CAS UPDATE/DELETE already validated those.
94
+ */
95
+ private mysqlPrepareValidatePointReadsByCommitTs;
96
+ commitWrites(beginTs: bigint, queries: PreparedQueries, commitTs: bigint): Promise<{
97
+ success: boolean;
98
+ }>;
99
+ private mysqlApplyWrites;
100
+ private validatePointReadsByCommitTs;
101
+ pruneCommitLogsBefore(ts: bigint): Promise<bigint>;
102
+ getMinCommitLogTs(): Promise<bigint | null>;
103
+ getCommitLogsBetweenTs(beginTs: bigint, endTs: bigint, tableIds: Uint8Array[]): Promise<CommitLogEntry[]>;
104
+ getCommitLogsSinceTs(sinceTs: bigint, excludeTs: bigint, tableIds: Uint8Array[]): Promise<CommitLogEntry[]>;
105
+ close(): Promise<void>;
106
+ }
107
+ //#endregion
108
+ export { MySqlDatabase as t };
109
+ //# sourceMappingURL=mysql-DF-dZHi7.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mysql-DF-dZHi7.d.ts","names":[],"sources":["../src/db/mysql.ts"],"mappings":";;;;;;;;;KAwCY,gBAAA,GAAmB,WAAW;EAAK,cAAc;AAAA;AAAA,cAEhD,aAAA,YAAyB,QAAA;cAElC,MAAA,EAAQ,MAAA,EACR,MAAA,EAAQ,gBAAA,EACR,IAAA,GAAM,IAAA;EAAA,QAaA,MAAA;EACD,MAAA,EAAQ,WAAA;EAAA,UACL,cAAA;EAAA,QACF,IAAA;EAAA,SACC,MAAA,EAAQ,MAAA;EAAA,SACR,UAAA,EAAY,UAAA;EAMd,WAAA,EAAa,GAAA,SAAY,GAAA;EAAA,UAGtB,QAAA,EAAU,GAAA;EAwII;;;;;;EAhIlB,wBAAA,CAAyB,KAAA,WAAgB,OAAA,CAAQ,GAAA;EA0M5B;;;;;;EAlL3B,cAAA,CAAe,KAAA,WAAgB,GAAA;EA+Me;;;;;;;;;;;;;;;EAvLxC,oBAAA,CAAqB,IAAA;IACzB,KAAA,GAAQ,UAAA;IACR,QAAA;IACA,MAAA;EAAA,IACE,OAAA;EAgsBW;;;;;EAtpBf,qBAAA,CAAsB,KAAA;EAnIZ;;;EAkJV,WAAA,CACE,WAAA,EAAa,GAAA,SAAY,GAAA,mBACzB,QAAA,EAAU,GAAA;EAlJJ;;EAAA,QA0JM,cAAA;EASR,cAAA,IAAkB,OAAA;EAYxB,uBAAA,CAAwB,SAAA;EAWlB,gBAAA,CAAiB,EAAA,GAAK,GAAA,EAAK,eAAA,KAAoB,OAAA,SAAgB,OAAA;EAqC/D,KAAA,UAAe,GAAA,UAAa,MAAA,eAAyB,OAAA,CAAQ,aAAA,CAAc,CAAA;EAc3E,SAAA,IAAa,OAAA,CAAQ,YAAA;EAKrB,oBAAA,IAAwB,OAAA,CAAQ,UAAA;EAOhC,0BAAA,IAA8B,OAAA;EAK9B,6BAAA,CAA8B,QAAA,WAAmB,OAAA;EAOjD,uBAAA,IAA2B,OAAA;EAK3B,0BAAA,CAA2B,EAAA,WAAa,OAAA;EAOxC,gBAAA,IAAoB,OAAA;EAuBpB,wBAAA,CAAyB,QAAA,EAAU,UAAA,IAAc,OAAA,EAAS,SAAA,KAAc,OAAA;EA6DxE,mBAAA,CACJ,OAAA,EAAS,SAAA,IACT,QAAA,EAAU,UAAA,IACV,QAAA,EAAU,iBAAA,GACT,OAAA,CAAQ,eAAA;EAAA,QAmBG,uBAAA;EAAA,QAyBA,uBAAA;EAAA,QA2CA,wBAAA;EAAA,QAiCA,uBAAA;EAAA,QA4BA,sBAAA;EAlcC;;;;;;;EAAA,QA4eP,wCAAA;EAgDF,YAAA,CACJ,OAAA,UACA,OAAA,EAAS,eAAA,EACT,QAAA,WACC,OAAA;IAAU,OAAA;EAAA;EAAA,QAqCC,gBAAA;EAAA,QAyDA,4BAAA;EAwCR,qBAAA,CAAsB,EAAA,WAAa,OAAA;EAQnC,iBAAA,IAAqB,OAAA;EAQrB,sBAAA,CAAuB,OAAA,UAAiB,KAAA,UAAe,QAAA,EAAU,UAAA,KAAe,OAAA,CAAQ,cAAA;EAmBxF,oBAAA,CAAqB,OAAA,UAAiB,SAAA,UAAmB,QAAA,EAAU,UAAA,KAAe,OAAA,CAAQ,cAAA;EAmB1F,KAAA,IAAS,OAAA;AAAA"}
@@ -0,0 +1,109 @@
1
+ import { An as DbType, Dn as CoreInitLockCtx, Fn as SqlBuilder, Fr as ReadEntry, In as TxDatabase, Ln as CacheLayer, Mn as PooledClient, Nn as PreparedQueries, On as Database, Rr as WriteEntry, ir as CommitLogEntry, jn as LazyCommitTsParam, kn as DbQueryResult } from "./index-Oz3eyddt.js";
2
+ import { Pool, PoolOptions } from "mysql2/promise";
3
+ import { Logger } from "pino";
4
+
5
+ //#region src/db/mysql.d.ts
6
+ /**
7
+ * mysql2's PoolOptions does not have a per-statement timeout field; we
8
+ * carry our own. Set 0 to disable.
9
+ */
10
+ type MySqlPoolOptions = PoolOptions & {
11
+ queryTimeoutMs?: number;
12
+ };
13
+ declare class MySqlDatabase implements Database {
14
+ constructor(logger: Logger, config: MySqlPoolOptions, pool?: Pool | undefined);
15
+ private logger;
16
+ config: PoolOptions;
17
+ protected queryTimeoutMs: number;
18
+ private pool;
19
+ readonly dbType: DbType;
20
+ readonly sqlBuilder: SqlBuilder;
21
+ columnTypes: Map<string, Map<string, string>>;
22
+ protected sqlCache: Map<string, string>;
23
+ /**
24
+ * Fetches actual column types from MySQL for `table` and returns a
25
+ * map of DB column name → MySQL type string (as produced by `COLUMN_TYPE`,
26
+ * e.g. `bigint`, `integer`, `varchar(32)`, `text`, `json`).
27
+ * No caching here — see {@link getColumnTypes} for the cached path.
28
+ */
29
+ loadColumnTypesFromMySql(table: string): Promise<Map<string, string>>;
30
+ /**
31
+ * Synchronous column-type lookup. The apply path calls this on every
32
+ * batched write, so it can't await — populate the cache via
33
+ * {@link bootstrapColumnTypes} at server start. Throws if `table` is
34
+ * missing (programmer error / bootstrap skipped).
35
+ */
36
+ getColumnTypes(table: string): Map<string, string> | null;
37
+ /**
38
+ * Eagerly load column types into the in-memory cache. With a Redis
39
+ * client supplied, attempts the cache key first and falls through to
40
+ * MySQL on miss (writing the result back to Redis). This is the
41
+ * "one server queries MySQL, the rest read from Redis" pattern for cold
42
+ * starts in a multi-instance deploy. Without Redis, always queries MySQL.
43
+ *
44
+ * Pass `tables` to limit the load to a specific list; otherwise every
45
+ * user table in the connected database is loaded.
46
+ *
47
+ * The Redis cache key should encode whatever invalidates types in your
48
+ * environment (typically a schema version / deploy version). The
49
+ * subscriber in supalive-server.ts is expected to publish a reload
50
+ * signal after migrations and invoke {@link invalidateColumnTypes}.
51
+ */
52
+ bootstrapColumnTypes(opts: {
53
+ redis?: CacheLayer;
54
+ cacheKey: string;
55
+ tables?: string[];
56
+ }): Promise<void>;
57
+ /**
58
+ * Invalidate cached types (and dependent SQL) for `table`, or the entire
59
+ * cache if `table` is omitted. The Redis-pubsub reload signal in
60
+ * supalive-server.ts is expected to call this on schema changes.
61
+ */
62
+ invalidateColumnTypes(table?: string): void;
63
+ /** Replace this instance's caches with shared references from a parent.
64
+ * Used by getTransactionClient so types loaded once at startup are
65
+ * visible inside transactions. */
66
+ adoptCaches(columnTypes: Map<string, Map<string, string>>, sqlCache: Map<string, string>): void;
67
+ /** Enumerate the user-defined tables in the connected database for mysql — used
68
+ * by bootstrapColumnTypes() when no explicit list is provided. */
69
+ private listUserTables;
70
+ getCoreVersion(): Promise<bigint>;
71
+ coreMigrationStatements(toVersion: bigint): string[];
72
+ withCoreInitLock(fn: (ctx: CoreInitLockCtx) => Promise<void>): Promise<void>;
73
+ query<T = any>(sql: string, params?: unknown[]): Promise<DbQueryResult<T>>;
74
+ getClient(): Promise<PooledClient>;
75
+ getTransactionClient(): Promise<TxDatabase>;
76
+ getLatestSnapshotTimestamp(): Promise<bigint>;
77
+ updateLatestSnapshotTimestamp(commitTs: bigint): Promise<void>;
78
+ getMinSnapshotTimestamp(): Promise<bigint>;
79
+ updateMinSnapshotTimestamp(ts: bigint): Promise<void>;
80
+ getNextTimestamp(): Promise<bigint>;
81
+ attachPrevDataToWriteSet(writeSet: WriteEntry[], readSet: ReadEntry[]): Promise<void>;
82
+ prepareCommitWrites(readSet: ReadEntry[], writeSet: WriteEntry[], commitTs: LazyCommitTsParam): Promise<PreparedQueries>;
83
+ private mysqlPrepareBatchWrites;
84
+ private mysqlPrepareInsertBatch;
85
+ private mysqlPrepareUpdateSingle;
86
+ private mysqlPrepareDeleteBatch;
87
+ private mysqlPrepareCommitLogs;
88
+ /**
89
+ * Point-only OCC check. For each genuine point read, compare the row's
90
+ * current commit_ts against the value captured at read time. A `null`
91
+ * expectedCommitTs means "row didn't exist when we read"; any row found
92
+ * now is a conflict. Reads whose row is being written in this same txn
93
+ * are skipped — the CAS UPDATE/DELETE already validated those.
94
+ */
95
+ private mysqlPrepareValidatePointReadsByCommitTs;
96
+ commitWrites(beginTs: bigint, queries: PreparedQueries, commitTs: bigint): Promise<{
97
+ success: boolean;
98
+ }>;
99
+ private mysqlApplyWrites;
100
+ private validatePointReadsByCommitTs;
101
+ pruneCommitLogsBefore(ts: bigint): Promise<bigint>;
102
+ getMinCommitLogTs(): Promise<bigint | null>;
103
+ getCommitLogsBetweenTs(beginTs: bigint, endTs: bigint, tableIds: Uint8Array[]): Promise<CommitLogEntry[]>;
104
+ getCommitLogsSinceTs(sinceTs: bigint, excludeTs: bigint, tableIds: Uint8Array[]): Promise<CommitLogEntry[]>;
105
+ close(): Promise<void>;
106
+ }
107
+ //#endregion
108
+ export { MySqlDatabase as t };
109
+ //# sourceMappingURL=mysql-QWBVXBjM.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mysql-QWBVXBjM.d.ts","names":[],"sources":["../src/db/mysql.ts"],"mappings":";;;;;;;;;KAwCY,gBAAA,GAAmB,WAAW;EAAK,cAAc;AAAA;AAAA,cAEhD,aAAA,YAAyB,QAAA;cAElC,MAAA,EAAQ,MAAA,EACR,MAAA,EAAQ,gBAAA,EACR,IAAA,GAAM,IAAA;EAAA,QAaA,MAAA;EACD,MAAA,EAAQ,WAAA;EAAA,UACL,cAAA;EAAA,QACF,IAAA;EAAA,SACC,MAAA,EAAQ,MAAA;EAAA,SACR,UAAA,EAAY,UAAA;EAMd,WAAA,EAAa,GAAA,SAAY,GAAA;EAAA,UAGtB,QAAA,EAAU,GAAA;EAwII;;;;;;EAhIlB,wBAAA,CAAyB,KAAA,WAAgB,OAAA,CAAQ,GAAA;EA0M5B;;;;;;EAlL3B,cAAA,CAAe,KAAA,WAAgB,GAAA;EA+Me;;;;;;;;;;;;;;;EAvLxC,oBAAA,CAAqB,IAAA;IACzB,KAAA,GAAQ,UAAA;IACR,QAAA;IACA,MAAA;EAAA,IACE,OAAA;EAgsBW;;;;;EAtpBf,qBAAA,CAAsB,KAAA;EAnIZ;;;EAkJV,WAAA,CACE,WAAA,EAAa,GAAA,SAAY,GAAA,mBACzB,QAAA,EAAU,GAAA;EAlJJ;;EAAA,QA0JM,cAAA;EASR,cAAA,IAAkB,OAAA;EAYxB,uBAAA,CAAwB,SAAA;EAWlB,gBAAA,CAAiB,EAAA,GAAK,GAAA,EAAK,eAAA,KAAoB,OAAA,SAAgB,OAAA;EAqC/D,KAAA,UAAe,GAAA,UAAa,MAAA,eAAyB,OAAA,CAAQ,aAAA,CAAc,CAAA;EAc3E,SAAA,IAAa,OAAA,CAAQ,YAAA;EAKrB,oBAAA,IAAwB,OAAA,CAAQ,UAAA;EAOhC,0BAAA,IAA8B,OAAA;EAK9B,6BAAA,CAA8B,QAAA,WAAmB,OAAA;EAOjD,uBAAA,IAA2B,OAAA;EAK3B,0BAAA,CAA2B,EAAA,WAAa,OAAA;EAOxC,gBAAA,IAAoB,OAAA;EAuBpB,wBAAA,CAAyB,QAAA,EAAU,UAAA,IAAc,OAAA,EAAS,SAAA,KAAc,OAAA;EA6DxE,mBAAA,CACJ,OAAA,EAAS,SAAA,IACT,QAAA,EAAU,UAAA,IACV,QAAA,EAAU,iBAAA,GACT,OAAA,CAAQ,eAAA;EAAA,QAmBG,uBAAA;EAAA,QAyBA,uBAAA;EAAA,QA2CA,wBAAA;EAAA,QAiCA,uBAAA;EAAA,QA4BA,sBAAA;EAlcC;;;;;;;EAAA,QA4eP,wCAAA;EAgDF,YAAA,CACJ,OAAA,UACA,OAAA,EAAS,eAAA,EACT,QAAA,WACC,OAAA;IAAU,OAAA;EAAA;EAAA,QAqCC,gBAAA;EAAA,QAyDA,4BAAA;EAwCR,qBAAA,CAAsB,EAAA,WAAa,OAAA;EAQnC,iBAAA,IAAqB,OAAA;EAQrB,sBAAA,CAAuB,OAAA,UAAiB,KAAA,UAAe,QAAA,EAAU,UAAA,KAAe,OAAA,CAAQ,cAAA;EAmBxF,oBAAA,CAAqB,OAAA,UAAiB,SAAA,UAAmB,QAAA,EAAU,UAAA,KAAe,OAAA,CAAQ,cAAA;EAmB1F,KAAA,IAAS,OAAA;AAAA"}
@@ -0,0 +1,109 @@
1
+ import { Bn as DbType, Gn as SqlBuilder, Gr as ReadEntry, Hn as PooledClient, Jr as WriteEntry, Kn as TxDatabase, Ln as CoreInitLockCtx, Rn as Database, Un as PreparedQueries, Vn as LazyCommitTsParam, mr as CommitLogEntry, qn as CacheLayer, zn as DbQueryResult } from "./index-Ca58CrWX.js";
2
+ import { Pool, PoolOptions } from "mysql2/promise";
3
+ import { Logger } from "pino";
4
+
5
+ //#region src/db/mysql.d.ts
6
+ /**
7
+ * mysql2's PoolOptions does not have a per-statement timeout field; we
8
+ * carry our own. Set 0 to disable.
9
+ */
10
+ type MySqlPoolOptions = PoolOptions & {
11
+ queryTimeoutMs?: number;
12
+ };
13
+ declare class MySqlDatabase implements Database {
14
+ constructor(logger: Logger, config: MySqlPoolOptions, pool?: Pool | undefined);
15
+ private logger;
16
+ config: PoolOptions;
17
+ protected queryTimeoutMs: number;
18
+ private pool;
19
+ readonly dbType: DbType;
20
+ readonly sqlBuilder: SqlBuilder;
21
+ columnTypes: Map<string, Map<string, string>>;
22
+ protected sqlCache: Map<string, string>;
23
+ /**
24
+ * Fetches actual column types from MySQL for `table` and returns a
25
+ * map of DB column name → MySQL type string (as produced by `COLUMN_TYPE`,
26
+ * e.g. `bigint`, `integer`, `varchar(32)`, `text`, `json`).
27
+ * No caching here — see {@link getColumnTypes} for the cached path.
28
+ */
29
+ loadColumnTypesFromMySql(table: string): Promise<Map<string, string>>;
30
+ /**
31
+ * Synchronous column-type lookup. The apply path calls this on every
32
+ * batched write, so it can't await — populate the cache via
33
+ * {@link bootstrapColumnTypes} at server start. Throws if `table` is
34
+ * missing (programmer error / bootstrap skipped).
35
+ */
36
+ getColumnTypes(table: string): Map<string, string> | null;
37
+ /**
38
+ * Eagerly load column types into the in-memory cache. With a Redis
39
+ * client supplied, attempts the cache key first and falls through to
40
+ * MySQL on miss (writing the result back to Redis). This is the
41
+ * "one server queries MySQL, the rest read from Redis" pattern for cold
42
+ * starts in a multi-instance deploy. Without Redis, always queries MySQL.
43
+ *
44
+ * Pass `tables` to limit the load to a specific list; otherwise every
45
+ * user table in the connected database is loaded.
46
+ *
47
+ * The Redis cache key should encode whatever invalidates types in your
48
+ * environment (typically a schema version / deploy version). The
49
+ * subscriber in supalive-server.ts is expected to publish a reload
50
+ * signal after migrations and invoke {@link invalidateColumnTypes}.
51
+ */
52
+ bootstrapColumnTypes(opts: {
53
+ redis?: CacheLayer;
54
+ cacheKey: string;
55
+ tables?: string[];
56
+ }): Promise<void>;
57
+ /**
58
+ * Invalidate cached types (and dependent SQL) for `table`, or the entire
59
+ * cache if `table` is omitted. The Redis-pubsub reload signal in
60
+ * supalive-server.ts is expected to call this on schema changes.
61
+ */
62
+ invalidateColumnTypes(table?: string): void;
63
+ /** Replace this instance's caches with shared references from a parent.
64
+ * Used by getTransactionClient so types loaded once at startup are
65
+ * visible inside transactions. */
66
+ adoptCaches(columnTypes: Map<string, Map<string, string>>, sqlCache: Map<string, string>): void;
67
+ /** Enumerate the user-defined tables in the connected database for mysql — used
68
+ * by bootstrapColumnTypes() when no explicit list is provided. */
69
+ private listUserTables;
70
+ getCoreVersion(): Promise<bigint>;
71
+ coreMigrationStatements(toVersion: bigint): string[];
72
+ withCoreInitLock(fn: (ctx: CoreInitLockCtx) => Promise<void>): Promise<void>;
73
+ query<T = any>(sql: string, params?: unknown[]): Promise<DbQueryResult<T>>;
74
+ getClient(): Promise<PooledClient>;
75
+ getTransactionClient(): Promise<TxDatabase>;
76
+ getLatestSnapshotTimestamp(): Promise<bigint>;
77
+ updateLatestSnapshotTimestamp(commitTs: bigint): Promise<void>;
78
+ getMinSnapshotTimestamp(): Promise<bigint>;
79
+ updateMinSnapshotTimestamp(ts: bigint): Promise<void>;
80
+ getNextTimestamp(): Promise<bigint>;
81
+ attachPrevDataToWriteSet(writeSet: WriteEntry[], readSet: ReadEntry[]): Promise<void>;
82
+ prepareCommitWrites(readSet: ReadEntry[], writeSet: WriteEntry[], commitTs: LazyCommitTsParam): Promise<PreparedQueries>;
83
+ private mysqlPrepareBatchWrites;
84
+ private mysqlPrepareInsertBatch;
85
+ private mysqlPrepareUpdateSingle;
86
+ private mysqlPrepareDeleteBatch;
87
+ private mysqlPrepareCommitLogs;
88
+ /**
89
+ * Point-only OCC check. For each genuine point read, compare the row's
90
+ * current commit_ts against the value captured at read time. A `null`
91
+ * expectedCommitTs means "row didn't exist when we read"; any row found
92
+ * now is a conflict. Reads whose row is being written in this same txn
93
+ * are skipped — the CAS UPDATE/DELETE already validated those.
94
+ */
95
+ private mysqlPrepareValidatePointReadsByCommitTs;
96
+ commitWrites(beginTs: bigint, queries: PreparedQueries, commitTs: bigint): Promise<{
97
+ success: boolean;
98
+ }>;
99
+ private mysqlApplyWrites;
100
+ private validatePointReadsByCommitTs;
101
+ pruneCommitLogsBefore(ts: bigint): Promise<bigint>;
102
+ getMinCommitLogTs(): Promise<bigint | null>;
103
+ getCommitLogsBetweenTs(beginTs: bigint, endTs: bigint, tableIds: Uint8Array[]): Promise<CommitLogEntry[]>;
104
+ getCommitLogsSinceTs(sinceTs: bigint, excludeTs: bigint, tableIds: Uint8Array[]): Promise<CommitLogEntry[]>;
105
+ close(): Promise<void>;
106
+ }
107
+ //#endregion
108
+ export { MySqlDatabase as t };
109
+ //# sourceMappingURL=mysql-fECZYP_m.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mysql-fECZYP_m.d.ts","names":[],"sources":["../src/db/mysql.ts"],"mappings":";;;;;;;;;KAwCY,gBAAA,GAAmB,WAAW;EAAK,cAAc;AAAA;AAAA,cAEhD,aAAA,YAAyB,QAAA;cAElC,MAAA,EAAQ,MAAA,EACR,MAAA,EAAQ,gBAAA,EACR,IAAA,GAAM,IAAA;EAAA,QAaA,MAAA;EACD,MAAA,EAAQ,WAAA;EAAA,UACL,cAAA;EAAA,QACF,IAAA;EAAA,SACC,MAAA,EAAQ,MAAA;EAAA,SACR,UAAA,EAAY,UAAA;EAMd,WAAA,EAAa,GAAA,SAAY,GAAA;EAAA,UAGtB,QAAA,EAAU,GAAA;EAwII;;;;;;EAhIlB,wBAAA,CAAyB,KAAA,WAAgB,OAAA,CAAQ,GAAA;EA0M5B;;;;;;EAlL3B,cAAA,CAAe,KAAA,WAAgB,GAAA;EA+Me;;;;;;;;;;;;;;;EAvLxC,oBAAA,CAAqB,IAAA;IACzB,KAAA,GAAQ,UAAA;IACR,QAAA;IACA,MAAA;EAAA,IACE,OAAA;EAgsBW;;;;;EAtpBf,qBAAA,CAAsB,KAAA;EAnIZ;;;EAkJV,WAAA,CACE,WAAA,EAAa,GAAA,SAAY,GAAA,mBACzB,QAAA,EAAU,GAAA;EAlJJ;;EAAA,QA0JM,cAAA;EASR,cAAA,IAAkB,OAAA;EAYxB,uBAAA,CAAwB,SAAA;EAWlB,gBAAA,CAAiB,EAAA,GAAK,GAAA,EAAK,eAAA,KAAoB,OAAA,SAAgB,OAAA;EAqC/D,KAAA,UAAe,GAAA,UAAa,MAAA,eAAyB,OAAA,CAAQ,aAAA,CAAc,CAAA;EAc3E,SAAA,IAAa,OAAA,CAAQ,YAAA;EAKrB,oBAAA,IAAwB,OAAA,CAAQ,UAAA;EAOhC,0BAAA,IAA8B,OAAA;EAK9B,6BAAA,CAA8B,QAAA,WAAmB,OAAA;EAOjD,uBAAA,IAA2B,OAAA;EAK3B,0BAAA,CAA2B,EAAA,WAAa,OAAA;EAOxC,gBAAA,IAAoB,OAAA;EAuBpB,wBAAA,CAAyB,QAAA,EAAU,UAAA,IAAc,OAAA,EAAS,SAAA,KAAc,OAAA;EA6DxE,mBAAA,CACJ,OAAA,EAAS,SAAA,IACT,QAAA,EAAU,UAAA,IACV,QAAA,EAAU,iBAAA,GACT,OAAA,CAAQ,eAAA;EAAA,QAmBG,uBAAA;EAAA,QAyBA,uBAAA;EAAA,QA2CA,wBAAA;EAAA,QAiCA,uBAAA;EAAA,QA4BA,sBAAA;EAlcC;;;;;;;EAAA,QA4eP,wCAAA;EAgDF,YAAA,CACJ,OAAA,UACA,OAAA,EAAS,eAAA,EACT,QAAA,WACC,OAAA;IAAU,OAAA;EAAA;EAAA,QAqCC,gBAAA;EAAA,QAyDA,4BAAA;EAwCR,qBAAA,CAAsB,EAAA,WAAa,OAAA;EAQnC,iBAAA,IAAqB,OAAA;EAQrB,sBAAA,CAAuB,OAAA,UAAiB,KAAA,UAAe,QAAA,EAAU,UAAA,KAAe,OAAA,CAAQ,cAAA;EAmBxF,oBAAA,CAAqB,OAAA,UAAiB,SAAA,UAAmB,QAAA,EAAU,UAAA,KAAe,OAAA,CAAQ,cAAA;EAmB1F,KAAA,IAAS,OAAA;AAAA"}
@@ -0,0 +1,67 @@
1
+ //#region src/storage/object-storage.d.ts
2
+ /**
3
+ * Pluggable object storage for user-uploaded files (card artwork, receipts,
4
+ * customer photos, …). The server owns one instance and hands out short-lived,
5
+ * presigned URLs so clients upload their bytes DIRECTLY to the storage provider
6
+ * — the app server never proxies the file body.
7
+ *
8
+ * The durable reference persisted in the database is the object {@link key}
9
+ * (a stable path), never a presigned URL: URLs expire, keys do not. A viewable
10
+ * link is (re)derived from the key on read via {@link ObjectStorage.createDownloadUrl}
11
+ * or {@link ObjectStorage.publicUrl}.
12
+ */
13
+ /** A presigned target a client PUTs raw bytes to, uploading straight to storage. */
14
+ interface PresignedUpload {
15
+ /** The object key the bytes will live at. */
16
+ key: string;
17
+ /** Short-lived URL the client uploads to. */
18
+ uploadUrl: string;
19
+ /** HTTP method to use for the upload (S3 presigned PUT). */
20
+ method: "PUT";
21
+ /**
22
+ * Headers the client MUST send with the upload for the signature to match
23
+ * (e.g. `Content-Type`). Send these verbatim and add nothing else that was
24
+ * signed.
25
+ */
26
+ headers: Record<string, string>;
27
+ /** When {@link uploadUrl} stops being valid. */
28
+ expiresAt: Date;
29
+ }
30
+ /** Options for {@link ObjectStorage.createUploadUrl}. */
31
+ interface CreateUploadUrlOptions {
32
+ /** Full object key (path) to write to, e.g. `designs/store_x/abc.png`. */
33
+ key: string;
34
+ /** MIME type of the upload; signed into the URL when provided. */
35
+ contentType?: string;
36
+ /** Seconds the upload URL stays valid. Provider default applies when omitted. */
37
+ expiresIn?: number;
38
+ }
39
+ /** Options for {@link ObjectStorage.createDownloadUrl}. */
40
+ interface CreateDownloadUrlOptions {
41
+ /** Object key to read. */
42
+ key: string;
43
+ /** Seconds the download URL stays valid. Provider default applies when omitted. */
44
+ expiresIn?: number;
45
+ }
46
+ /**
47
+ * Storage backend abstraction. Implementations presign upload/download URLs for
48
+ * an S3-compatible provider (AWS S3, Cloudflare R2, MinIO, …).
49
+ */
50
+ interface ObjectStorage {
51
+ /** Presign a direct-to-storage upload target for `key`. */
52
+ createUploadUrl(opts: CreateUploadUrlOptions): Promise<PresignedUpload>;
53
+ /**
54
+ * Presign a short-lived, read-only URL for a private object. Use this for the
55
+ * "secure link" a client shows after upload and on subsequent reads.
56
+ */
57
+ createDownloadUrl(opts: CreateDownloadUrlOptions): Promise<string>;
58
+ /**
59
+ * A stable, public URL for `key` when the bucket is served publicly (e.g. an
60
+ * R2 public bucket or custom domain). Returns `null` when no public base is
61
+ * configured — callers should then fall back to {@link createDownloadUrl}.
62
+ */
63
+ publicUrl(key: string): string | null;
64
+ }
65
+ //#endregion
66
+ export { PresignedUpload as i, CreateUploadUrlOptions as n, ObjectStorage as r, CreateDownloadUrlOptions as t };
67
+ //# sourceMappingURL=object-storage-4t7JvpuK.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-storage-4t7JvpuK.d.ts","names":[],"sources":["../src/storage/object-storage.ts"],"mappings":";;AAaA;;;;;;;;;;;UAAiB,eAAA;EAcA;EAZf,GAAA;EAgBqC;EAdrC,SAAA;EAcqC;EAZrC,MAAA;EAgBA;;;AAES;AAIX;EAhBE,OAAA,EAAS,MAAA;;EAET,SAAA,EAAW,IAAI;AAAA;AAyBjB;AAAA,UArBiB,sBAAA;;EAEf,GAAA;EAqBuD;EAnBvD,WAAA;EAyBwB;EAvBxB,SAAA;AAAA;;UAIe,wBAAA;EAaO;EAXtB,GAAA;EAW+C;EAT/C,SAAS;AAAA;;;;;UAOM,aAAA;EAeM;EAbrB,eAAA,CAAgB,IAAA,EAAM,sBAAA,GAAyB,OAAA,CAAQ,eAAA;;;;;EAMvD,iBAAA,CAAkB,IAAA,EAAM,wBAAA,GAA2B,OAAA;;;;;;EAOnD,SAAA,CAAU,GAAA;AAAA"}