@livestore/common 0.0.54-dev.5 → 0.0.55-dev.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 (94) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/__tests__/fixture.d.ts +0 -2
  3. package/dist/__tests__/fixture.d.ts.map +1 -1
  4. package/dist/adapter-types.d.ts +81 -20
  5. package/dist/adapter-types.d.ts.map +1 -1
  6. package/dist/adapter-types.js +22 -1
  7. package/dist/adapter-types.js.map +1 -1
  8. package/dist/bounded-collections.d.ts +1 -1
  9. package/dist/bounded-collections.d.ts.map +1 -1
  10. package/dist/bounded-collections.js.map +1 -1
  11. package/dist/debug-info.d.ts +4 -0
  12. package/dist/debug-info.d.ts.map +1 -1
  13. package/dist/debug-info.js +6 -9
  14. package/dist/debug-info.js.map +1 -1
  15. package/dist/derived-mutations.d.ts +4 -5
  16. package/dist/derived-mutations.d.ts.map +1 -1
  17. package/dist/devtools/devtools-messages.d.ts +248 -46
  18. package/dist/devtools/devtools-messages.d.ts.map +1 -1
  19. package/dist/devtools/devtools-messages.js +110 -48
  20. package/dist/devtools/devtools-messages.js.map +1 -1
  21. package/dist/devtools/devtools-window-message.d.ts +29 -0
  22. package/dist/devtools/devtools-window-message.d.ts.map +1 -0
  23. package/dist/devtools/devtools-window-message.js +33 -0
  24. package/dist/devtools/devtools-window-message.js.map +1 -0
  25. package/dist/devtools/index.d.ts +1 -0
  26. package/dist/devtools/index.d.ts.map +1 -1
  27. package/dist/devtools/index.js +1 -0
  28. package/dist/devtools/index.js.map +1 -1
  29. package/dist/index.d.ts +1 -0
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +1 -0
  32. package/dist/index.js.map +1 -1
  33. package/dist/mutation.d.ts.map +1 -1
  34. package/dist/rehydrate-from-mutationlog.d.ts +8 -3
  35. package/dist/rehydrate-from-mutationlog.d.ts.map +1 -1
  36. package/dist/rehydrate-from-mutationlog.js +73 -57
  37. package/dist/rehydrate-from-mutationlog.js.map +1 -1
  38. package/dist/schema/index.d.ts.map +1 -1
  39. package/dist/schema/mutations.d.ts +2 -1
  40. package/dist/schema/mutations.d.ts.map +1 -1
  41. package/dist/schema/mutations.js +4 -2
  42. package/dist/schema/mutations.js.map +1 -1
  43. package/dist/schema/parse-utils.d.ts +3 -14
  44. package/dist/schema/parse-utils.d.ts.map +1 -1
  45. package/dist/schema/schema-helpers.d.ts +3 -13
  46. package/dist/schema/schema-helpers.d.ts.map +1 -1
  47. package/dist/schema/system-tables.d.ts +0 -5
  48. package/dist/schema/system-tables.d.ts.map +1 -1
  49. package/dist/schema/table-def.d.ts +3 -21
  50. package/dist/schema/table-def.d.ts.map +1 -1
  51. package/dist/schema/table-def.js +0 -1
  52. package/dist/schema/table-def.js.map +1 -1
  53. package/dist/schema-management/common.d.ts.map +1 -1
  54. package/dist/schema-management/migrations.d.ts +10 -8
  55. package/dist/schema-management/migrations.d.ts.map +1 -1
  56. package/dist/schema-management/migrations.js +24 -18
  57. package/dist/schema-management/migrations.js.map +1 -1
  58. package/dist/schema-management/validate-mutation-defs.d.ts +3 -1
  59. package/dist/schema-management/validate-mutation-defs.d.ts.map +1 -1
  60. package/dist/schema-management/validate-mutation-defs.js +7 -5
  61. package/dist/schema-management/validate-mutation-defs.js.map +1 -1
  62. package/dist/sql-queries/misc.d.ts.map +1 -1
  63. package/dist/sql-queries/sql-queries.d.ts.map +1 -1
  64. package/dist/sql-queries/sql-query-builder.d.ts +33 -33
  65. package/dist/sql-queries/sql-query-builder.d.ts.map +1 -1
  66. package/dist/sql-queries/types.d.ts.map +1 -1
  67. package/dist/sync/sync.d.ts +3 -3
  68. package/dist/util.d.ts +0 -1
  69. package/dist/util.d.ts.map +1 -1
  70. package/dist/util.js +1 -1
  71. package/dist/util.js.map +1 -1
  72. package/dist/version.d.ts +2 -0
  73. package/dist/version.d.ts.map +1 -0
  74. package/dist/version.js +3 -0
  75. package/dist/version.js.map +1 -0
  76. package/package.json +4 -8
  77. package/src/adapter-types.ts +69 -19
  78. package/src/bounded-collections.ts +1 -1
  79. package/src/debug-info.ts +6 -18
  80. package/src/devtools/devtools-messages.ts +146 -65
  81. package/src/devtools/devtools-window-message.ts +27 -0
  82. package/src/devtools/index.ts +1 -0
  83. package/src/index.ts +1 -0
  84. package/src/rehydrate-from-mutationlog.ts +102 -65
  85. package/src/schema/mutations.ts +8 -5
  86. package/src/schema/table-def.ts +0 -4
  87. package/src/schema-management/migrations.ts +102 -89
  88. package/src/schema-management/validate-mutation-defs.ts +22 -19
  89. package/src/util.ts +1 -1
  90. package/src/version.ts +3 -0
  91. package/dist/devtools/index copy.d.ts +0 -214
  92. package/dist/devtools/index copy.d.ts.map +0 -1
  93. package/dist/devtools/index copy.js +0 -137
  94. package/dist/devtools/index copy.js.map +0 -1
@@ -8,40 +8,40 @@ export declare const makeSqlQueryBuilder: <TSchema extends SqliteDsl.DbSchema>(s
8
8
  where: ClientTypes.WhereValuesForTable<TSchema, TTableName>;
9
9
  limit?: number;
10
10
  }) => [string, BindValues, TTableName];
11
- countRows: <TTableName_1 extends keyof TSchema & string>({ tableName, where, }: {
12
- tableName: TTableName_1;
13
- where: ClientTypes.PartialOrNull<{ [K in keyof ClientTypes.DecodedValuesForTableAll<TSchema, TTableName_1>]: ClientTypes.WhereValueForDecoded<ClientTypes.DecodedValuesForTableAll<TSchema, TTableName_1>[K]>; }>;
14
- }) => [string, BindValues, TTableName_1];
15
- insertRow: <TTableName_2 extends keyof TSchema & string>({ tableName, values, options, }: {
16
- tableName: TTableName_2;
17
- values: ClientTypes.DecodedValuesForTable<TSchema, TTableName_2>;
11
+ countRows: <TTableName extends keyof TSchema & string>({ tableName, where, }: {
12
+ tableName: TTableName;
13
+ where: ClientTypes.WhereValuesForTable<TSchema, TTableName>;
14
+ }) => [string, BindValues, TTableName];
15
+ insertRow: <TTableName extends keyof TSchema & string>({ tableName, values, options, }: {
16
+ tableName: TTableName;
17
+ values: ClientTypes.DecodedValuesForTable<TSchema, TTableName>;
18
18
  options?: {
19
19
  orReplace: boolean;
20
- } | undefined;
21
- }) => [string, BindValues, TTableName_2];
22
- insertRows: <TTableName_3 extends keyof TSchema & string>({ tableName, valuesArray, }: {
23
- tableName: TTableName_3;
24
- valuesArray: ClientTypes.DecodedValuesForTable<TSchema, TTableName_3>[];
25
- }) => [string, BindValues, TTableName_3];
26
- insertOrIgnoreRow: <TTableName_4 extends keyof TSchema & string>({ tableName, values, returnRow, }: {
27
- tableName: TTableName_4;
28
- values: ClientTypes.DecodedValuesForTable<TSchema, TTableName_4>;
29
- returnRow?: boolean | undefined;
30
- }) => [string, BindValues, TTableName_4];
31
- updateRows: <TTableName_5 extends keyof TSchema & string>({ tableName, updateValues, where, }: {
32
- tableName: TTableName_5;
33
- updateValues: Partial<ClientTypes.DecodedValuesForTableAll<TSchema, TTableName_5>>;
34
- where: ClientTypes.PartialOrNull<{ [K_1 in keyof ClientTypes.DecodedValuesForTableAll<TSchema, TTableName_5>]: ClientTypes.WhereValueForDecoded<ClientTypes.DecodedValuesForTableAll<TSchema, TTableName_5>[K_1]>; }>;
35
- }) => [string, BindValues, TTableName_5];
36
- deleteRows: <TTableName_6 extends keyof TSchema & string>({ tableName, where, }: {
37
- tableName: TTableName_6;
38
- where: ClientTypes.PartialOrNull<{ [K_2 in keyof ClientTypes.DecodedValuesForTableAll<TSchema, TTableName_6>]: ClientTypes.WhereValueForDecoded<ClientTypes.DecodedValuesForTableAll<TSchema, TTableName_6>[K_2]>; }>;
39
- }) => [string, BindValues, TTableName_6];
40
- upsertRow: <TTableName_7 extends keyof TSchema & string>({ tableName, createValues, updateValues, where, }: {
41
- tableName: TTableName_7;
42
- createValues: ClientTypes.DecodedValuesForTable<TSchema, TTableName_7>;
43
- updateValues: Partial<ClientTypes.DecodedValuesForTableAll<TSchema, TTableName_7>>;
44
- where: ClientTypes.PartialOrNull<{ [K_3 in keyof ClientTypes.DecodedValuesForTableAll<TSchema, TTableName_7>]: ClientTypes.WhereValueForDecoded<ClientTypes.DecodedValuesForTableAll<TSchema, TTableName_7>[K_3]>; }>;
45
- }) => [string, BindValues, TTableName_7];
20
+ };
21
+ }) => [string, BindValues, TTableName];
22
+ insertRows: <TTableName extends keyof TSchema & string>({ tableName, valuesArray, }: {
23
+ tableName: TTableName;
24
+ valuesArray: ClientTypes.DecodedValuesForTable<TSchema, TTableName>[];
25
+ }) => [string, BindValues, TTableName];
26
+ insertOrIgnoreRow: <TTableName extends keyof TSchema & string>({ tableName, values, returnRow, }: {
27
+ tableName: TTableName;
28
+ values: ClientTypes.DecodedValuesForTable<TSchema, TTableName>;
29
+ returnRow?: boolean;
30
+ }) => [string, BindValues, TTableName];
31
+ updateRows: <TTableName extends keyof TSchema & string>({ tableName, updateValues, where, }: {
32
+ tableName: TTableName;
33
+ updateValues: Partial<ClientTypes.DecodedValuesForTableAll<TSchema, TTableName>>;
34
+ where: ClientTypes.WhereValuesForTable<TSchema, TTableName>;
35
+ }) => [string, BindValues, TTableName];
36
+ deleteRows: <TTableName extends keyof TSchema & string>({ tableName, where, }: {
37
+ tableName: TTableName;
38
+ where: ClientTypes.WhereValuesForTable<TSchema, TTableName>;
39
+ }) => [string, BindValues, TTableName];
40
+ upsertRow: <TTableName extends keyof TSchema & string>({ tableName, createValues, updateValues, where, }: {
41
+ tableName: TTableName;
42
+ createValues: ClientTypes.DecodedValuesForTable<TSchema, TTableName>;
43
+ updateValues: Partial<ClientTypes.DecodedValuesForTableAll<TSchema, TTableName>>;
44
+ where: ClientTypes.WhereValuesForTable<TSchema, TTableName>;
45
+ }) => [string, BindValues, TTableName];
46
46
  };
47
47
  //# sourceMappingURL=sql-query-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sql-query-builder.d.ts","sourceRoot":"","sources":["../../src/sql-queries/sql-query-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAElD,OAAO,KAAK,KAAK,WAAW,MAAM,YAAY,CAAA;AAE9C,MAAM,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;AAEhF,eAAO,MAAM,mBAAmB,+CAAgD,OAAO;4FAKlF;QACD,SAAS,EAAE,UAAU,CAAA;QACrB,KAAK,EAAE,YAAY,mBAAmB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QAC3D,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,KAAG,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC;;;;;;;;;uBAyBX,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4FjC,CAAA"}
1
+ {"version":3,"file":"sql-query-builder.d.ts","sourceRoot":"","sources":["../../src/sql-queries/sql-query-builder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sql-queries/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE3D,MAAM,MAAM,wBAAwB,CAAC,OAAO,SAAS,SAAS,CAAC,QAAQ,EAAE,UAAU,SAAS,MAAM,OAAO,IAAI;KAC1G,CAAC,IAAI,MAAM,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;CAC9G,CAAA;AAED,MAAM,MAAM,2BAA2B,CACrC,OAAO,SAAS,SAAS,CAAC,QAAQ,EAClC,UAAU,SAAS,MAAM,OAAO,IAC9B,QAAQ,CAAC,qBAAqB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;AAExD,MAAM,MAAM,qBAAqB,CAAC,OAAO,SAAS,SAAS,CAAC,QAAQ,EAAE,UAAU,SAAS,MAAM,OAAO,IAAI,OAAO,CAC/G,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,8BAA8B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CACzG,GACC,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,8BAA8B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;AAE1G,MAAM,MAAM,2BAA2B,CACrC,OAAO,SAAS,SAAS,CAAC,QAAQ,EAClC,UAAU,SAAS,MAAM,OAAO,IAC9B,WAAW,CACb,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,8BAA8B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CACzG,GACC,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,8BAA8B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;AAE1G,MAAM,MAAM,mBAAmB,CAAC,OAAO,SAAS,SAAS,CAAC,QAAQ,EAAE,UAAU,SAAS,MAAM,OAAO,IAAI,aAAa,CAAC;KACnH,CAAC,IAAI,MAAM,wBAAwB,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,oBAAoB,CAC9E,wBAAwB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CACjD;CACF,CAAC,CAAA;AAEF,MAAM,MAAM,oBAAoB,CAAC,QAAQ,IAAI,QAAQ,GAAG;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,QAAQ,EAAE,CAAA;CAAE,CAAA;AACtH,MAAM,MAAM,OAAO,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;AAErC,eAAO,MAAM,cAAc,OAAQ,MAAM,kBAGxC,CAAA;AAED,MAAM,MAAM,wBAAwB,CAAC,OAAO,SAAS,SAAS,CAAC,QAAQ,EAAE,UAAU,SAAS,MAAM,OAAO,IAAI;KAC1G,CAAC,IAAI,MAAM,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;CAC9G,CAAA;AAED,MAAM,MAAM,qBAAqB,CAAC,OAAO,SAAS,SAAS,CAAC,QAAQ,EAAE,UAAU,SAAS,MAAM,OAAO,IAAI,OAAO,CAC/G,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,8BAA8B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CACzG,GACC,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,8BAA8B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;AAE1G,MAAM,MAAM,8BAA8B,CACxC,OAAO,SAAS,SAAS,CAAC,QAAQ,EAClC,UAAU,SAAS,MAAM,OAAO,IAC9B,MAAM;KACP,CAAC,IAAI,MAAM,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,IAAI,GACrG,CAAC,GACD,KAAK,GAAG,EAAE;CACf,CAAA;AAED,MAAM,MAAM,UAAU,CACpB,OAAO,SAAS,SAAS,CAAC,QAAQ,EAClC,UAAU,SAAS,MAAM,OAAO,IAC9B,OAAO,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAA;AAElC,MAAM,MAAM,SAAS,CACnB,OAAO,SAAS,SAAS,CAAC,QAAQ,EAClC,UAAU,SAAS,MAAM,OAAO,EAChC,WAAW,SAAS,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,IACtD,OAAO,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAA;AAE/C,MAAM,MAAM,0BAA0B,CAAC,QAAQ,SAAS,SAAS,CAAC,OAAO,IAAI;KAC1E,CAAC,IAAI,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;CACjE,CAAA;AAED,MAAM,MAAM,uBAAuB,CAAC,QAAQ,SAAS,SAAS,CAAC,OAAO,IAAI,OAAO,CAC/E,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAC7E,GACC,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAA;AAE9E,MAAM,MAAM,0BAA0B,CAAC,QAAQ,SAAS,SAAS,CAAC,OAAO,IAAI;KAC1E,CAAC,IAAI,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;CACpE,CAAA;AAED,MAAM,MAAM,uBAAuB,CAAC,QAAQ,SAAS,SAAS,CAAC,OAAO,IAAI,OAAO,CAC/E,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAC7E,GACC,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAA;AAE9E,MAAM,MAAM,qBAAqB,CAAC,QAAQ,SAAS,SAAS,CAAC,OAAO,IAAI,aAAa,CAAC;KACnF,CAAC,IAAI,MAAM,uBAAuB,CAAC,QAAQ,CAAC,GAAG,oBAAoB,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;CAC9G,CAAC,CAAA;AAEF,MAAM,MAAM,sBAAsB,CAAC,QAAQ,SAAS,SAAS,CAAC,OAAO,IAAI,MAAM;KAC5E,CAAC,IAAI,MAAM,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,SAAS,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,EAAE;CACnG,CAAA;AAED,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;CAAE,CAAA;AAE/D,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;CAAE,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sql-queries/types.ts"],"names":[],"mappings":"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"}
@@ -10,19 +10,19 @@ export type SyncImpl = {
10
10
  isConnected: SubscriptionRef.SubscriptionRef<boolean>;
11
11
  };
12
12
  declare const IsOfflineError_base: Schema.TaggedErrorClass<IsOfflineError, "IsOfflineError", {
13
- readonly _tag: Schema.PropertySignature<":", "IsOfflineError", never, ":", "IsOfflineError", true, never>;
13
+ readonly _tag: Schema.tag<"IsOfflineError">;
14
14
  }>;
15
15
  export declare class IsOfflineError extends IsOfflineError_base {
16
16
  }
17
17
  declare const InvalidPushError_base: Schema.TaggedErrorClass<InvalidPushError, "InvalidPushError", {
18
- readonly _tag: Schema.PropertySignature<":", "InvalidPushError", never, ":", "InvalidPushError", true, never>;
18
+ readonly _tag: Schema.tag<"InvalidPushError">;
19
19
  } & {
20
20
  message: typeof Schema.String;
21
21
  }>;
22
22
  export declare class InvalidPushError extends InvalidPushError_base {
23
23
  }
24
24
  declare const InvalidPullError_base: Schema.TaggedErrorClass<InvalidPullError, "InvalidPullError", {
25
- readonly _tag: Schema.PropertySignature<":", "InvalidPullError", never, ":", "InvalidPullError", true, never>;
25
+ readonly _tag: Schema.tag<"InvalidPullError">;
26
26
  } & {
27
27
  message: typeof Schema.String;
28
28
  }>;
package/dist/util.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- /// <reference lib="es2022" />
2
1
  import type { Brand } from '@livestore/utils/effect';
3
2
  import { Schema } from '@livestore/utils/effect';
4
3
  export type ParamsObject = Record<string, SqlValue>;
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;AACnD,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,IAAI,CAAA;AAE1D,MAAM,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAA;AAE7D,eAAO,MAAM,cAAc,qIAA6E,CAAA;AAExG,eAAO,MAAM,kBAAkB,mXAGW,CAAA;AAE1C,MAAM,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,GAAG,aAAc,oBAAoB,WAAW,OAAO,EAAE,KAAG,MASxE,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,WAAY,QAAQ,aAAa,MAAM,KAAG,kBAWvE,CAAA"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;AACnD,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,IAAI,CAAA;AAE1D,MAAM,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAA;AAE7D,eAAO,MAAM,cAAc,qIAA6E,CAAA;AAExG,eAAO,MAAM,kBAAkB,mXAGW,CAAA;AAE1C,MAAM,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,GAAG,aAAc,oBAAoB,WAAW,OAAO,EAAE,KAAG,MASxE,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,WAAY,QAAQ,aAAa,MAAM,KAAG,kBAWvE,CAAA"}
package/dist/util.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /// <reference lib="es2022" />
2
2
  import { Schema } from '@livestore/utils/effect';
3
3
  export const SqlValueSchema = Schema.Union(Schema.String, Schema.Number, Schema.Uint8Array, Schema.Null);
4
- export const PreparedBindValues = Schema.Union(Schema.Array(SqlValueSchema), Schema.Record(Schema.String, SqlValueSchema)).pipe(Schema.brand('PreparedBindValues'));
4
+ export const PreparedBindValues = Schema.Union(Schema.Array(SqlValueSchema), Schema.Record({ key: Schema.String, value: SqlValueSchema })).pipe(Schema.brand('PreparedBindValues'));
5
5
  /**
6
6
  * This is a tag function for tagged literals.
7
7
  * it lets us get syntax highlighting on SQL queries in VSCode, but
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAG9B,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAOhD,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;AAExG,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,KAAK,CAC5C,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,EAC5B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAC7C,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAA;AAI1C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,QAA8B,EAAE,GAAG,IAAe,EAAU,EAAE;IAChF,IAAI,GAAG,GAAG,EAAE,CAAA;IAEZ,KAAK,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACtC,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IAED,6CAA6C;IAC7C,OAAO,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAC5C,CAAC,CAAA;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,MAAgB,EAAE,SAAiB,EAAsB,EAAE;IAC3F,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAAmC,CAAA;IAErE,MAAM,MAAM,GAAiB,EAAE,CAAA;IAC/B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,KAAK,CAAA;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,MAA4B,CAAA;AACrC,CAAC,CAAA"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAG9B,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAOhD,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;AAExG,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,KAAK,CAC5C,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,EAC5B,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAC7D,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAA;AAI1C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,QAA8B,EAAE,GAAG,IAAe,EAAU,EAAE;IAChF,IAAI,GAAG,GAAG,EAAE,CAAA;IAEZ,KAAK,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACtC,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IAED,6CAA6C;IAC7C,OAAO,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAC5C,CAAC,CAAA;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,MAAgB,EAAE,SAAiB,EAAsB,EAAE;IAC3F,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAAmC,CAAA;IAErE,MAAM,MAAM,GAAiB,EAAE,CAAA;IAC/B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,KAAK,CAAA;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,MAA4B,CAAA;AACrC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const liveStoreVersion: string;
2
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,QAAsB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import packageJson from '../package.json' with { type: 'json' };
2
+ export const liveStoreVersion = packageJson.version;
3
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,iBAAiB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAA;AAE/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAA"}
package/package.json CHANGED
@@ -1,13 +1,12 @@
1
1
  {
2
2
  "name": "@livestore/common",
3
- "version": "0.0.54-dev.5",
3
+ "version": "0.0.55-dev.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
7
7
  "types": "./dist/index.d.ts",
8
8
  "default": "./dist/index.js"
9
9
  },
10
- "./package.json": "./package.json",
11
10
  "./sql-queries": {
12
11
  "types": "./dist/sql-queries/index.d.ts",
13
12
  "default": "./dist/sql-queries/index.js"
@@ -20,9 +19,6 @@
20
19
  "types": "./dist/index.d.ts",
21
20
  "typesVersions": {
22
21
  "*": {
23
- "package.json": [
24
- "./package.json"
25
- ],
26
22
  "schema": [
27
23
  "./dist/schema/index.d.ts"
28
24
  ],
@@ -33,11 +29,11 @@
33
29
  },
34
30
  "dependencies": {
35
31
  "@opentelemetry/api": "^1.9.0",
36
- "@livestore/utils": "0.0.54-dev.5",
37
- "effect-db-schema": "0.0.54-dev.5"
32
+ "@livestore/utils": "0.0.55-dev.0",
33
+ "effect-db-schema": "0.0.55-dev.0"
38
34
  },
39
35
  "devDependencies": {
40
- "vitest": "^1.6.0"
36
+ "vitest": "^2.0.4"
41
37
  },
42
38
  "publishConfig": {
43
39
  "access": "public"
@@ -1,6 +1,5 @@
1
- import type { Stream, SubscriptionRef, TRef } from '@livestore/utils/effect'
2
- import { Schema } from '@livestore/utils/effect'
3
- import type * as otel from '@opentelemetry/api'
1
+ import type { Cause, Queue, Scope, SubscriptionRef } from '@livestore/utils/effect'
2
+ import { Effect, Schema, Stream } from '@livestore/utils/effect'
4
3
 
5
4
  import type { LiveStoreSchema, MutationEvent } from './schema/index.js'
6
5
  import type { PreparedBindValues } from './util.js'
@@ -22,7 +21,6 @@ export type InMemoryDatabase = {
22
21
  _tag: 'InMemoryDatabase'
23
22
  prepare(queryStr: string): PreparedStatement
24
23
  execute(queryStr: string, bindValues: PreparedBindValues | undefined): GetRowsChangedCount
25
- dangerouslyReset(): Promise<void>
26
24
  export(): Uint8Array
27
25
  }
28
26
 
@@ -38,27 +36,53 @@ export type NetworkStatus = {
38
36
  timestampMs: number
39
37
  }
40
38
 
39
+ export const BootStateProgress = Schema.Struct({
40
+ done: Schema.Number,
41
+ total: Schema.Number,
42
+ })
43
+
44
+ export const BootStatus = Schema.Union(
45
+ Schema.Struct({ stage: Schema.Literal('loading') }),
46
+ Schema.Struct({ stage: Schema.Literal('migrating'), progress: BootStateProgress }),
47
+ Schema.Struct({ stage: Schema.Literal('rehydrating'), progress: BootStateProgress }),
48
+ Schema.Struct({ stage: Schema.Literal('syncing'), progress: BootStateProgress }),
49
+ Schema.Struct({ stage: Schema.Literal('done') }),
50
+ )
51
+
52
+ export type BootStatus = typeof BootStatus.Type
53
+
41
54
  export type Coordinator = {
55
+ isShutdownRef: { current: boolean }
42
56
  devtools: {
57
+ enabled: boolean
43
58
  channelId: string
59
+ /**
60
+ * Returns a dedicated message port for the store which is established over the message port passed in
61
+ */
62
+ connect: (options: {
63
+ port: MessagePort
64
+ connectionId: string
65
+ }) => Effect.Effect<{ storeMessagePort: MessagePort }, UnexpectedError>
44
66
  }
45
- hasLock: TRef.TRef<boolean>
46
- syncMutations: Stream.Stream<MutationEvent.AnyEncoded>
47
- execute(queryStr: string, bindValues: PreparedBindValues | undefined, span: otel.Span | undefined): Promise<void>
48
- mutate(mutationEventEncoded: MutationEvent.Any, options: { span: otel.Span; persisted: boolean }): Promise<void>
49
- dangerouslyReset(mode: ResetMode): Promise<void>
50
- export(span: otel.Span | undefined): Promise<Uint8Array | undefined>
67
+ // TODO is exposing the lock status really needed (or only relevant for web adapter?)
68
+ lockStatus: SubscriptionRef.SubscriptionRef<LockStatus>
69
+ syncMutations: Stream.Stream<MutationEvent.AnyEncoded, UnexpectedError>
70
+ execute(queryStr: string, bindValues: PreparedBindValues | undefined): Effect.Effect<void, UnexpectedError>
71
+ mutate(mutationEventEncoded: MutationEvent.Any, options: { persisted: boolean }): Effect.Effect<void, UnexpectedError>
72
+ dangerouslyReset(mode: ResetMode): Effect.Effect<void, UnexpectedError>
73
+ export: Effect.Effect<Uint8Array | undefined, UnexpectedError>
51
74
  /**
52
75
  * This is different from `export` since in `getInitialSnapshot` is usually the place for migrations etc to happen
53
76
  */
54
- getInitialSnapshot(): Promise<Uint8Array>
55
- getMutationLogData(): Promise<Uint8Array>
56
- shutdown(): Promise<void>
77
+ getInitialSnapshot: Effect.Effect<Uint8Array, UnexpectedError>
78
+ getMutationLogData: Effect.Effect<Uint8Array, UnexpectedError>
57
79
  networkStatus: SubscriptionRef.SubscriptionRef<NetworkStatus>
58
80
  }
59
81
 
60
82
  export type GetRowsChangedCount = () => number
61
83
 
84
+ export type LockStatus = 'has-lock' | 'no-lock'
85
+
62
86
  export type BootDb = {
63
87
  _tag: 'BootDb'
64
88
  execute(queryStr: string, bindValues?: PreparedBindValues): void
@@ -67,6 +91,32 @@ export type BootDb = {
67
91
  txn(callback: () => void): void
68
92
  }
69
93
 
94
+ export class UnexpectedError extends Schema.TaggedError<UnexpectedError>()('LiveStore.UnexpectedError', {
95
+ cause: Schema.AnyError,
96
+ payload: Schema.optional(Schema.Any),
97
+ }) {
98
+ static mapToUnexpectedError = <A, E, R>(effect: Effect.Effect<A, E, R>) =>
99
+ effect.pipe(
100
+ Effect.tapCauseLogPretty,
101
+ Effect.mapError((cause) => (Schema.is(UnexpectedError)(cause) ? cause : new UnexpectedError({ cause }))),
102
+ Effect.catchAllDefect((cause) => new UnexpectedError({ cause })),
103
+ )
104
+
105
+ static mapToUnexpectedErrorStream = <A, E, R>(stream: Stream.Stream<A, E, R>) =>
106
+ stream.pipe(
107
+ Stream.mapError((cause) => (Schema.is(UnexpectedError)(cause) ? cause : new UnexpectedError({ cause }))),
108
+ )
109
+ }
110
+
111
+ export class SqliteError extends Schema.TaggedError<SqliteError>()('LiveStore.SqliteError', {
112
+ sql: Schema.String,
113
+ bindValues: Schema.Record({ key: Schema.String, value: Schema.Any }),
114
+ /** The SQLite result code */
115
+ code: Schema.Number,
116
+ /** The original SQLite3 error */
117
+ cause: Schema.AnyError,
118
+ }) {}
119
+
70
120
  // TODO possibly allow a combination of these options
71
121
  // TODO allow a way to stream the migration progress back to the app
72
122
  export type MigrationOptions<TSchema extends LiveStoreSchema = LiveStoreSchema> =
@@ -77,8 +127,7 @@ export type MigrationOptions<TSchema extends LiveStoreSchema = LiveStoreSchema>
77
127
  }
78
128
  | {
79
129
  strategy: 'manual'
80
- migrate: (oldDb: Uint8Array) => Promise<Uint8Array> | Uint8Array
81
- hooks?: Partial<MigrationHooks>
130
+ migrate: (oldDb: Uint8Array) => Uint8Array | Promise<Uint8Array> | Effect.Effect<Uint8Array, unknown>
82
131
  }
83
132
 
84
133
  export type MigrationHooks = {
@@ -90,7 +139,7 @@ export type MigrationHooks = {
90
139
  post: MigrationHook
91
140
  }
92
141
 
93
- export type MigrationHook = (db: InMemoryDatabase) => void | Promise<void>
142
+ export type MigrationHook = (db: InMemoryDatabase) => void | Promise<void> | Effect.Effect<void, unknown>
94
143
 
95
144
  export type MigrationOptionsFromMutationLog<TSchema extends LiveStoreSchema = LiveStoreSchema> = {
96
145
  strategy: 'from-mutation-log'
@@ -107,7 +156,8 @@ export type MigrationOptionsFromMutationLog<TSchema extends LiveStoreSchema = Li
107
156
  }
108
157
 
109
158
  export type StoreAdapterFactory = (opts: {
110
- otelTracer: otel.Tracer
111
- otelContext: otel.Context
112
159
  schema: LiveStoreSchema
113
- }) => StoreAdapter | Promise<StoreAdapter>
160
+ devtoolsEnabled: boolean
161
+ bootStatusQueue: Queue.Queue<BootStatus>
162
+ shutdown: (cause: Cause.Cause<any>) => Effect.Effect<void>
163
+ }) => Effect.Effect<StoreAdapter, UnexpectedError, Scope.Scope>
@@ -71,7 +71,7 @@ export class BoundArray<V> {
71
71
  this.sizeLimit = sizeLimit
72
72
  }
73
73
 
74
- static make = <V>(sizeLimit: number, initial: ReadonlyArray<V> = []): BoundArray<V> => {
74
+ static make = <V>(sizeLimit: number, initial: Iterable<V> = []): BoundArray<V> => {
75
75
  const b = new BoundArray<V>(sizeLimit)
76
76
  for (const v of initial) {
77
77
  b.push(v)
package/src/debug-info.ts CHANGED
@@ -21,15 +21,7 @@ export const SlowQueryInfo = Schema.Struct({
21
21
  startTimePerfNow: Schema.Number,
22
22
  })
23
23
 
24
- const BoundArraySchemaFromSelf = <ItemDecoded, ItemEncoded>(_elSchema: Schema.Schema<ItemDecoded, ItemEncoded>) =>
25
- Schema.declare((_): _ is BoundArray<ItemDecoded> => _ instanceof BoundArray, {
26
- identifier: `BoundArrayFromSelf`,
27
- pretty: () => (_) => `BoundArray(${_.length})`,
28
- arbitrary: () => (fc) => fc.anything() as any,
29
- equivalence: () => (a, b) => a === b,
30
- }) as any as Schema.Schema<BoundArray<ItemDecoded>, BoundArray<ItemEncoded>>
31
-
32
- const BoundArraySchemaFromSelf_ = <A, I, R>(
24
+ const BoundArraySchemaFromSelf = <A, I, R>(
33
25
  item: Schema.Schema<A, I, R>,
34
26
  ): Schema.Schema<BoundArray<A>, BoundArray<I>, R> =>
35
27
  Schema.declare(
@@ -52,16 +44,19 @@ const BoundArraySchemaFromSelf_ = <A, I, R>(
52
44
  },
53
45
  {
54
46
  description: `BoundArray<${Schema.format(item)}>`,
47
+ pretty: () => (_) => `BoundArray(${_.length})`,
48
+ arbitrary: () => (fc) => fc.anything() as any,
49
+ equivalence: () => (a, b) => a === b,
55
50
  },
56
51
  )
57
52
 
58
- const BoundArraySchema = <ItemDecoded, ItemEncoded>(elSchema: Schema.Schema<ItemDecoded, ItemEncoded>) =>
53
+ export const BoundArraySchema = <ItemDecoded, ItemEncoded>(elSchema: Schema.Schema<ItemDecoded, ItemEncoded>) =>
59
54
  Schema.transform(
60
55
  Schema.Struct({
61
56
  size: Schema.Number,
62
57
  items: Schema.Array(elSchema),
63
58
  }),
64
- BoundArraySchemaFromSelf(elSchema as any as Schema.Schema<ItemDecoded>),
59
+ BoundArraySchemaFromSelf(Schema.typeSchema(elSchema)),
65
60
  {
66
61
  encode: (_) => ({ size: _.sizeLimit, items: [..._] }),
67
62
  decode: (_) => BoundArray.make(_.size, _.items),
@@ -75,13 +70,6 @@ export const DebugInfo = Schema.Struct({
75
70
  events: BoundArraySchema(Schema.Tuple(Schema.String, Schema.Any)),
76
71
  })
77
72
 
78
- // export interface DebugInfo {
79
- // slowQueries: BoundArray<SlowQueryInfo>
80
- // queryFrameDuration: number
81
- // queryFrameCount: number
82
- // events: BoundArray<[queryStr: string, bindValues: Bindable | undefined]>
83
- // }
84
-
85
73
  export type DebugInfo = typeof DebugInfo.Type
86
74
 
87
75
  export const MutableDebugInfo = Schema.mutable(DebugInfo)