@lssm/lib.contracts 0.0.0-canary-20251217083314 → 0.0.0-canary-20251220002821

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 (91) hide show
  1. package/LICENSE +21 -0
  2. package/dist/app-config/contracts.d.ts +50 -50
  3. package/dist/app-config/contracts.js +54 -56
  4. package/dist/app-config/events.d.ts +27 -27
  5. package/dist/app-config/events.js +31 -33
  6. package/dist/app-config/lifecycle-contracts.d.ts +80 -80
  7. package/dist/app-config/lifecycle-contracts.js +66 -68
  8. package/dist/client/react/form-render.d.ts +6 -6
  9. package/dist/client/react/form-render.js +15 -15
  10. package/dist/contracts-adapter-hydration.js +2 -2
  11. package/dist/data-views/query-generator.d.ts +2 -2
  12. package/dist/data-views/query-generator.js +1 -1
  13. package/dist/data-views/runtime.d.ts +2 -2
  14. package/dist/data-views/runtime.js +2 -2
  15. package/dist/docs/index.js +0 -6
  16. package/dist/docs/meta.docs.js +3 -0
  17. package/dist/docs/tech-contracts.docs.js +3 -0
  18. package/dist/forms.d.ts +4 -4
  19. package/dist/forms.js +3 -2
  20. package/dist/index.js +2 -3
  21. package/dist/integrations/contracts.d.ts +105 -104
  22. package/dist/integrations/contracts.js +63 -65
  23. package/dist/integrations/openbanking/contracts/accounts.d.ts +69 -68
  24. package/dist/integrations/openbanking/contracts/accounts.js +29 -31
  25. package/dist/integrations/openbanking/contracts/balances.d.ts +37 -36
  26. package/dist/integrations/openbanking/contracts/balances.js +16 -18
  27. package/dist/integrations/openbanking/contracts/transactions.d.ts +51 -50
  28. package/dist/integrations/openbanking/contracts/transactions.js +30 -32
  29. package/dist/integrations/openbanking/guards.js +1 -0
  30. package/dist/integrations/openbanking/models.d.ts +55 -55
  31. package/dist/integrations/openbanking/models.js +58 -60
  32. package/dist/integrations/providers/impls/gmail-inbound.js +1 -1
  33. package/dist/integrations/providers/impls/gmail-outbound.js +4 -4
  34. package/dist/integrations/providers/impls/mistral-llm.d.ts +1 -1
  35. package/dist/integrations/providers/impls/mistral-llm.js +1 -1
  36. package/dist/integrations/providers/impls/powens-openbanking.d.ts +1 -1
  37. package/dist/integrations/providers/impls/provider-factory.js +4 -1
  38. package/dist/integrations/providers/impls/qdrant-vector.js +2 -2
  39. package/dist/integrations/runtime.d.ts +1 -1
  40. package/dist/integrations/runtime.js +1 -1
  41. package/dist/integrations/secrets/manager.js +1 -1
  42. package/dist/jobs/handlers/gmail-sync-handler.d.ts +1 -1
  43. package/dist/jsonschema.d.ts +3 -3
  44. package/dist/knowledge/contracts.d.ts +69 -68
  45. package/dist/knowledge/contracts.js +42 -44
  46. package/dist/markdown.d.ts +1 -1
  47. package/dist/markdown.js +1 -1
  48. package/dist/onboarding-base.d.ts +29 -29
  49. package/dist/onboarding-base.js +20 -22
  50. package/dist/ownership.d.ts +4 -6
  51. package/dist/ownership.js +4 -5
  52. package/dist/presentations.d.ts +3 -3
  53. package/dist/presentations.v2.js +5 -2
  54. package/dist/promptRegistry.d.ts +2 -2
  55. package/dist/registry.d.ts +1 -1
  56. package/dist/registry.js +1 -0
  57. package/dist/resources.js +4 -1
  58. package/dist/schema/dist/index.js +4683 -6
  59. package/dist/schema-to-markdown.d.ts +1 -1
  60. package/dist/schema-to-markdown.js +1 -1
  61. package/dist/server/graphql-pothos.js +0 -1
  62. package/dist/server/rest-elysia.d.ts +1 -1
  63. package/dist/server/rest-express.js +0 -3
  64. package/dist/server/rest-generic.d.ts +1 -1
  65. package/dist/server/rest-generic.js +0 -1
  66. package/dist/server/rest-next-mcp.js +1 -1
  67. package/dist/server/rest-next-pages.js +0 -3
  68. package/dist/workflow/adapters/db-adapter.d.ts +19 -7
  69. package/dist/workflow/adapters/db-adapter.js +3 -3
  70. package/dist/workflow/expression.js +3 -2
  71. package/dist/workflow/validation.js +1 -0
  72. package/package.json +19 -18
  73. package/dist/docs/PUBLISHING.docblock.d.ts +0 -6
  74. package/dist/docs/PUBLISHING.docblock.js +0 -17
  75. package/dist/docs/tech/PHASE_1_QUICKSTART.docblock.d.ts +0 -6
  76. package/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js +0 -17
  77. package/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.d.ts +0 -6
  78. package/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js +0 -17
  79. package/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.d.ts +0 -6
  80. package/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js +0 -17
  81. package/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.d.ts +0 -6
  82. package/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js +0 -17
  83. package/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.d.ts +0 -6
  84. package/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js +0 -17
  85. package/dist/schema/dist/EnumType.js +0 -2
  86. package/dist/schema/dist/FieldType.js +0 -49
  87. package/dist/schema/dist/ScalarTypeEnum.js +0 -236
  88. package/dist/schema/dist/SchemaModel.js +0 -39
  89. package/dist/schema/dist/entity/defineEntity.js +0 -1
  90. package/dist/schema/dist/entity/index.js +0 -2
  91. package/dist/schema/dist/entity/types.js +0 -1
@@ -1,139 +1,140 @@
1
- import { ContractSpec } from "../../../spec.js";
1
+ import { AnyContractSpec, ContractSpec } from "../../../spec.js";
2
2
  import { SpecRegistry } from "../../../registry.js";
3
- import * as _lssm_lib_schema450 from "@lssm/lib.schema";
3
+ import "../../../index.js";
4
+ import * as _lssm_lib_schema515 from "@lssm/lib.schema";
4
5
  import { SchemaModel } from "@lssm/lib.schema";
5
6
 
6
7
  //#region src/integrations/openbanking/contracts/transactions.d.ts
7
8
  declare const OpenBankingListTransactions: ContractSpec<SchemaModel<{
8
9
  tenantId: {
9
- type: _lssm_lib_schema450.FieldType<string, string>;
10
+ type: _lssm_lib_schema515.FieldType<string, string>;
10
11
  isOptional: false;
11
12
  };
12
13
  accountId: {
13
- type: _lssm_lib_schema450.FieldType<string, string>;
14
+ type: _lssm_lib_schema515.FieldType<string, string>;
14
15
  isOptional: false;
15
16
  };
16
17
  from: {
17
- type: _lssm_lib_schema450.FieldType<Date, string>;
18
+ type: _lssm_lib_schema515.FieldType<Date, string>;
18
19
  isOptional: true;
19
20
  };
20
21
  to: {
21
- type: _lssm_lib_schema450.FieldType<Date, string>;
22
+ type: _lssm_lib_schema515.FieldType<Date, string>;
22
23
  isOptional: true;
23
24
  };
24
25
  cursor: {
25
- type: _lssm_lib_schema450.FieldType<string, string>;
26
+ type: _lssm_lib_schema515.FieldType<string, string>;
26
27
  isOptional: true;
27
28
  };
28
29
  pageSize: {
29
- type: _lssm_lib_schema450.FieldType<number, number>;
30
+ type: _lssm_lib_schema515.FieldType<number, number>;
30
31
  isOptional: true;
31
32
  };
32
33
  direction: {
33
- type: _lssm_lib_schema450.FieldType<string, string>;
34
+ type: _lssm_lib_schema515.FieldType<string, string>;
34
35
  isOptional: true;
35
36
  };
36
37
  minimumAmount: {
37
- type: _lssm_lib_schema450.FieldType<number, number>;
38
+ type: _lssm_lib_schema515.FieldType<number, number>;
38
39
  isOptional: true;
39
40
  };
40
41
  maximumAmount: {
41
- type: _lssm_lib_schema450.FieldType<number, number>;
42
+ type: _lssm_lib_schema515.FieldType<number, number>;
42
43
  isOptional: true;
43
44
  };
44
45
  category: {
45
- type: _lssm_lib_schema450.FieldType<string, string>;
46
+ type: _lssm_lib_schema515.FieldType<string, string>;
46
47
  isOptional: true;
47
48
  };
48
49
  }>, SchemaModel<{
49
50
  transactions: {
50
51
  type: SchemaModel<{
51
52
  id: {
52
- type: _lssm_lib_schema450.FieldType<string, string>;
53
+ type: _lssm_lib_schema515.FieldType<string, string>;
53
54
  isOptional: false;
54
55
  };
55
56
  accountId: {
56
- type: _lssm_lib_schema450.FieldType<string, string>;
57
+ type: _lssm_lib_schema515.FieldType<string, string>;
57
58
  isOptional: false;
58
59
  };
59
60
  tenantId: {
60
- type: _lssm_lib_schema450.FieldType<string, string>;
61
+ type: _lssm_lib_schema515.FieldType<string, string>;
61
62
  isOptional: false;
62
63
  };
63
64
  connectionId: {
64
- type: _lssm_lib_schema450.FieldType<string, string>;
65
+ type: _lssm_lib_schema515.FieldType<string, string>;
65
66
  isOptional: false;
66
67
  };
67
68
  externalId: {
68
- type: _lssm_lib_schema450.FieldType<string, string>;
69
+ type: _lssm_lib_schema515.FieldType<string, string>;
69
70
  isOptional: false;
70
71
  };
71
72
  amount: {
72
- type: _lssm_lib_schema450.FieldType<number, number>;
73
+ type: _lssm_lib_schema515.FieldType<number, number>;
73
74
  isOptional: false;
74
75
  };
75
76
  currency: {
76
- type: _lssm_lib_schema450.FieldType<string, string>;
77
+ type: _lssm_lib_schema515.FieldType<string, string>;
77
78
  isOptional: false;
78
79
  };
79
80
  date: {
80
- type: _lssm_lib_schema450.FieldType<Date, string>;
81
+ type: _lssm_lib_schema515.FieldType<Date, string>;
81
82
  isOptional: false;
82
83
  };
83
84
  bookingDate: {
84
- type: _lssm_lib_schema450.FieldType<Date, string>;
85
+ type: _lssm_lib_schema515.FieldType<Date, string>;
85
86
  isOptional: true;
86
87
  };
87
88
  valueDate: {
88
- type: _lssm_lib_schema450.FieldType<Date, string>;
89
+ type: _lssm_lib_schema515.FieldType<Date, string>;
89
90
  isOptional: true;
90
91
  };
91
92
  description: {
92
- type: _lssm_lib_schema450.FieldType<string, string>;
93
+ type: _lssm_lib_schema515.FieldType<string, string>;
93
94
  isOptional: true;
94
95
  };
95
96
  counterpartyName: {
96
- type: _lssm_lib_schema450.FieldType<string, string>;
97
+ type: _lssm_lib_schema515.FieldType<string, string>;
97
98
  isOptional: true;
98
99
  };
99
100
  counterpartyAccount: {
100
- type: _lssm_lib_schema450.FieldType<string, string>;
101
+ type: _lssm_lib_schema515.FieldType<string, string>;
101
102
  isOptional: true;
102
103
  };
103
104
  merchantCategoryCode: {
104
- type: _lssm_lib_schema450.FieldType<string, string>;
105
+ type: _lssm_lib_schema515.FieldType<string, string>;
105
106
  isOptional: true;
106
107
  };
107
108
  rawCategory: {
108
- type: _lssm_lib_schema450.FieldType<string, string>;
109
+ type: _lssm_lib_schema515.FieldType<string, string>;
109
110
  isOptional: true;
110
111
  };
111
112
  standardizedCategory: {
112
- type: _lssm_lib_schema450.FieldType<string, string>;
113
+ type: _lssm_lib_schema515.FieldType<string, string>;
113
114
  isOptional: true;
114
115
  };
115
116
  transactionType: {
116
- type: _lssm_lib_schema450.FieldType<string, string>;
117
+ type: _lssm_lib_schema515.FieldType<string, string>;
117
118
  isOptional: false;
118
119
  };
119
120
  status: {
120
- type: _lssm_lib_schema450.FieldType<string, string>;
121
+ type: _lssm_lib_schema515.FieldType<string, string>;
121
122
  isOptional: false;
122
123
  };
123
124
  runningBalance: {
124
- type: _lssm_lib_schema450.FieldType<number, number>;
125
+ type: _lssm_lib_schema515.FieldType<number, number>;
125
126
  isOptional: true;
126
127
  };
127
128
  metadata: {
128
- type: _lssm_lib_schema450.FieldType<Record<string, unknown>, Record<string, unknown>>;
129
+ type: _lssm_lib_schema515.FieldType<Record<string, unknown>, Record<string, unknown>>;
129
130
  isOptional: true;
130
131
  };
131
132
  createdAt: {
132
- type: _lssm_lib_schema450.FieldType<Date, string>;
133
+ type: _lssm_lib_schema515.FieldType<Date, string>;
133
134
  isOptional: false;
134
135
  };
135
136
  updatedAt: {
136
- type: _lssm_lib_schema450.FieldType<Date, string>;
137
+ type: _lssm_lib_schema515.FieldType<Date, string>;
137
138
  isOptional: false;
138
139
  };
139
140
  }>;
@@ -141,71 +142,71 @@ declare const OpenBankingListTransactions: ContractSpec<SchemaModel<{
141
142
  isArray: true;
142
143
  };
143
144
  nextCursor: {
144
- type: _lssm_lib_schema450.FieldType<string, string>;
145
+ type: _lssm_lib_schema515.FieldType<string, string>;
145
146
  isOptional: true;
146
147
  };
147
148
  hasMore: {
148
- type: _lssm_lib_schema450.FieldType<boolean, boolean>;
149
+ type: _lssm_lib_schema515.FieldType<boolean, boolean>;
149
150
  isOptional: true;
150
151
  };
151
152
  }>, undefined>;
152
153
  declare const OpenBankingSyncTransactions: ContractSpec<SchemaModel<{
153
154
  tenantId: {
154
- type: _lssm_lib_schema450.FieldType<string, string>;
155
+ type: _lssm_lib_schema515.FieldType<string, string>;
155
156
  isOptional: false;
156
157
  };
157
158
  accountId: {
158
- type: _lssm_lib_schema450.FieldType<string, string>;
159
+ type: _lssm_lib_schema515.FieldType<string, string>;
159
160
  isOptional: false;
160
161
  };
161
162
  from: {
162
- type: _lssm_lib_schema450.FieldType<Date, string>;
163
+ type: _lssm_lib_schema515.FieldType<Date, string>;
163
164
  isOptional: true;
164
165
  };
165
166
  to: {
166
- type: _lssm_lib_schema450.FieldType<Date, string>;
167
+ type: _lssm_lib_schema515.FieldType<Date, string>;
167
168
  isOptional: true;
168
169
  };
169
170
  connectionId: {
170
- type: _lssm_lib_schema450.FieldType<string, string>;
171
+ type: _lssm_lib_schema515.FieldType<string, string>;
171
172
  isOptional: true;
172
173
  };
173
174
  includePending: {
174
- type: _lssm_lib_schema450.FieldType<boolean, boolean>;
175
+ type: _lssm_lib_schema515.FieldType<boolean, boolean>;
175
176
  isOptional: true;
176
177
  };
177
178
  backfillDays: {
178
- type: _lssm_lib_schema450.FieldType<number, number>;
179
+ type: _lssm_lib_schema515.FieldType<number, number>;
179
180
  isOptional: true;
180
181
  };
181
182
  }>, SchemaModel<{
182
183
  synced: {
183
- type: _lssm_lib_schema450.FieldType<number, number>;
184
+ type: _lssm_lib_schema515.FieldType<number, number>;
184
185
  isOptional: false;
185
186
  };
186
187
  failed: {
187
- type: _lssm_lib_schema450.FieldType<number, number>;
188
+ type: _lssm_lib_schema515.FieldType<number, number>;
188
189
  isOptional: false;
189
190
  };
190
191
  earliestSyncedAt: {
191
- type: _lssm_lib_schema450.FieldType<Date, string>;
192
+ type: _lssm_lib_schema515.FieldType<Date, string>;
192
193
  isOptional: true;
193
194
  };
194
195
  latestSyncedAt: {
195
- type: _lssm_lib_schema450.FieldType<Date, string>;
196
+ type: _lssm_lib_schema515.FieldType<Date, string>;
196
197
  isOptional: true;
197
198
  };
198
199
  nextSinceToken: {
199
- type: _lssm_lib_schema450.FieldType<string, string>;
200
+ type: _lssm_lib_schema515.FieldType<string, string>;
200
201
  isOptional: true;
201
202
  };
202
203
  errors: {
203
- type: _lssm_lib_schema450.FieldType<string, string>;
204
+ type: _lssm_lib_schema515.FieldType<string, string>;
204
205
  isArray: true;
205
206
  isOptional: true;
206
207
  };
207
208
  }>, undefined>;
208
- declare const openBankingTransactionContracts: Record<string, ContractSpec<any, any>>;
209
+ declare const openBankingTransactionContracts: Record<string, AnyContractSpec>;
209
210
  declare function registerOpenBankingTransactionContracts(registry: SpecRegistry): SpecRegistry;
210
211
  //#endregion
211
212
  export { OpenBankingListTransactions, OpenBankingSyncTransactions, openBankingTransactionContracts, registerOpenBankingTransactionContracts };
@@ -1,58 +1,56 @@
1
- import { ScalarTypeEnum } from "../../../schema/dist/ScalarTypeEnum.js";
2
- import { SchemaModel } from "../../../schema/dist/SchemaModel.js";
3
- import "../../../schema/dist/index.js";
1
+ import { E5, x8 } from "../../../schema/dist/index.js";
4
2
  import { defineCommand, defineQuery } from "../../../spec.js";
5
3
  import { BankTransactionRecord } from "../models.js";
6
4
  import { OPENBANKING_TELEMETRY_EVENTS } from "../telemetry.js";
7
5
 
8
6
  //#region src/integrations/openbanking/contracts/transactions.ts
9
- const OpenBankingListTransactionsInput = new SchemaModel({
7
+ const OpenBankingListTransactionsInput = new x8({
10
8
  name: "OpenBankingListTransactionsInput",
11
9
  description: "Parameters for listing bank transactions from the canonical ledger.",
12
10
  fields: {
13
11
  tenantId: {
14
- type: ScalarTypeEnum.ID(),
12
+ type: E5.ID(),
15
13
  isOptional: false
16
14
  },
17
15
  accountId: {
18
- type: ScalarTypeEnum.ID(),
16
+ type: E5.ID(),
19
17
  isOptional: false
20
18
  },
21
19
  from: {
22
- type: ScalarTypeEnum.DateTime(),
20
+ type: E5.DateTime(),
23
21
  isOptional: true
24
22
  },
25
23
  to: {
26
- type: ScalarTypeEnum.DateTime(),
24
+ type: E5.DateTime(),
27
25
  isOptional: true
28
26
  },
29
27
  cursor: {
30
- type: ScalarTypeEnum.String_unsecure(),
28
+ type: E5.String_unsecure(),
31
29
  isOptional: true
32
30
  },
33
31
  pageSize: {
34
- type: ScalarTypeEnum.Int_unsecure(),
32
+ type: E5.Int_unsecure(),
35
33
  isOptional: true
36
34
  },
37
35
  direction: {
38
- type: ScalarTypeEnum.String_unsecure(),
36
+ type: E5.String_unsecure(),
39
37
  isOptional: true
40
38
  },
41
39
  minimumAmount: {
42
- type: ScalarTypeEnum.Float_unsecure(),
40
+ type: E5.Float_unsecure(),
43
41
  isOptional: true
44
42
  },
45
43
  maximumAmount: {
46
- type: ScalarTypeEnum.Float_unsecure(),
44
+ type: E5.Float_unsecure(),
47
45
  isOptional: true
48
46
  },
49
47
  category: {
50
- type: ScalarTypeEnum.String_unsecure(),
48
+ type: E5.String_unsecure(),
51
49
  isOptional: true
52
50
  }
53
51
  }
54
52
  });
55
- const OpenBankingListTransactionsOutput = new SchemaModel({
53
+ const OpenBankingListTransactionsOutput = new x8({
56
54
  name: "OpenBankingListTransactionsOutput",
57
55
  description: "Paginated list of transactions for a bank account.",
58
56
  fields: {
@@ -62,75 +60,75 @@ const OpenBankingListTransactionsOutput = new SchemaModel({
62
60
  isArray: true
63
61
  },
64
62
  nextCursor: {
65
- type: ScalarTypeEnum.String_unsecure(),
63
+ type: E5.String_unsecure(),
66
64
  isOptional: true
67
65
  },
68
66
  hasMore: {
69
- type: ScalarTypeEnum.Boolean(),
67
+ type: E5.Boolean(),
70
68
  isOptional: true
71
69
  }
72
70
  }
73
71
  });
74
- const OpenBankingSyncTransactionsInput = new SchemaModel({
72
+ const OpenBankingSyncTransactionsInput = new x8({
75
73
  name: "OpenBankingSyncTransactionsInput",
76
74
  description: "Command payload to synchronise transactions from the open banking provider into the canonical ledger.",
77
75
  fields: {
78
76
  tenantId: {
79
- type: ScalarTypeEnum.ID(),
77
+ type: E5.ID(),
80
78
  isOptional: false
81
79
  },
82
80
  accountId: {
83
- type: ScalarTypeEnum.ID(),
81
+ type: E5.ID(),
84
82
  isOptional: false
85
83
  },
86
84
  from: {
87
- type: ScalarTypeEnum.DateTime(),
85
+ type: E5.DateTime(),
88
86
  isOptional: true
89
87
  },
90
88
  to: {
91
- type: ScalarTypeEnum.DateTime(),
89
+ type: E5.DateTime(),
92
90
  isOptional: true
93
91
  },
94
92
  connectionId: {
95
- type: ScalarTypeEnum.ID(),
93
+ type: E5.ID(),
96
94
  isOptional: true
97
95
  },
98
96
  includePending: {
99
- type: ScalarTypeEnum.Boolean(),
97
+ type: E5.Boolean(),
100
98
  isOptional: true
101
99
  },
102
100
  backfillDays: {
103
- type: ScalarTypeEnum.Int_unsecure(),
101
+ type: E5.Int_unsecure(),
104
102
  isOptional: true
105
103
  }
106
104
  }
107
105
  });
108
- const OpenBankingSyncTransactionsOutput = new SchemaModel({
106
+ const OpenBankingSyncTransactionsOutput = new x8({
109
107
  name: "OpenBankingSyncTransactionsOutput",
110
108
  description: "Result of a transaction synchronisation run.",
111
109
  fields: {
112
110
  synced: {
113
- type: ScalarTypeEnum.Int_unsecure(),
111
+ type: E5.Int_unsecure(),
114
112
  isOptional: false
115
113
  },
116
114
  failed: {
117
- type: ScalarTypeEnum.Int_unsecure(),
115
+ type: E5.Int_unsecure(),
118
116
  isOptional: false
119
117
  },
120
118
  earliestSyncedAt: {
121
- type: ScalarTypeEnum.DateTime(),
119
+ type: E5.DateTime(),
122
120
  isOptional: true
123
121
  },
124
122
  latestSyncedAt: {
125
- type: ScalarTypeEnum.DateTime(),
123
+ type: E5.DateTime(),
126
124
  isOptional: true
127
125
  },
128
126
  nextSinceToken: {
129
- type: ScalarTypeEnum.String_unsecure(),
127
+ type: E5.String_unsecure(),
130
128
  isOptional: true
131
129
  },
132
130
  errors: {
133
- type: ScalarTypeEnum.String_unsecure(),
131
+ type: E5.String_unsecure(),
134
132
  isArray: true,
135
133
  isOptional: true
136
134
  }
@@ -25,6 +25,7 @@ function ensurePrimaryOpenBankingIntegration(config) {
25
25
  function assertPrimaryOpenBankingReady(config) {
26
26
  const result = ensurePrimaryOpenBankingIntegration(config);
27
27
  if (!result.ok) throw new Error(result.error ?? "Open banking integration not available.");
28
+ if (!result.integration) throw new Error(result.error ?? "Open banking integration not available.");
28
29
  return result.integration;
29
30
  }
30
31