@lssm/lib.contracts 0.0.0-canary-20251217052941 → 0.0.0-canary-20251217060433

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 (248) hide show
  1. package/dist/app-config/app-config.feature.d.ts +11 -0
  2. package/dist/app-config/branding.d.ts +55 -0
  3. package/dist/app-config/contracts.d.ts +244 -0
  4. package/dist/app-config/docs/app-config.docblock.d.ts +6 -0
  5. package/dist/app-config/events.d.ts +122 -0
  6. package/dist/app-config/index.d.ts +9 -0
  7. package/dist/app-config/lifecycle-contracts.d.ts +382 -0
  8. package/dist/app-config/lifecycle.d.ts +27 -0
  9. package/dist/app-config/runtime.d.ts +114 -0
  10. package/dist/app-config/spec.d.ts +175 -0
  11. package/dist/app-config/validation.d.ts +47 -0
  12. package/dist/capabilities/docs/capabilities.docblock.d.ts +6 -0
  13. package/dist/capabilities/openbanking.d.ts +9 -0
  14. package/dist/capabilities.d.ts +48 -0
  15. package/dist/client/index.d.ts +6 -0
  16. package/dist/client/react/drivers/rn-reusables.d.ts +22 -0
  17. package/dist/client/react/drivers/shadcn.d.ts +12 -0
  18. package/dist/client/react/feature-render.d.ts +19 -0
  19. package/dist/client/react/form-render.d.ts +91 -0
  20. package/dist/client/react/index.d.ts +5 -0
  21. package/dist/contract-registry/index.d.ts +3 -0
  22. package/dist/contract-registry/schemas.d.ts +124 -0
  23. package/dist/contract-registry/types.d.ts +46 -0
  24. package/dist/contracts-adapter-hydration.d.ts +15 -0
  25. package/dist/contracts-adapter-input.d.ts +10 -0
  26. package/dist/data-views/docs/data-views.docblock.d.ts +6 -0
  27. package/dist/data-views/query-generator.d.ts +39 -0
  28. package/dist/data-views/runtime.d.ts +26 -0
  29. package/dist/data-views.d.ts +131 -0
  30. package/dist/docs/PUBLISHING.docblock.d.ts +6 -0
  31. package/dist/docs/accessibility_wcag_compliance_specs.docblock.d.ts +6 -0
  32. package/dist/docs/index.d.ts +6 -0
  33. package/dist/docs/meta.docs.d.ts +6 -0
  34. package/dist/docs/presentations.d.ts +33 -0
  35. package/dist/docs/registry.d.ts +24 -0
  36. package/dist/docs/tech/PHASE_1_QUICKSTART.docblock.d.ts +6 -0
  37. package/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.d.ts +6 -0
  38. package/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.d.ts +6 -0
  39. package/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.d.ts +6 -0
  40. package/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.d.ts +6 -0
  41. package/dist/docs/tech/auth/better-auth-nextjs.docblock.d.ts +6 -0
  42. package/dist/docs/tech/contracts/README.docblock.d.ts +6 -0
  43. package/dist/docs/tech/contracts/create-subscription.docblock.d.ts +6 -0
  44. package/dist/docs/tech/contracts/graphql-typed-outputs.docblock.d.ts +6 -0
  45. package/dist/docs/tech/contracts/migrations.docblock.d.ts +6 -0
  46. package/dist/docs/tech/contracts/openapi-export.docblock.d.ts +6 -0
  47. package/dist/docs/tech/contracts/ops-to-presentation-linking.docblock.d.ts +6 -0
  48. package/dist/docs/tech/contracts/overlays.docblock.d.ts +6 -0
  49. package/dist/docs/tech/contracts/tests.docblock.d.ts +6 -0
  50. package/dist/docs/tech/contracts/themes.docblock.d.ts +6 -0
  51. package/dist/docs/tech/contracts/vertical-pocket-family-office.docblock.d.ts +6 -0
  52. package/dist/docs/tech/lifecycle-stage-system.docblock.d.ts +6 -0
  53. package/dist/docs/tech/llm/llm-integration.docblock.d.ts +7 -0
  54. package/dist/docs/tech/mcp-endpoints.docblock.d.ts +6 -0
  55. package/dist/docs/tech/presentation-runtime.docblock.d.ts +6 -0
  56. package/dist/docs/tech/schema/README.docblock.d.ts +6 -0
  57. package/dist/docs/tech/studio/learning-events.docblock.d.ts +6 -0
  58. package/dist/docs/tech/studio/learning-journeys.docblock.d.ts +6 -0
  59. package/dist/docs/tech/studio/platform-admin-panel.docblock.d.ts +6 -0
  60. package/dist/docs/tech/studio/project-access-teams.docblock.d.ts +6 -0
  61. package/dist/docs/tech/studio/project-routing.docblock.d.ts +6 -0
  62. package/dist/docs/tech/studio/sandbox-unlogged.docblock.d.ts +6 -0
  63. package/dist/docs/tech/studio/team-invitations.docblock.d.ts +6 -0
  64. package/dist/docs/tech/studio/workspace-ops.docblock.d.ts +6 -0
  65. package/dist/docs/tech/studio/workspaces.docblock.d.ts +6 -0
  66. package/dist/docs/tech/telemetry-ingest.docblock.d.ts +6 -0
  67. package/dist/docs/tech/templates/runtime.docblock.d.ts +6 -0
  68. package/dist/docs/tech/vscode-extension.docblock.d.ts +6 -0
  69. package/dist/docs/tech/workflows/overview.docblock.d.ts +6 -0
  70. package/dist/docs/tech-contracts.docs.d.ts +6 -0
  71. package/dist/docs/types.d.ts +41 -0
  72. package/dist/events.d.ts +47 -0
  73. package/dist/experiments/docs/experiments.docblock.d.ts +6 -0
  74. package/dist/experiments/evaluator.d.ts +37 -0
  75. package/dist/experiments/spec-resolver.d.ts +16 -0
  76. package/dist/experiments/spec.d.ts +89 -0
  77. package/dist/features.d.ts +96 -0
  78. package/dist/forms/docs/forms.docblock.d.ts +6 -0
  79. package/dist/forms.d.ts +258 -0
  80. package/dist/index.d.ts +127 -0
  81. package/dist/install.d.ts +76 -0
  82. package/dist/integrations/binding.d.ts +17 -0
  83. package/dist/integrations/connection.d.ts +51 -0
  84. package/dist/integrations/contracts.d.ts +435 -0
  85. package/dist/integrations/docs/integrations.docblock.d.ts +6 -0
  86. package/dist/integrations/health.d.ts +21 -0
  87. package/dist/integrations/index.d.ts +34 -0
  88. package/dist/integrations/openbanking/contracts/accounts.d.ts +287 -0
  89. package/dist/integrations/openbanking/contracts/balances.d.ts +163 -0
  90. package/dist/integrations/openbanking/contracts/index.d.ts +10 -0
  91. package/dist/integrations/openbanking/contracts/transactions.d.ts +211 -0
  92. package/dist/integrations/openbanking/guards.d.ts +12 -0
  93. package/dist/integrations/openbanking/models.d.ts +228 -0
  94. package/dist/integrations/openbanking/openbanking.feature.d.ts +11 -0
  95. package/dist/integrations/openbanking/telemetry.d.ts +15 -0
  96. package/dist/integrations/providers/calendar.d.ts +78 -0
  97. package/dist/integrations/providers/elevenlabs.d.ts +7 -0
  98. package/dist/integrations/providers/email.d.ts +86 -0
  99. package/dist/integrations/providers/embedding.d.ts +24 -0
  100. package/dist/integrations/providers/gcs-storage.d.ts +7 -0
  101. package/dist/integrations/providers/gmail.d.ts +7 -0
  102. package/dist/integrations/providers/google-calendar.d.ts +7 -0
  103. package/dist/integrations/providers/impls/elevenlabs-voice.d.ts +20 -0
  104. package/dist/integrations/providers/impls/gcs-storage.d.ts +24 -0
  105. package/dist/integrations/providers/impls/gmail-inbound.d.ts +26 -0
  106. package/dist/integrations/providers/impls/gmail-outbound.d.ts +18 -0
  107. package/dist/integrations/providers/impls/google-calendar.d.ts +23 -0
  108. package/dist/integrations/providers/impls/index.d.ts +15 -0
  109. package/dist/integrations/providers/impls/mistral-embedding.d.ts +23 -0
  110. package/dist/integrations/providers/impls/mistral-llm.d.ts +31 -0
  111. package/dist/integrations/providers/impls/postmark-email.d.ts +19 -0
  112. package/dist/integrations/providers/impls/powens-client.d.ts +124 -0
  113. package/dist/integrations/providers/impls/powens-openbanking.d.ts +27 -0
  114. package/dist/integrations/providers/impls/provider-factory.d.ts +26 -0
  115. package/dist/integrations/providers/impls/qdrant-vector.d.ts +24 -0
  116. package/dist/integrations/providers/impls/stripe-payments.d.ts +28 -0
  117. package/dist/integrations/providers/impls/twilio-sms.d.ts +20 -0
  118. package/dist/integrations/providers/index.d.ts +22 -0
  119. package/dist/integrations/providers/llm.d.ts +82 -0
  120. package/dist/integrations/providers/mistral.d.ts +7 -0
  121. package/dist/integrations/providers/openbanking.d.ts +128 -0
  122. package/dist/integrations/providers/payments.d.ts +109 -0
  123. package/dist/integrations/providers/postmark.d.ts +7 -0
  124. package/dist/integrations/providers/powens.d.ts +7 -0
  125. package/dist/integrations/providers/qdrant.d.ts +7 -0
  126. package/dist/integrations/providers/registry.d.ts +11 -0
  127. package/dist/integrations/providers/sms.d.ts +34 -0
  128. package/dist/integrations/providers/storage.d.ts +60 -0
  129. package/dist/integrations/providers/stripe.d.ts +7 -0
  130. package/dist/integrations/providers/twilio-sms.d.ts +7 -0
  131. package/dist/integrations/providers/vector-store.d.ts +43 -0
  132. package/dist/integrations/providers/voice.d.ts +34 -0
  133. package/dist/integrations/runtime.d.ts +99 -0
  134. package/dist/integrations/secrets/aws-secret-manager.d.ts +31 -0
  135. package/dist/integrations/secrets/env-secret-provider.d.ts +31 -0
  136. package/dist/integrations/secrets/gcp-secret-manager.d.ts +32 -0
  137. package/dist/integrations/secrets/gcp-secret-manager.js +1 -1
  138. package/dist/integrations/secrets/index.d.ts +7 -0
  139. package/dist/integrations/secrets/manager.d.ts +47 -0
  140. package/dist/integrations/secrets/provider.d.ts +52 -0
  141. package/dist/integrations/secrets/scaleway-secret-manager.d.ts +38 -0
  142. package/dist/integrations/spec.d.ts +79 -0
  143. package/dist/jobs/define-job.d.ts +18 -0
  144. package/dist/jobs/gcp-cloud-tasks.d.ts +41 -0
  145. package/dist/jobs/gcp-pubsub.d.ts +25 -0
  146. package/dist/jobs/handlers/gmail-sync-handler.d.ts +9 -0
  147. package/dist/jobs/handlers/index.d.ts +9 -0
  148. package/dist/jobs/handlers/ping-handler.d.ts +10 -0
  149. package/dist/jobs/handlers/storage-document-handler.d.ts +12 -0
  150. package/dist/jobs/index.d.ts +3 -0
  151. package/dist/jobs/memory-queue.d.ts +18 -0
  152. package/dist/jobs/queue.d.ts +131 -0
  153. package/dist/jobs/scaleway-sqs-queue.d.ts +30 -0
  154. package/dist/jsonschema.d.ts +27 -0
  155. package/dist/knowledge/binding.d.ts +25 -0
  156. package/dist/knowledge/contracts.d.ts +316 -0
  157. package/dist/knowledge/docs/knowledge.docblock.d.ts +6 -0
  158. package/dist/knowledge/index.d.ts +10 -0
  159. package/dist/knowledge/ingestion/document-processor.d.ts +24 -0
  160. package/dist/knowledge/ingestion/embedding-service.d.ts +12 -0
  161. package/dist/knowledge/ingestion/gmail-adapter.d.ts +18 -0
  162. package/dist/knowledge/ingestion/index.d.ts +6 -0
  163. package/dist/knowledge/ingestion/storage-adapter.d.ts +15 -0
  164. package/dist/knowledge/ingestion/vector-indexer.d.ts +18 -0
  165. package/dist/knowledge/query/index.d.ts +2 -0
  166. package/dist/knowledge/query/service.d.ts +29 -0
  167. package/dist/knowledge/runtime.d.ts +32 -0
  168. package/dist/knowledge/source.d.ts +32 -0
  169. package/dist/knowledge/spaces/email-threads.d.ts +7 -0
  170. package/dist/knowledge/spaces/financial-docs.d.ts +7 -0
  171. package/dist/knowledge/spaces/financial-overview.d.ts +7 -0
  172. package/dist/knowledge/spaces/index.d.ts +7 -0
  173. package/dist/knowledge/spaces/product-canon.d.ts +7 -0
  174. package/dist/knowledge/spaces/support-faq.d.ts +7 -0
  175. package/dist/knowledge/spaces/uploaded-docs.d.ts +7 -0
  176. package/dist/knowledge/spec.d.ts +52 -0
  177. package/dist/llm/exporters.d.ts +67 -0
  178. package/dist/llm/index.d.ts +4 -0
  179. package/dist/llm/prompts.d.ts +51 -0
  180. package/dist/llm/types.d.ts +213 -0
  181. package/dist/markdown.d.ts +21 -0
  182. package/dist/migrations.d.ts +52 -0
  183. package/dist/onboarding-base.d.ts +137 -0
  184. package/dist/openapi.d.ts +31 -0
  185. package/dist/openbanking/docs/openbanking.docblock.d.ts +6 -0
  186. package/dist/ownership.d.ts +75 -0
  187. package/dist/policy/docs/policy.docblock.d.ts +6 -0
  188. package/dist/policy/engine.d.ts +39 -0
  189. package/dist/policy/opa-adapter.d.ts +45 -0
  190. package/dist/policy/spec.d.ts +114 -0
  191. package/dist/presentations/docs/presentations-conventions.docblock.d.ts +6 -0
  192. package/dist/presentations.backcompat.d.ts +7 -0
  193. package/dist/presentations.d.ts +98 -0
  194. package/dist/presentations.v2.d.ts +114 -0
  195. package/dist/prompt.d.ts +60 -0
  196. package/dist/promptRegistry.d.ts +15 -0
  197. package/dist/regenerator/adapters.d.ts +19 -0
  198. package/dist/regenerator/docs/regenerator.docblock.d.ts +6 -0
  199. package/dist/regenerator/executor.d.ts +70 -0
  200. package/dist/regenerator/index.d.ts +7 -0
  201. package/dist/regenerator/service.d.ts +33 -0
  202. package/dist/regenerator/sinks.d.ts +26 -0
  203. package/dist/regenerator/types.d.ts +107 -0
  204. package/dist/regenerator/utils.d.ts +9 -0
  205. package/dist/registry.d.ts +73 -0
  206. package/dist/resources.d.ts +64 -0
  207. package/dist/schema-to-markdown.d.ts +54 -0
  208. package/dist/server/graphql-pothos.d.ts +27 -0
  209. package/dist/server/index.d.ts +9 -0
  210. package/dist/server/mcp/createMcpServer.d.ts +15 -0
  211. package/dist/server/mcp/mcpTypes.d.ts +29 -0
  212. package/dist/server/mcp/registerPresentations.d.ts +7 -0
  213. package/dist/server/mcp/registerPrompts.d.ts +8 -0
  214. package/dist/server/mcp/registerResources.d.ts +8 -0
  215. package/dist/server/mcp/registerTools.d.ts +8 -0
  216. package/dist/server/provider-mcp.d.ts +2 -0
  217. package/dist/server/rest-elysia.d.ts +40 -0
  218. package/dist/server/rest-express.d.ts +16 -0
  219. package/dist/server/rest-generic.d.ts +32 -0
  220. package/dist/server/rest-next-app.d.ts +35 -0
  221. package/dist/server/rest-next-mcp.d.ts +11 -0
  222. package/dist/server/rest-next-pages.d.ts +9 -0
  223. package/dist/spec.d.ts +195 -0
  224. package/dist/telemetry/anomaly.d.ts +27 -0
  225. package/dist/telemetry/docs/telemetry.docblock.d.ts +6 -0
  226. package/dist/telemetry/index.d.ts +4 -0
  227. package/dist/telemetry/spec.d.ts +98 -0
  228. package/dist/telemetry/tracker.d.ts +51 -0
  229. package/dist/tests/index.d.ts +3 -0
  230. package/dist/tests/runner.d.ts +43 -0
  231. package/dist/tests/spec.d.ts +89 -0
  232. package/dist/themes.d.ts +55 -0
  233. package/dist/translations/catalog.d.ts +28 -0
  234. package/dist/translations/tenant.d.ts +15 -0
  235. package/dist/types/all.d.ts +60 -0
  236. package/dist/types.d.ts +88 -0
  237. package/dist/workflow/adapters/db-adapter.d.ts +34 -0
  238. package/dist/workflow/adapters/file-adapter.d.ts +14 -0
  239. package/dist/workflow/adapters/index.d.ts +4 -0
  240. package/dist/workflow/adapters/memory-store.d.ts +18 -0
  241. package/dist/workflow/expression.d.ts +9 -0
  242. package/dist/workflow/index.d.ts +10 -0
  243. package/dist/workflow/runner.d.ts +74 -0
  244. package/dist/workflow/sla-monitor.d.ts +20 -0
  245. package/dist/workflow/spec.d.ts +99 -0
  246. package/dist/workflow/state.d.ts +35 -0
  247. package/dist/workflow/validation.d.ts +28 -0
  248. package/package.json +250 -250
@@ -0,0 +1,21 @@
1
+ import { PresentationRegistry } from "./presentations.js";
2
+ import { SpecRegistry } from "./registry.js";
3
+ import { FeatureRegistry } from "./features.js";
4
+
5
+ //#region src/markdown.d.ts
6
+
7
+ /**
8
+ * Render simple Markdown docs for each spec.
9
+ * Useful for dev portals and repo docs generation.
10
+ */
11
+ declare function specsToMarkdown(reg: SpecRegistry, extras?: {
12
+ presentations?: PresentationRegistry;
13
+ features?: FeatureRegistry;
14
+ }): string;
15
+ /** Render presentations and features as additional sections. */
16
+ declare function docsToMarkdown(reg: SpecRegistry, extras: {
17
+ presentations?: PresentationRegistry;
18
+ features?: FeatureRegistry;
19
+ }): string;
20
+ //#endregion
21
+ export { docsToMarkdown, specsToMarkdown };
@@ -0,0 +1,52 @@
1
+ import { OwnerShipMeta } from "./ownership.js";
2
+
3
+ //#region src/migrations.d.ts
4
+ type MigrationStepKind = 'schema' | 'data' | 'validation';
5
+ interface MigrationCheck {
6
+ description: string;
7
+ expression: string;
8
+ }
9
+ interface MigrationStepBase {
10
+ kind: MigrationStepKind;
11
+ description?: string;
12
+ timeoutMs?: number;
13
+ retries?: number;
14
+ preChecks?: MigrationCheck[];
15
+ postChecks?: MigrationCheck[];
16
+ }
17
+ interface SchemaMigrationStep extends MigrationStepBase {
18
+ kind: 'schema';
19
+ sql: string;
20
+ }
21
+ interface DataMigrationStep extends MigrationStepBase {
22
+ kind: 'data';
23
+ script: string;
24
+ }
25
+ interface ValidationMigrationStep extends MigrationStepBase {
26
+ kind: 'validation';
27
+ assertion: string;
28
+ }
29
+ type MigrationStep = SchemaMigrationStep | DataMigrationStep | ValidationMigrationStep;
30
+ interface MigrationMeta extends OwnerShipMeta {
31
+ /** Fully qualified migration name (e.g., "sigil.db.2025_01_add_users"). */
32
+ name: string;
33
+ /** Increment when the migration changes. */
34
+ version: number;
35
+ }
36
+ interface MigrationPlan {
37
+ up: MigrationStep[];
38
+ down?: MigrationStep[];
39
+ }
40
+ interface MigrationSpec {
41
+ meta: MigrationMeta;
42
+ plan: MigrationPlan;
43
+ dependencies?: string[];
44
+ }
45
+ declare class MigrationRegistry {
46
+ private readonly items;
47
+ register(spec: MigrationSpec): this;
48
+ list(): MigrationSpec[];
49
+ get(name: string, version?: number): MigrationSpec | undefined;
50
+ }
51
+ //#endregion
52
+ export { DataMigrationStep, MigrationCheck, MigrationMeta, MigrationPlan, MigrationRegistry, MigrationSpec, MigrationStep, MigrationStepBase, MigrationStepKind, SchemaMigrationStep, ValidationMigrationStep };
@@ -0,0 +1,137 @@
1
+ import { ContractSpec } from "./spec.js";
2
+ import * as _lssm_lib_schema7 from "@lssm/lib.schema";
3
+ import { SchemaModel } from "@lssm/lib.schema";
4
+
5
+ //#region src/onboarding-base.d.ts
6
+ /** Save/update onboarding draft (auto-save during flow) */
7
+ declare const SaveOnboardingDraftInput: SchemaModel<{
8
+ data: {
9
+ type: _lssm_lib_schema7.FieldType<unknown, unknown>;
10
+ isOptional: false;
11
+ };
12
+ }>;
13
+ declare const SaveOnboardingDraftOutput: SchemaModel<{
14
+ id: {
15
+ type: _lssm_lib_schema7.FieldType<string, string>;
16
+ isOptional: false;
17
+ };
18
+ organizationId: {
19
+ type: _lssm_lib_schema7.FieldType<string, string>;
20
+ isOptional: false;
21
+ };
22
+ }>;
23
+ declare const SaveOnboardingDraftBaseSpec: ContractSpec<SchemaModel<{
24
+ data: {
25
+ type: _lssm_lib_schema7.FieldType<unknown, unknown>;
26
+ isOptional: false;
27
+ };
28
+ }>, SchemaModel<{
29
+ id: {
30
+ type: _lssm_lib_schema7.FieldType<string, string>;
31
+ isOptional: false;
32
+ };
33
+ organizationId: {
34
+ type: _lssm_lib_schema7.FieldType<string, string>;
35
+ isOptional: false;
36
+ };
37
+ }>, undefined>;
38
+ /** Get current onboarding draft (on mount/restore) */
39
+ declare const GetOnboardingDraftOutput: SchemaModel<{
40
+ id: {
41
+ type: _lssm_lib_schema7.FieldType<string, string>;
42
+ isOptional: true;
43
+ };
44
+ organizationId: {
45
+ type: _lssm_lib_schema7.FieldType<string, string>;
46
+ isOptional: true;
47
+ };
48
+ data: {
49
+ type: _lssm_lib_schema7.FieldType<unknown, unknown>;
50
+ isOptional: true;
51
+ };
52
+ createdAt: {
53
+ type: _lssm_lib_schema7.FieldType<Date, string>;
54
+ isOptional: true;
55
+ };
56
+ updatedAt: {
57
+ type: _lssm_lib_schema7.FieldType<Date, string>;
58
+ isOptional: true;
59
+ };
60
+ }>;
61
+ declare const GetOnboardingDraftBaseSpec: ContractSpec<_lssm_lib_schema7.AnySchemaModel, SchemaModel<{
62
+ id: {
63
+ type: _lssm_lib_schema7.FieldType<string, string>;
64
+ isOptional: true;
65
+ };
66
+ organizationId: {
67
+ type: _lssm_lib_schema7.FieldType<string, string>;
68
+ isOptional: true;
69
+ };
70
+ data: {
71
+ type: _lssm_lib_schema7.FieldType<unknown, unknown>;
72
+ isOptional: true;
73
+ };
74
+ createdAt: {
75
+ type: _lssm_lib_schema7.FieldType<Date, string>;
76
+ isOptional: true;
77
+ };
78
+ updatedAt: {
79
+ type: _lssm_lib_schema7.FieldType<Date, string>;
80
+ isOptional: true;
81
+ };
82
+ }>, undefined>;
83
+ /** Delete onboarding draft (cleanup after completion or cancel) */
84
+ declare const DeleteOnboardingDraftOutput: SchemaModel<{
85
+ ok: {
86
+ type: _lssm_lib_schema7.FieldType<boolean, boolean>;
87
+ isOptional: false;
88
+ };
89
+ }>;
90
+ declare const DeleteOnboardingDraftBaseSpec: ContractSpec<_lssm_lib_schema7.AnySchemaModel, SchemaModel<{
91
+ ok: {
92
+ type: _lssm_lib_schema7.FieldType<boolean, boolean>;
93
+ isOptional: false;
94
+ };
95
+ }>, undefined>;
96
+ /** Complete onboarding (final submit, creates entities) */
97
+ declare const CompleteOnboardingBaseInput: SchemaModel<{
98
+ data: {
99
+ type: _lssm_lib_schema7.FieldType<unknown, unknown>;
100
+ isOptional: false;
101
+ };
102
+ }>;
103
+ declare const CompleteOnboardingBaseOutput: SchemaModel<{
104
+ success: {
105
+ type: _lssm_lib_schema7.FieldType<boolean, boolean>;
106
+ isOptional: false;
107
+ };
108
+ userId: {
109
+ type: _lssm_lib_schema7.FieldType<string, string>;
110
+ isOptional: true;
111
+ };
112
+ organizationId: {
113
+ type: _lssm_lib_schema7.FieldType<string, string>;
114
+ isOptional: true;
115
+ };
116
+ }>;
117
+ declare const CompleteOnboardingBaseSpec: ContractSpec<SchemaModel<{
118
+ data: {
119
+ type: _lssm_lib_schema7.FieldType<unknown, unknown>;
120
+ isOptional: false;
121
+ };
122
+ }>, SchemaModel<{
123
+ success: {
124
+ type: _lssm_lib_schema7.FieldType<boolean, boolean>;
125
+ isOptional: false;
126
+ };
127
+ userId: {
128
+ type: _lssm_lib_schema7.FieldType<string, string>;
129
+ isOptional: true;
130
+ };
131
+ organizationId: {
132
+ type: _lssm_lib_schema7.FieldType<string, string>;
133
+ isOptional: true;
134
+ };
135
+ }>, undefined>;
136
+ //#endregion
137
+ export { CompleteOnboardingBaseInput, CompleteOnboardingBaseOutput, CompleteOnboardingBaseSpec, DeleteOnboardingDraftBaseSpec, DeleteOnboardingDraftOutput, GetOnboardingDraftBaseSpec, GetOnboardingDraftOutput, SaveOnboardingDraftBaseSpec, SaveOnboardingDraftInput, SaveOnboardingDraftOutput };
@@ -0,0 +1,31 @@
1
+ import { SpecRegistry } from "./registry.js";
2
+
3
+ //#region src/openapi.d.ts
4
+
5
+ interface OpenApiServer {
6
+ url: string;
7
+ description?: string;
8
+ }
9
+ interface OpenApiExportOptions {
10
+ title?: string;
11
+ version?: string;
12
+ description?: string;
13
+ servers?: OpenApiServer[];
14
+ }
15
+ type OpenApiSchemaObject = Record<string, unknown>;
16
+ interface OpenApiDocument {
17
+ openapi: '3.1.0';
18
+ info: {
19
+ title: string;
20
+ version: string;
21
+ description?: string;
22
+ };
23
+ servers?: OpenApiServer[];
24
+ paths: Record<string, Record<string, unknown>>;
25
+ components: {
26
+ schemas: Record<string, OpenApiSchemaObject>;
27
+ };
28
+ }
29
+ declare function openApiForRegistry(registry: SpecRegistry, options?: OpenApiExportOptions): OpenApiDocument;
30
+ //#endregion
31
+ export { OpenApiDocument, OpenApiExportOptions, OpenApiServer, openApiForRegistry };
@@ -0,0 +1,6 @@
1
+ import { DocBlock } from "@lssm/lib.contracts/docs";
2
+
3
+ //#region src/openbanking/docs/openbanking.docblock.d.ts
4
+ declare const tech_contracts_openbanking_DocBlocks: DocBlock[];
5
+ //#endregion
6
+ export { tech_contracts_openbanking_DocBlocks };
@@ -0,0 +1,75 @@
1
+ //#region src/ownership.d.ts
2
+ declare const StabilityEnum: {
3
+ readonly Idea: "idea";
4
+ readonly InCreation: "in_creation";
5
+ readonly Experimental: "experimental";
6
+ readonly Beta: "beta";
7
+ readonly Stable: "stable";
8
+ readonly Deprecated: "deprecated";
9
+ };
10
+ type Stability = (typeof StabilityEnum)[keyof typeof StabilityEnum];
11
+ declare const OwnersEnum: {
12
+ readonly ProductColiving: "product.coliving";
13
+ readonly ProductStrit: "product.strit";
14
+ readonly ProductArtisanos: "product.artisanos";
15
+ readonly PlatformSigil: "platform.sigil";
16
+ readonly PlatformMarketplace: "platform.marketplace";
17
+ readonly PlatformContent: "platform.content";
18
+ readonly PlatformFeatureFlags: "platform.featureflags";
19
+ };
20
+ type Owner = (typeof OwnersEnum)[keyof typeof OwnersEnum] | (string & {});
21
+ declare const Owners: {
22
+ readonly ProductColiving: "product.coliving";
23
+ readonly ProductStrit: "product.strit";
24
+ readonly ProductArtisanos: "product.artisanos";
25
+ readonly PlatformSigil: "platform.sigil";
26
+ readonly PlatformMarketplace: "platform.marketplace";
27
+ readonly PlatformContent: "platform.content";
28
+ readonly PlatformFeatureFlags: "platform.featureflags";
29
+ };
30
+ declare const TagsEnum: {
31
+ readonly Spots: "spots";
32
+ readonly Collectivity: "collectivity";
33
+ readonly Marketplace: "marketplace";
34
+ readonly Sellers: "sellers";
35
+ readonly Auth: "auth";
36
+ readonly Login: "login";
37
+ readonly Signup: "signup";
38
+ readonly Guide: "guide";
39
+ readonly Docs: "docs";
40
+ readonly I18n: "i18n";
41
+ readonly AtomicPages: "atomic:pages";
42
+ readonly Incident: "incident";
43
+ readonly Hygiene: "hygiene";
44
+ readonly WeeklyPulse: "weekly_pulse";
45
+ readonly WebAuth: "webauth";
46
+ };
47
+ type Tag = (typeof TagsEnum)[keyof typeof TagsEnum] | (string & {});
48
+ declare const Tags: {
49
+ readonly Spots: "spots";
50
+ readonly Collectivity: "collectivity";
51
+ readonly Marketplace: "marketplace";
52
+ readonly Sellers: "sellers";
53
+ readonly Auth: "auth";
54
+ readonly Login: "login";
55
+ readonly Signup: "signup";
56
+ readonly Guide: "guide";
57
+ readonly Docs: "docs";
58
+ readonly I18n: "i18n";
59
+ readonly AtomicPages: "atomic:pages";
60
+ readonly Incident: "incident";
61
+ readonly Hygiene: "hygiene";
62
+ readonly WeeklyPulse: "weekly_pulse";
63
+ readonly WebAuth: "webauth";
64
+ };
65
+ interface OwnerShipMeta {
66
+ version?: number;
67
+ title: string;
68
+ description: string;
69
+ domain: string;
70
+ owners: Owner[];
71
+ tags: Tag[];
72
+ stability: Stability;
73
+ }
74
+ //#endregion
75
+ export { Owner, OwnerShipMeta, Owners, OwnersEnum, Stability, StabilityEnum, Tag, Tags, TagsEnum };
@@ -0,0 +1,6 @@
1
+ import { DocBlock } from "@lssm/lib.contracts/docs";
2
+
3
+ //#region src/policy/docs/policy.docblock.d.ts
4
+ declare const tech_contracts_policy_DocBlocks: DocBlock[];
5
+ //#endregion
6
+ export { tech_contracts_policy_DocBlocks };
@@ -0,0 +1,39 @@
1
+ import { PolicyRef, PolicyRegistry } from "./spec.js";
2
+ import { PolicyDecision } from "../types.js";
3
+
4
+ //#region src/policy/engine.d.ts
5
+ interface SubjectRelationship {
6
+ relation: string;
7
+ object: string;
8
+ objectType?: string;
9
+ }
10
+ interface SubjectContext {
11
+ roles?: string[];
12
+ attributes?: Record<string, unknown>;
13
+ relationships?: SubjectRelationship[];
14
+ }
15
+ interface ResourceContext {
16
+ type: string;
17
+ id?: string;
18
+ fields?: string[];
19
+ attributes?: Record<string, unknown>;
20
+ }
21
+ interface DecisionContext {
22
+ subject: SubjectContext;
23
+ resource: ResourceContext;
24
+ context?: Record<string, unknown>;
25
+ action: string;
26
+ policies: PolicyRef[];
27
+ consents?: string[];
28
+ flags?: string[];
29
+ }
30
+ declare class PolicyEngine {
31
+ private readonly registry;
32
+ constructor(registry: PolicyRegistry);
33
+ decide(input: DecisionContext): PolicyDecision;
34
+ private resolvePolicies;
35
+ private matchRuleSet;
36
+ private evaluateFields;
37
+ }
38
+ //#endregion
39
+ export { DecisionContext, PolicyEngine, ResourceContext, SubjectContext, SubjectRelationship };
@@ -0,0 +1,45 @@
1
+ import { ConsentDefinition, FieldPolicyRule, PIIPolicy, PolicyMeta, PolicyRule, PolicySpec, RateLimitDefinition, RelationshipDefinition } from "./spec.js";
2
+ import { PolicyDecision } from "../types.js";
3
+ import { DecisionContext } from "./engine.js";
4
+
5
+ //#region src/policy/opa-adapter.d.ts
6
+ interface OPAClient {
7
+ evaluate<T>(decisionPath: string, input: unknown): Promise<T>;
8
+ }
9
+ interface OPAEvaluationResult {
10
+ effect?: 'allow' | 'deny';
11
+ reason?: string;
12
+ fieldDecisions?: PolicyDecision['fieldDecisions'];
13
+ requiredConsents?: string[];
14
+ }
15
+ interface OPAAdapterOptions<Result = OPAEvaluationResult | null> {
16
+ /**
17
+ * Path fed to the OPA client (e.g., "sigil/authz/allow").
18
+ */
19
+ decisionPath: string;
20
+ /**
21
+ * Optional mapper when the OPA client returns a non-standard payload.
22
+ */
23
+ mapResult?: (value: unknown) => Result;
24
+ }
25
+ declare class OPAPolicyAdapter<Result = OPAEvaluationResult | null> {
26
+ private readonly client;
27
+ private readonly options;
28
+ constructor(client: OPAClient, options: OPAAdapterOptions<Result>);
29
+ evaluate(context: DecisionContext, policies: PolicySpec[], engineDecision: PolicyDecision): Promise<PolicyDecision>;
30
+ }
31
+ declare function buildOPAInput(context: DecisionContext, policies: PolicySpec[], engineDecision: PolicyDecision): {
32
+ context: DecisionContext;
33
+ decision: PolicyDecision;
34
+ policies: {
35
+ meta: PolicyMeta;
36
+ rules: PolicyRule[];
37
+ fieldPolicies: FieldPolicyRule[] | undefined;
38
+ pii: PIIPolicy | undefined;
39
+ relationships: RelationshipDefinition[] | undefined;
40
+ consents: ConsentDefinition[] | undefined;
41
+ rateLimits: RateLimitDefinition[] | undefined;
42
+ }[];
43
+ };
44
+ //#endregion
45
+ export { OPAAdapterOptions, OPAClient, OPAEvaluationResult, OPAPolicyAdapter, buildOPAInput };
@@ -0,0 +1,114 @@
1
+ import { OwnerShipMeta } from "../ownership.js";
2
+
3
+ //#region src/policy/spec.d.ts
4
+ type PolicyEffect = 'allow' | 'deny';
5
+ interface RelationshipDefinition {
6
+ subjectType: string;
7
+ relation: string;
8
+ objectType: string;
9
+ description?: string;
10
+ transitive?: boolean;
11
+ }
12
+ interface RelationshipMatcher {
13
+ relation: string;
14
+ objectType?: string;
15
+ objectId?: string;
16
+ }
17
+ interface ConsentDefinition {
18
+ id: string;
19
+ scope: string;
20
+ purpose: string;
21
+ description?: string;
22
+ lawfulBasis?: 'consent' | 'contract' | 'legal_obligation' | 'legitimate_interest';
23
+ expiresInDays?: number;
24
+ required?: boolean;
25
+ }
26
+ interface RateLimitDefinition {
27
+ id: string;
28
+ rpm: number;
29
+ key?: string;
30
+ windowSeconds?: number;
31
+ burst?: number;
32
+ }
33
+ interface PolicyOPAConfig {
34
+ /** Fully-qualified package, e.g. "sigil.authz" */
35
+ package: string;
36
+ /** Optional rule within package (defaults to "allow") */
37
+ decision?: string;
38
+ }
39
+ interface PolicyMeta extends OwnerShipMeta {
40
+ /** Fully-qualified policy name (e.g., "sigil.core.default"). */
41
+ name: string;
42
+ /** Version of the policy; bump on breaking changes. */
43
+ version: number;
44
+ /** Optional scope hint used for discovery. */
45
+ scope?: 'global' | 'feature' | 'operation';
46
+ }
47
+ interface AttributeMatcher {
48
+ equals?: unknown;
49
+ oneOf?: unknown[];
50
+ exists?: boolean;
51
+ }
52
+ interface SubjectMatcher {
53
+ roles?: string[];
54
+ attributes?: Record<string, AttributeMatcher>;
55
+ }
56
+ interface ResourceMatcher {
57
+ type: string;
58
+ fields?: string[];
59
+ attributes?: Record<string, AttributeMatcher>;
60
+ }
61
+ interface PolicyCondition {
62
+ /** Simple expression evaluated against { subject, resource, context }. */
63
+ expression: string;
64
+ }
65
+ interface PolicyRule {
66
+ effect: PolicyEffect;
67
+ actions: string[];
68
+ subject?: SubjectMatcher;
69
+ resource?: ResourceMatcher;
70
+ relationships?: RelationshipMatcher[];
71
+ requiresConsent?: string[];
72
+ flags?: string[];
73
+ rateLimit?: string | RateLimitDefinition;
74
+ escalate?: 'human_review' | null;
75
+ conditions?: PolicyCondition[];
76
+ reason?: string;
77
+ }
78
+ interface FieldPolicyRule {
79
+ effect: PolicyEffect;
80
+ field: string;
81
+ actions: ('read' | 'write')[];
82
+ subject?: SubjectMatcher;
83
+ resource?: ResourceMatcher;
84
+ conditions?: PolicyCondition[];
85
+ reason?: string;
86
+ }
87
+ interface PIIPolicy {
88
+ fields: string[];
89
+ consentRequired?: boolean;
90
+ retentionDays?: number;
91
+ }
92
+ interface PolicySpec {
93
+ meta: PolicyMeta;
94
+ rules: PolicyRule[];
95
+ fieldPolicies?: FieldPolicyRule[];
96
+ pii?: PIIPolicy;
97
+ relationships?: RelationshipDefinition[];
98
+ consents?: ConsentDefinition[];
99
+ rateLimits?: RateLimitDefinition[];
100
+ opa?: PolicyOPAConfig;
101
+ }
102
+ interface PolicyRef {
103
+ name: string;
104
+ version: number;
105
+ }
106
+ declare class PolicyRegistry {
107
+ private readonly items;
108
+ register(spec: PolicySpec): this;
109
+ list(): PolicySpec[];
110
+ get(name: string, version?: number): PolicySpec | undefined;
111
+ }
112
+ declare function makePolicyKey(ref: PolicyRef): string;
113
+ //#endregion
114
+ export { AttributeMatcher, ConsentDefinition, FieldPolicyRule, PIIPolicy, PolicyCondition, PolicyEffect, PolicyMeta, PolicyOPAConfig, PolicyRef, PolicyRegistry, PolicyRule, PolicySpec, RateLimitDefinition, RelationshipDefinition, RelationshipMatcher, ResourceMatcher, SubjectMatcher, makePolicyKey };
@@ -0,0 +1,6 @@
1
+ import { DocBlock } from "@lssm/lib.contracts/docs";
2
+
3
+ //#region src/presentations/docs/presentations-conventions.docblock.d.ts
4
+ declare const tech_contracts_presentations_conventions_DocBlocks: DocBlock[];
5
+ //#endregion
6
+ export { tech_contracts_presentations_conventions_DocBlocks };
@@ -0,0 +1,7 @@
1
+ import { PresentationDescriptorV2 } from "./presentations.v2.js";
2
+ import { PresentationSpec } from "./presentations.js";
3
+
4
+ //#region src/presentations.backcompat.d.ts
5
+ declare function toV2FromV1(v1: PresentationSpec): PresentationDescriptorV2;
6
+ //#endregion
7
+ export { toV2FromV1 };
@@ -0,0 +1,98 @@
1
+ import { Stability } from "./ownership.js";
2
+ import * as _lssm_lib_schema35 from "@lssm/lib.schema";
3
+ import { AnySchemaModel } from "@lssm/lib.schema";
4
+ import z from "zod";
5
+
6
+ //#region src/presentations.d.ts
7
+ /** V1 presentation kinds (back-compat). Prefer V2 descriptors for new work. */
8
+ type PresentationKind = 'web_component' | 'markdown' | 'data';
9
+ /** Minimal metadata for presentations (V1). */
10
+ interface PresentationMeta {
11
+ name: string;
12
+ version: number;
13
+ stability?: Stability;
14
+ owners?: string[];
15
+ tags?: string[];
16
+ description?: string;
17
+ }
18
+ /** Policy for presentations (flags, pii). */
19
+ interface PresentationPolicy {
20
+ flags?: string[];
21
+ pii?: string[];
22
+ }
23
+ /** Web component presentation (V1). */
24
+ interface WebComponentPresentation {
25
+ kind: 'web_component';
26
+ framework: 'react';
27
+ /** Symbolic key resolved by host via component map */
28
+ componentKey: string;
29
+ /** Props schema (validated at runtime) */
30
+ props: AnySchemaModel;
31
+ analytics?: string[];
32
+ }
33
+ /** Markdown presentation (V1). */
34
+ interface MarkdownPresentation {
35
+ kind: 'markdown';
36
+ /** Inline markdown/MDX content */
37
+ content?: string;
38
+ /** Or a resolvable resource URI handled by ResourceRegistry */
39
+ resourceUri?: string;
40
+ }
41
+ /** Data presentation (V1): structured export description. */
42
+ interface DataPresentation {
43
+ kind: 'data';
44
+ mimeType: string;
45
+ /** Structured data schema */
46
+ model: AnySchemaModel;
47
+ }
48
+ type PresentationContent = WebComponentPresentation | MarkdownPresentation | DataPresentation;
49
+ interface PresentationSpec {
50
+ meta: PresentationMeta;
51
+ policy?: PresentationPolicy;
52
+ content: PresentationContent;
53
+ }
54
+ /** In-memory registry for V1 PresentationSpec. */
55
+ declare class PresentationRegistry {
56
+ private items;
57
+ constructor(items?: PresentationSpec[]);
58
+ register(p: PresentationSpec): this;
59
+ list(): PresentationSpec[];
60
+ get(name: string, version?: number): PresentationSpec | undefined;
61
+ }
62
+ declare function jsonSchemaForPresentation(p: PresentationSpec): {
63
+ framework: "react";
64
+ componentKey: string;
65
+ props: z.core.ZodStandardJSONSchemaPayload<_lssm_lib_schema35.TopLevelZodFromModel<_lssm_lib_schema35.SchemaModelFieldsAnyConfig<AnySchemaModel | _lssm_lib_schema35.AnyFieldType | _lssm_lib_schema35.AnyEnumType>>>;
66
+ meta: {
67
+ readonly name: string;
68
+ readonly version: number;
69
+ readonly stability: Stability;
70
+ readonly tags: string[];
71
+ readonly description: string;
72
+ };
73
+ kind: PresentationKind;
74
+ } | {
75
+ content: string | undefined;
76
+ resourceUri: string | undefined;
77
+ meta: {
78
+ readonly name: string;
79
+ readonly version: number;
80
+ readonly stability: Stability;
81
+ readonly tags: string[];
82
+ readonly description: string;
83
+ };
84
+ kind: PresentationKind;
85
+ } | {
86
+ mimeType: string;
87
+ model: z.core.ZodStandardJSONSchemaPayload<_lssm_lib_schema35.TopLevelZodFromModel<_lssm_lib_schema35.SchemaModelFieldsAnyConfig<AnySchemaModel | _lssm_lib_schema35.AnyFieldType | _lssm_lib_schema35.AnyEnumType>>>;
88
+ meta: {
89
+ readonly name: string;
90
+ readonly version: number;
91
+ readonly stability: Stability;
92
+ readonly tags: string[];
93
+ readonly description: string;
94
+ };
95
+ kind: PresentationKind;
96
+ };
97
+ //#endregion
98
+ export { DataPresentation, MarkdownPresentation, PresentationContent, PresentationKind, PresentationMeta, PresentationPolicy, PresentationRegistry, PresentationSpec, WebComponentPresentation, jsonSchemaForPresentation };