@syncular/core 0.1.3 → 0.2.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 (231) hide show
  1. package/README.md +5 -19
  2. package/dist/blob-ref.d.ts +21 -0
  3. package/dist/blob-ref.js +97 -0
  4. package/dist/bytes.d.ts +45 -0
  5. package/dist/bytes.js +242 -0
  6. package/dist/canonical-json.d.ts +10 -0
  7. package/dist/canonical-json.js +18 -0
  8. package/dist/constants.d.ts +5 -0
  9. package/dist/constants.js +5 -0
  10. package/dist/crypto.d.ts +60 -0
  11. package/dist/crypto.js +251 -0
  12. package/dist/errors.d.ts +14 -0
  13. package/dist/errors.js +17 -0
  14. package/dist/frames.d.ts +24 -0
  15. package/dist/frames.js +42 -0
  16. package/dist/index.d.ts +18 -26
  17. package/dist/index.js +18 -43
  18. package/dist/message.d.ts +157 -0
  19. package/dist/message.js +786 -0
  20. package/dist/realtime.d.ts +92 -0
  21. package/dist/realtime.js +222 -0
  22. package/dist/render.d.ts +22 -0
  23. package/dist/render.js +273 -0
  24. package/dist/row-codec.d.ts +39 -0
  25. package/dist/row-codec.js +176 -0
  26. package/dist/segment.d.ts +18 -0
  27. package/dist/segment.js +105 -0
  28. package/dist/stream.d.ts +20 -0
  29. package/dist/stream.js +102 -0
  30. package/package.json +7 -59
  31. package/src/blob-ref.ts +135 -0
  32. package/src/bytes.ts +301 -0
  33. package/src/canonical-json.ts +20 -0
  34. package/src/constants.ts +7 -0
  35. package/src/crypto.ts +335 -0
  36. package/src/errors.ts +18 -0
  37. package/src/frames.ts +47 -0
  38. package/src/index.ts +18 -43
  39. package/src/message.ts +1024 -0
  40. package/src/realtime.ts +340 -0
  41. package/src/render.ts +325 -0
  42. package/src/row-codec.ts +265 -0
  43. package/src/segment.ts +150 -0
  44. package/src/stream.ts +128 -0
  45. package/dist/blobs.d.ts +0 -153
  46. package/dist/blobs.d.ts.map +0 -1
  47. package/dist/blobs.js +0 -47
  48. package/dist/blobs.js.map +0 -1
  49. package/dist/column-codecs.d.ts +0 -59
  50. package/dist/column-codecs.d.ts.map +0 -1
  51. package/dist/column-codecs.js +0 -159
  52. package/dist/column-codecs.js.map +0 -1
  53. package/dist/conflict.d.ts +0 -22
  54. package/dist/conflict.d.ts.map +0 -1
  55. package/dist/conflict.js +0 -81
  56. package/dist/conflict.js.map +0 -1
  57. package/dist/database.d.ts +0 -7
  58. package/dist/database.d.ts.map +0 -1
  59. package/dist/database.js +0 -14
  60. package/dist/database.js.map +0 -1
  61. package/dist/dialect.d.ts +0 -7
  62. package/dist/dialect.d.ts.map +0 -1
  63. package/dist/dialect.js +0 -2
  64. package/dist/dialect.js.map +0 -1
  65. package/dist/error-responses.d.ts +0 -393
  66. package/dist/error-responses.d.ts.map +0 -1
  67. package/dist/error-responses.js +0 -393
  68. package/dist/error-responses.js.map +0 -1
  69. package/dist/http/api-client.d.ts +0 -11
  70. package/dist/http/api-client.d.ts.map +0 -1
  71. package/dist/http/api-client.js +0 -30
  72. package/dist/http/api-client.js.map +0 -1
  73. package/dist/http/blob.d.ts +0 -6
  74. package/dist/http/blob.d.ts.map +0 -1
  75. package/dist/http/blob.js +0 -46
  76. package/dist/http/blob.js.map +0 -1
  77. package/dist/http/generated/api.d.ts +0 -5241
  78. package/dist/http/generated/api.d.ts.map +0 -1
  79. package/dist/http/generated/api.js +0 -6
  80. package/dist/http/generated/api.js.map +0 -1
  81. package/dist/http/index.d.ts +0 -18
  82. package/dist/http/index.d.ts.map +0 -1
  83. package/dist/http/index.js +0 -212
  84. package/dist/http/index.js.map +0 -1
  85. package/dist/http/shared.d.ts +0 -45
  86. package/dist/http/shared.d.ts.map +0 -1
  87. package/dist/http/shared.js +0 -122
  88. package/dist/http/shared.js.map +0 -1
  89. package/dist/http/transport-client.d.ts +0 -31
  90. package/dist/http/transport-client.d.ts.map +0 -1
  91. package/dist/http/transport-client.js +0 -193
  92. package/dist/http/transport-client.js.map +0 -1
  93. package/dist/index.d.ts.map +0 -1
  94. package/dist/index.js.map +0 -1
  95. package/dist/kysely-column-codecs.d.ts +0 -31
  96. package/dist/kysely-column-codecs.d.ts.map +0 -1
  97. package/dist/kysely-column-codecs.js +0 -452
  98. package/dist/kysely-column-codecs.js.map +0 -1
  99. package/dist/logger.d.ts +0 -29
  100. package/dist/logger.d.ts.map +0 -1
  101. package/dist/logger.js +0 -26
  102. package/dist/logger.js.map +0 -1
  103. package/dist/proxy/index.d.ts +0 -54
  104. package/dist/proxy/index.d.ts.map +0 -1
  105. package/dist/proxy/index.js +0 -7
  106. package/dist/proxy/index.js.map +0 -1
  107. package/dist/schemas/blobs.d.ts +0 -82
  108. package/dist/schemas/blobs.d.ts.map +0 -1
  109. package/dist/schemas/blobs.js +0 -64
  110. package/dist/schemas/blobs.js.map +0 -1
  111. package/dist/schemas/common.d.ts +0 -100
  112. package/dist/schemas/common.d.ts.map +0 -1
  113. package/dist/schemas/common.js +0 -64
  114. package/dist/schemas/common.js.map +0 -1
  115. package/dist/schemas/index.d.ts +0 -7
  116. package/dist/schemas/index.d.ts.map +0 -1
  117. package/dist/schemas/index.js +0 -7
  118. package/dist/schemas/index.js.map +0 -1
  119. package/dist/schemas/sync.d.ts +0 -1065
  120. package/dist/schemas/sync.d.ts.map +0 -1
  121. package/dist/schemas/sync.js +0 -361
  122. package/dist/schemas/sync.js.map +0 -1
  123. package/dist/scopes/index.d.ts +0 -113
  124. package/dist/scopes/index.d.ts.map +0 -1
  125. package/dist/scopes/index.js +0 -103
  126. package/dist/scopes/index.js.map +0 -1
  127. package/dist/sentry.d.ts +0 -31
  128. package/dist/sentry.d.ts.map +0 -1
  129. package/dist/sentry.js +0 -147
  130. package/dist/sentry.js.map +0 -1
  131. package/dist/snapshot-chunks.d.ts +0 -110
  132. package/dist/snapshot-chunks.d.ts.map +0 -1
  133. package/dist/snapshot-chunks.js +0 -682
  134. package/dist/snapshot-chunks.js.map +0 -1
  135. package/dist/sync-packs.d.ts +0 -33
  136. package/dist/sync-packs.d.ts.map +0 -1
  137. package/dist/sync-packs.js +0 -821
  138. package/dist/sync-packs.js.map +0 -1
  139. package/dist/telemetry.d.ts +0 -114
  140. package/dist/telemetry.d.ts.map +0 -1
  141. package/dist/telemetry.js +0 -114
  142. package/dist/telemetry.js.map +0 -1
  143. package/dist/transforms.d.ts +0 -146
  144. package/dist/transforms.d.ts.map +0 -1
  145. package/dist/transforms.js +0 -155
  146. package/dist/transforms.js.map +0 -1
  147. package/dist/types.d.ts +0 -210
  148. package/dist/types.d.ts.map +0 -1
  149. package/dist/types.js +0 -20
  150. package/dist/types.js.map +0 -1
  151. package/dist/utils/bytes.d.ts +0 -4
  152. package/dist/utils/bytes.d.ts.map +0 -1
  153. package/dist/utils/bytes.js +0 -66
  154. package/dist/utils/bytes.js.map +0 -1
  155. package/dist/utils/compression.d.ts +0 -22
  156. package/dist/utils/compression.d.ts.map +0 -1
  157. package/dist/utils/compression.js +0 -129
  158. package/dist/utils/compression.js.map +0 -1
  159. package/dist/utils/crypto.d.ts +0 -13
  160. package/dist/utils/crypto.d.ts.map +0 -1
  161. package/dist/utils/crypto.js +0 -107
  162. package/dist/utils/crypto.js.map +0 -1
  163. package/dist/utils/id.d.ts +0 -3
  164. package/dist/utils/id.d.ts.map +0 -1
  165. package/dist/utils/id.js +0 -25
  166. package/dist/utils/id.js.map +0 -1
  167. package/dist/utils/index.d.ts +0 -10
  168. package/dist/utils/index.d.ts.map +0 -1
  169. package/dist/utils/index.js +0 -10
  170. package/dist/utils/index.js.map +0 -1
  171. package/dist/utils/internal-runtime.d.ts +0 -16
  172. package/dist/utils/internal-runtime.d.ts.map +0 -1
  173. package/dist/utils/internal-runtime.js +0 -14
  174. package/dist/utils/internal-runtime.js.map +0 -1
  175. package/dist/utils/object.d.ts +0 -2
  176. package/dist/utils/object.d.ts.map +0 -1
  177. package/dist/utils/object.js +0 -4
  178. package/dist/utils/object.js.map +0 -1
  179. package/dist/utils/realtime-change-index.d.ts +0 -9
  180. package/dist/utils/realtime-change-index.d.ts.map +0 -1
  181. package/dist/utils/realtime-change-index.js +0 -36
  182. package/dist/utils/realtime-change-index.js.map +0 -1
  183. package/dist/utils/realtime-connection-registry.d.ts +0 -40
  184. package/dist/utils/realtime-connection-registry.d.ts.map +0 -1
  185. package/dist/utils/realtime-connection-registry.js +0 -237
  186. package/dist/utils/realtime-connection-registry.js.map +0 -1
  187. package/dist/utils/table-registry.d.ts +0 -10
  188. package/dist/utils/table-registry.d.ts.map +0 -1
  189. package/dist/utils/table-registry.js +0 -54
  190. package/dist/utils/table-registry.js.map +0 -1
  191. package/dist/utils/url.d.ts +0 -3
  192. package/dist/utils/url.d.ts.map +0 -1
  193. package/dist/utils/url.js +0 -20
  194. package/dist/utils/url.js.map +0 -1
  195. package/src/blobs.ts +0 -219
  196. package/src/column-codecs.ts +0 -262
  197. package/src/conflict.ts +0 -92
  198. package/src/database.ts +0 -21
  199. package/src/dialect.ts +0 -8
  200. package/src/error-responses.ts +0 -423
  201. package/src/http/api-client.ts +0 -39
  202. package/src/http/blob.ts +0 -95
  203. package/src/http/generated/api.ts +0 -5241
  204. package/src/http/index.ts +0 -365
  205. package/src/http/shared.ts +0 -220
  206. package/src/http/transport-client.ts +0 -314
  207. package/src/kysely-column-codecs.ts +0 -585
  208. package/src/logger.ts +0 -38
  209. package/src/proxy/index.ts +0 -57
  210. package/src/schemas/blobs.ts +0 -110
  211. package/src/schemas/common.ts +0 -89
  212. package/src/schemas/index.ts +0 -7
  213. package/src/schemas/sync.ts +0 -517
  214. package/src/scopes/index.ts +0 -237
  215. package/src/sentry.ts +0 -200
  216. package/src/snapshot-chunks.ts +0 -964
  217. package/src/sync-packs.ts +0 -1096
  218. package/src/telemetry.ts +0 -243
  219. package/src/transforms.ts +0 -256
  220. package/src/types.ts +0 -267
  221. package/src/utils/bytes.ts +0 -75
  222. package/src/utils/compression.ts +0 -187
  223. package/src/utils/crypto.ts +0 -146
  224. package/src/utils/id.ts +0 -34
  225. package/src/utils/index.ts +0 -9
  226. package/src/utils/internal-runtime.ts +0 -39
  227. package/src/utils/object.ts +0 -3
  228. package/src/utils/realtime-change-index.ts +0 -44
  229. package/src/utils/realtime-connection-registry.ts +0 -286
  230. package/src/utils/table-registry.ts +0 -67
  231. package/src/utils/url.ts +0 -29
@@ -1 +0,0 @@
1
- {"version":3,"file":"sentry.d.ts","sourceRoot":"","sources":["../src/sentry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EAGjB,eAAe,EACf,aAAa,EACb,uBAAuB,EACvB,2BAA2B,EAI5B,MAAM,gBAAgB,CAAC;AAExB,UAAU,mBAAmB;IAC3B,KAAK,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACpE,KAAK,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACpE,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACnE,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACnE,KAAK,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACpE,KAAK,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACrE;AAED,UAAU,iBAAiB;IACzB,YAAY,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,2BAA2B,GAAG,IAAI,CAAC;IACtE,aAAa,CAAC,CAAC,UAAU,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAC1D,SAAS,CAAC,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;CACnD;AAED,UAAU,oBAAoB;IAC5B,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACvE,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACvE,YAAY,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;CAC/E;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,SAAS,CAAC,CAAC,CAAC,EACV,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,CAAC,GACvC,CAAC,CAAC;IACL,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,gBAAgB,CAAC,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACzC;AAyHD;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,sBAAsB,GAC9B,aAAa,CA+Bf"}
package/dist/sentry.js DELETED
@@ -1,147 +0,0 @@
1
- const noopSpan = {
2
- setAttribute() { },
3
- setAttributes() { },
4
- setStatus() { },
5
- };
6
- function resolveLogLevel(event) {
7
- if (event.level)
8
- return event.level;
9
- return event.error ? 'error' : 'info';
10
- }
11
- function resolveLogMethod(logger, level) {
12
- if (!logger)
13
- return null;
14
- switch (level) {
15
- case 'trace':
16
- return logger.trace ?? logger.debug ?? logger.info ?? null;
17
- case 'debug':
18
- return logger.debug ?? logger.info ?? null;
19
- case 'info':
20
- return logger.info ?? null;
21
- case 'warn':
22
- return logger.warn ?? logger.info ?? null;
23
- case 'error':
24
- return logger.error ?? logger.warn ?? logger.info ?? null;
25
- case 'fatal':
26
- return logger.fatal ?? logger.error ?? logger.warn ?? logger.info ?? null;
27
- default:
28
- return logger.info ?? null;
29
- }
30
- }
31
- function toSpan(span) {
32
- return {
33
- setAttribute(name, value) {
34
- span.setAttribute?.(name, value);
35
- },
36
- setAttributes(attributes) {
37
- if (span.setAttributes) {
38
- span.setAttributes(attributes);
39
- return;
40
- }
41
- for (const [key, value] of Object.entries(attributes)) {
42
- span.setAttribute?.(key, value);
43
- }
44
- },
45
- setStatus(status) {
46
- span.setStatus?.(status);
47
- },
48
- };
49
- }
50
- function toLogAttributeValue(value) {
51
- if (typeof value === 'string')
52
- return value;
53
- if (typeof value === 'number') {
54
- return Number.isFinite(value) ? value : undefined;
55
- }
56
- if (typeof value === 'boolean')
57
- return value;
58
- if (typeof value === 'bigint') {
59
- const asNumber = Number(value);
60
- if (Number.isFinite(asNumber))
61
- return asNumber;
62
- return value.toString();
63
- }
64
- if (value instanceof Date)
65
- return value.toISOString();
66
- if (value === null || value === undefined)
67
- return undefined;
68
- if (Array.isArray(value) || typeof value === 'object') {
69
- try {
70
- return JSON.stringify(value);
71
- }
72
- catch {
73
- return String(value);
74
- }
75
- }
76
- return String(value);
77
- }
78
- function sanitizeLogAttributes(attributes) {
79
- const sanitized = {};
80
- for (const [name, value] of Object.entries(attributes)) {
81
- const normalized = toLogAttributeValue(value);
82
- if (normalized !== undefined) {
83
- sanitized[name] = normalized;
84
- }
85
- }
86
- return Object.keys(sanitized).length > 0 ? sanitized : null;
87
- }
88
- function createTracer(adapter) {
89
- return {
90
- startSpan(options, callback) {
91
- if (!adapter.startSpan)
92
- return callback(noopSpan);
93
- return adapter.startSpan(options, (span) => callback(toSpan(span)));
94
- },
95
- };
96
- }
97
- function createMetrics(adapter) {
98
- return {
99
- count(name, value, options) {
100
- adapter.metrics?.count?.(name, value ?? 1, options);
101
- },
102
- gauge(name, value, options) {
103
- adapter.metrics?.gauge?.(name, value, options);
104
- },
105
- distribution(name, value, options) {
106
- adapter.metrics?.distribution?.(name, value, options);
107
- },
108
- };
109
- }
110
- /**
111
- * Create a Syncular telemetry adapter backed by Sentry primitives.
112
- */
113
- export function createSentrySyncTelemetry(adapter) {
114
- return {
115
- log(event) {
116
- const level = resolveLogLevel(event);
117
- const { event: message, ...attributes } = event;
118
- const logMethod = resolveLogMethod(adapter.logger, level);
119
- if (!logMethod)
120
- return;
121
- const sanitizedAttributes = sanitizeLogAttributes(attributes);
122
- if (!sanitizedAttributes) {
123
- logMethod(message);
124
- return;
125
- }
126
- logMethod(message, sanitizedAttributes);
127
- },
128
- tracer: createTracer(adapter),
129
- metrics: createMetrics(adapter),
130
- captureException(error, context) {
131
- adapter.captureException?.(error);
132
- if (!context)
133
- return;
134
- const logMethod = resolveLogMethod(adapter.logger, 'error') ??
135
- resolveLogMethod(adapter.logger, 'info');
136
- if (!logMethod)
137
- return;
138
- const sanitizedContext = sanitizeLogAttributes(context);
139
- if (!sanitizedContext) {
140
- logMethod('sync.exception.context');
141
- return;
142
- }
143
- logMethod('sync.exception.context', sanitizedContext);
144
- },
145
- };
146
- }
147
- //# sourceMappingURL=sentry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sentry.js","sourceRoot":"","sources":["../src/sentry.ts"],"names":[],"mappings":"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"}
@@ -1,110 +0,0 @@
1
- /**
2
- * @syncular/core - Snapshot chunk encoding helpers
3
- */
4
- export declare const SYNC_SNAPSHOT_CHUNK_ENCODING_BINARY_TABLE_V1 = "binary-table-v1";
5
- export declare const SYNC_SNAPSHOT_CHUNK_ENCODINGS: readonly ["binary-table-v1"];
6
- export declare const SYNC_SNAPSHOT_CHUNK_ENCODING = "binary-table-v1";
7
- export type SyncSnapshotChunkEncoding = (typeof SYNC_SNAPSHOT_CHUNK_ENCODINGS)[number];
8
- export declare function isSyncSnapshotChunkEncoding(value: unknown): value is SyncSnapshotChunkEncoding;
9
- export declare const SYNC_SNAPSHOT_CHUNK_COMPRESSION = "gzip";
10
- export type SyncSnapshotChunkCompression = typeof SYNC_SNAPSHOT_CHUNK_COMPRESSION;
11
- export declare const SYNC_SNAPSHOT_ARTIFACT_COMPRESSION_NONE = "none";
12
- export declare const SYNC_SCOPED_SNAPSHOT_ARTIFACT_MANIFEST_VERSION = 1;
13
- export declare const SYNC_SCOPED_SNAPSHOT_ARTIFACT_KIND_SQLITE_V1 = "sqlite-snapshot-v1";
14
- export type SyncSnapshotArtifactCompression = SyncSnapshotChunkCompression | typeof SYNC_SNAPSHOT_ARTIFACT_COMPRESSION_NONE;
15
- export type SyncScopedSnapshotArtifactKind = typeof SYNC_SCOPED_SNAPSHOT_ARTIFACT_KIND_SQLITE_V1;
16
- export interface SnapshotManifestChunkDigestInput {
17
- id: string;
18
- byteLength: number;
19
- sha256: string;
20
- encoding: SyncSnapshotChunkEncoding;
21
- compression: SyncSnapshotChunkCompression;
22
- }
23
- export interface SnapshotManifestDigestInput {
24
- version: 1;
25
- table: string;
26
- asOfCommitSeq: number;
27
- scopeDigest: string;
28
- rowCursor: string | null;
29
- rowLimit: number;
30
- nextRowCursor: string | null;
31
- isFirstPage: boolean;
32
- isLastPage: boolean;
33
- chunks: readonly SnapshotManifestChunkDigestInput[];
34
- }
35
- export interface SnapshotManifestDigestValue extends Omit<SnapshotManifestDigestInput, 'chunks'> {
36
- chunks: SnapshotManifestChunkDigestInput[];
37
- digest: string;
38
- }
39
- export interface ScopedSnapshotArtifactDigestInput {
40
- version: typeof SYNC_SCOPED_SNAPSHOT_ARTIFACT_MANIFEST_VERSION;
41
- artifactKind: SyncScopedSnapshotArtifactKind;
42
- partitionId: string;
43
- subscriptionId: string;
44
- table: string;
45
- schemaVersion: string;
46
- asOfCommitSeq: number;
47
- scopeDigest: string;
48
- rowCursor: string | null;
49
- rowLimit: number;
50
- rowCount: number;
51
- nextRowCursor: string | null;
52
- isFirstPage: boolean;
53
- isLastPage: boolean;
54
- compression: SyncSnapshotArtifactCompression;
55
- byteLength: number;
56
- sha256: string;
57
- featureSet: readonly string[];
58
- }
59
- export interface ScopedSnapshotArtifactManifest extends ScopedSnapshotArtifactDigestInput {
60
- featureSet: string[];
61
- digest: string;
62
- }
63
- export type BinarySnapshotColumnType = 'string' | 'integer' | 'float' | 'boolean' | 'json' | 'bytes';
64
- export interface BinarySnapshotColumn {
65
- name: string;
66
- type: BinarySnapshotColumnType;
67
- nullable?: boolean;
68
- }
69
- export interface BinarySnapshotTable {
70
- table: string;
71
- columns: readonly BinarySnapshotColumn[];
72
- rows: readonly Record<string, unknown>[];
73
- }
74
- export type BinarySnapshotRowsEncoder<Row = unknown> = (rows: readonly Row[]) => Uint8Array;
75
- export interface DecodedBinarySnapshotTable {
76
- table: string;
77
- columns: BinarySnapshotColumn[];
78
- rows: Record<string, unknown>[];
79
- }
80
- export declare function snapshotScopeDigestFromCacheKey(scopeKey: string): string;
81
- export declare function snapshotManifestDigestPayload(manifest: SnapshotManifestDigestInput): string;
82
- export declare function createSnapshotManifestDigest(manifest: SnapshotManifestDigestInput): Promise<string>;
83
- export declare function createSnapshotManifest(manifest: SnapshotManifestDigestInput): Promise<SnapshotManifestDigestValue>;
84
- export declare function scopedSnapshotArtifactDigestPayload(manifest: ScopedSnapshotArtifactDigestInput): string;
85
- export declare function createScopedSnapshotArtifactDigest(manifest: ScopedSnapshotArtifactDigestInput): Promise<string>;
86
- export declare function createScopedSnapshotArtifactManifest(manifest: ScopedSnapshotArtifactDigestInput): Promise<ScopedSnapshotArtifactManifest>;
87
- export declare function encodeBinarySnapshotTable(table: BinarySnapshotTable): Uint8Array;
88
- export declare class BinarySnapshotTableWriter {
89
- private readonly columns;
90
- private readonly writer;
91
- private readonly nullBitmapBytes;
92
- private readonly expectedRows;
93
- private rowsWritten;
94
- private nullBitmapOffset;
95
- constructor(table: string, columns: readonly BinarySnapshotColumn[], rowCount: number, initialCapacity?: number);
96
- beginRow(): void;
97
- writeNull(columnIndex: number): void;
98
- writeString(value: string | Date, label: string): void;
99
- writeInteger(value: number | bigint | string, label: string): void;
100
- writeFloat(value: number, label: string): void;
101
- writeBoolean(value: boolean, label: string): void;
102
- writeJson(value: unknown, label: string): void;
103
- writeBytes(value: Uint8Array | ArrayBuffer, columnName: string): void;
104
- writeValue(columnIndex: number, value: unknown): void;
105
- finish(): Uint8Array;
106
- private column;
107
- private currentNullBitmapOffset;
108
- }
109
- export declare function decodeBinarySnapshotTable(bytes: Uint8Array): DecodedBinarySnapshotTable;
110
- //# sourceMappingURL=snapshot-chunks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"snapshot-chunks.d.ts","sourceRoot":"","sources":["../src/snapshot-chunks.ts"],"names":[],"mappings":"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"}