@getrheo/contracts 1.0.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 (81) hide show
  1. package/dist/animations.d.ts +226 -0
  2. package/dist/animations.js +1160 -0
  3. package/dist/animations.js.map +1 -0
  4. package/dist/appIntegrations.d.ts +175 -0
  5. package/dist/appIntegrations.js +60 -0
  6. package/dist/appIntegrations.js.map +1 -0
  7. package/dist/billingPeriod.d.ts +26 -0
  8. package/dist/billingPeriod.js +39 -0
  9. package/dist/billingPeriod.js.map +1 -0
  10. package/dist/canvasEditorGates.d.ts +81 -0
  11. package/dist/canvasEditorGates.js +1460 -0
  12. package/dist/canvasEditorGates.js.map +1 -0
  13. package/dist/constants/index.d.ts +30 -0
  14. package/dist/constants/index.js +67 -0
  15. package/dist/constants/index.js.map +1 -0
  16. package/dist/dashboard.d.ts +181856 -0
  17. package/dist/dashboard.js +3348 -0
  18. package/dist/dashboard.js.map +1 -0
  19. package/dist/decisions.d.ts +575 -0
  20. package/dist/decisions.js +1209 -0
  21. package/dist/decisions.js.map +1 -0
  22. package/dist/events.d.ts +231 -0
  23. package/dist/events.js +63 -0
  24. package/dist/events.js.map +1 -0
  25. package/dist/experiments-DN8pQa_D.d.ts +530 -0
  26. package/dist/externalSurfaceIntegrations.d.ts +20 -0
  27. package/dist/externalSurfaceIntegrations.js +49 -0
  28. package/dist/externalSurfaceIntegrations.js.map +1 -0
  29. package/dist/externalSurfaces.d.ts +177 -0
  30. package/dist/externalSurfaces.js +1190 -0
  31. package/dist/externalSurfaces.js.map +1 -0
  32. package/dist/fields.d.ts +8 -0
  33. package/dist/fields.js +15 -0
  34. package/dist/fields.js.map +1 -0
  35. package/dist/flowManifestSchema-CtqygXCK.d.ts +50857 -0
  36. package/dist/flowTemplateComments.d.ts +23 -0
  37. package/dist/flowTemplateComments.js +14 -0
  38. package/dist/flowTemplateComments.js.map +1 -0
  39. package/dist/flowTemplates.d.ts +22 -0
  40. package/dist/flowTemplates.js +73 -0
  41. package/dist/flowTemplates.js.map +1 -0
  42. package/dist/identity.d.ts +35 -0
  43. package/dist/identity.js +18 -0
  44. package/dist/identity.js.map +1 -0
  45. package/dist/imageContentType.d.ts +11 -0
  46. package/dist/imageContentType.js +54 -0
  47. package/dist/imageContentType.js.map +1 -0
  48. package/dist/index.d.ts +224 -0
  49. package/dist/index.js +4557 -0
  50. package/dist/index.js.map +1 -0
  51. package/dist/layerUnion-BzXoAJLY.d.ts +34 -0
  52. package/dist/layers.d.ts +89844 -0
  53. package/dist/layers.js +1507 -0
  54. package/dist/layers.js.map +1 -0
  55. package/dist/layout-D0LpaKG-.d.ts +12896 -0
  56. package/dist/localized.d.ts +17 -0
  57. package/dist/localized.js +18 -0
  58. package/dist/localized.js.map +1 -0
  59. package/dist/manifest.d.ts +22192 -0
  60. package/dist/manifest.js +2163 -0
  61. package/dist/manifest.js.map +1 -0
  62. package/dist/media.d.ts +53 -0
  63. package/dist/media.js +55 -0
  64. package/dist/media.js.map +1 -0
  65. package/dist/planEntitlements.d.ts +65 -0
  66. package/dist/planEntitlements.js +117 -0
  67. package/dist/planEntitlements.js.map +1 -0
  68. package/dist/publish-exports.json +102 -0
  69. package/dist/screens.d.ts +33586 -0
  70. package/dist/screens.js +1439 -0
  71. package/dist/screens.js.map +1 -0
  72. package/dist/sdk.d.ts +145942 -0
  73. package/dist/sdk.js +3424 -0
  74. package/dist/sdk.js.map +1 -0
  75. package/dist/sdkAttributes.d.ts +11 -0
  76. package/dist/sdkAttributes.js +17 -0
  77. package/dist/sdkAttributes.js.map +1 -0
  78. package/dist/workspaceCapabilities.d.ts +15 -0
  79. package/dist/workspaceCapabilities.js +116 -0
  80. package/dist/workspaceCapabilities.js.map +1 -0
  81. package/package.json +162 -0
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Reserved SDK attribute keys that the SDK writes automatically during a
3
+ * flow run. They bypass the manifest's `sdkAttributeKeys` allowlist when
4
+ * referenced from decision nodes so authors can branch on provider state
5
+ * without having to declare each key up front.
6
+ */
7
+ declare const RESERVED_RC_SDK_KEYS: readonly ["onb_rc_last_event", "onb_rc_last_product_id", "onb_rc_last_period_type", "onb_rc_last_offering_id"];
8
+ type ReservedRcSdkKey = (typeof RESERVED_RC_SDK_KEYS)[number];
9
+ declare const isReservedSdkKey: (key: string) => key is ReservedRcSdkKey;
10
+
11
+ export { RESERVED_RC_SDK_KEYS, type ReservedRcSdkKey, isReservedSdkKey };
@@ -0,0 +1,17 @@
1
+ // src/sdkAttributes.ts
2
+ var RESERVED_RC_SDK_KEYS = [
3
+ /** Last RC event observed by the SDK (e.g. `purchase_completed`, `purchase_cancelled`). */
4
+ "onb_rc_last_event",
5
+ /** Product identifier from the most recent successful purchase. */
6
+ "onb_rc_last_product_id",
7
+ /** Period type (`normal`, `intro`, `trial`) from the most recent purchase. */
8
+ "onb_rc_last_period_type",
9
+ /** RevenueCat offering id surfaced by the most recent paywall presentation. */
10
+ "onb_rc_last_offering_id"
11
+ ];
12
+ var RESERVED_SDK_KEYS_SET = new Set(RESERVED_RC_SDK_KEYS);
13
+ var isReservedSdkKey = (key) => RESERVED_SDK_KEYS_SET.has(key);
14
+
15
+ export { RESERVED_RC_SDK_KEYS, isReservedSdkKey };
16
+ //# sourceMappingURL=sdkAttributes.js.map
17
+ //# sourceMappingURL=sdkAttributes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/sdkAttributes.ts"],"names":[],"mappings":";AAMO,IAAM,oBAAA,GAAuB;AAAA;AAAA,EAElC,mBAAA;AAAA;AAAA,EAEA,wBAAA;AAAA;AAAA,EAEA,yBAAA;AAAA;AAAA,EAEA;AACF;AAIA,IAAM,qBAAA,GAA6C,IAAI,GAAA,CAAY,oBAAoB,CAAA;AAEhF,IAAM,gBAAA,GAAmB,CAAC,GAAA,KAC/B,qBAAA,CAAsB,IAAI,GAAG","file":"sdkAttributes.js","sourcesContent":["/**\n * Reserved SDK attribute keys that the SDK writes automatically during a\n * flow run. They bypass the manifest's `sdkAttributeKeys` allowlist when\n * referenced from decision nodes so authors can branch on provider state\n * without having to declare each key up front.\n */\nexport const RESERVED_RC_SDK_KEYS = [\n /** Last RC event observed by the SDK (e.g. `purchase_completed`, `purchase_cancelled`). */\n 'onb_rc_last_event',\n /** Product identifier from the most recent successful purchase. */\n 'onb_rc_last_product_id',\n /** Period type (`normal`, `intro`, `trial`) from the most recent purchase. */\n 'onb_rc_last_period_type',\n /** RevenueCat offering id surfaced by the most recent paywall presentation. */\n 'onb_rc_last_offering_id',\n] as const;\n\nexport type ReservedRcSdkKey = (typeof RESERVED_RC_SDK_KEYS)[number];\n\nconst RESERVED_SDK_KEYS_SET: ReadonlySet<string> = new Set<string>(RESERVED_RC_SDK_KEYS);\n\nexport const isReservedSdkKey = (key: string): key is ReservedRcSdkKey =>\n RESERVED_SDK_KEYS_SET.has(key);\n"]}
@@ -0,0 +1,15 @@
1
+ /** Clerk org roles used by Rheo (coarse). */
2
+ declare const CLERK_ORG_ADMIN = "org:admin";
3
+ declare const CLERK_ORG_MEMBER = "org:member";
4
+ declare const WORKSPACE_ROLES: readonly ["owner", "admin", "editor", "viewer"];
5
+ type WorkspaceRole = (typeof WORKSPACE_ROLES)[number];
6
+ declare const WORKSPACE_CAPABILITIES: readonly ["org:read", "billing:manage", "workspace:delete", "workspace:settings", "app:settings", "app:manage", "member:invite", "member:remove", "member:role", "ownership:transfer", "flow:read", "flow:edit", "flow:publish", "channel:read", "channel:manage", "experiment:read", "experiment:manage", "media:manage", "ai:brand_extract", "ai:translate", "store:manage", "analytics:read", "customers:read", "notifications:read", "notifications:write", "apiKey:manage", "rollout:approve"];
7
+ type WorkspaceCapability = (typeof WORKSPACE_CAPABILITIES)[number];
8
+ declare const resolveCapabilities: (role: WorkspaceRole) => ReadonlySet<WorkspaceCapability>;
9
+ declare const hasCapability: (role: WorkspaceRole, capability: WorkspaceCapability) => boolean;
10
+ declare const hasAnyCapability: (role: WorkspaceRole, capabilities: ReadonlyArray<WorkspaceCapability>) => boolean;
11
+ /** Normalize DB / legacy string to WorkspaceRole. */
12
+ declare const parseWorkspaceRole: (raw: string) => WorkspaceRole | null;
13
+ declare const assertWorkspaceRole: (raw: string) => WorkspaceRole;
14
+
15
+ export { CLERK_ORG_ADMIN, CLERK_ORG_MEMBER, WORKSPACE_CAPABILITIES, WORKSPACE_ROLES, type WorkspaceCapability, type WorkspaceRole, assertWorkspaceRole, hasAnyCapability, hasCapability, parseWorkspaceRole, resolveCapabilities };
@@ -0,0 +1,116 @@
1
+ // src/workspaceCapabilities.ts
2
+ var CLERK_ORG_ADMIN = "org:admin";
3
+ var CLERK_ORG_MEMBER = "org:member";
4
+ var WORKSPACE_ROLES = ["owner", "admin", "editor", "viewer"];
5
+ var WORKSPACE_CAPABILITIES = [
6
+ "org:read",
7
+ "billing:manage",
8
+ "workspace:delete",
9
+ "workspace:settings",
10
+ "app:settings",
11
+ "app:manage",
12
+ "member:invite",
13
+ "member:remove",
14
+ "member:role",
15
+ "ownership:transfer",
16
+ "flow:read",
17
+ "flow:edit",
18
+ "flow:publish",
19
+ "channel:read",
20
+ "channel:manage",
21
+ "experiment:read",
22
+ "experiment:manage",
23
+ "media:manage",
24
+ "ai:brand_extract",
25
+ "ai:translate",
26
+ "store:manage",
27
+ "analytics:read",
28
+ "customers:read",
29
+ "notifications:read",
30
+ "notifications:write",
31
+ "apiKey:manage",
32
+ /** Granted at runtime via workspace-access when the member may approve rollouts. */
33
+ "rollout:approve"
34
+ ];
35
+ var OWNER_CAPS = new Set(
36
+ WORKSPACE_CAPABILITIES.filter((c) => c !== "rollout:approve")
37
+ );
38
+ var caps = (...c) => new Set(c);
39
+ var ROLE_CAPABILITIES = {
40
+ admin: caps(
41
+ "org:read",
42
+ "workspace:settings",
43
+ "app:settings",
44
+ "app:manage",
45
+ "member:invite",
46
+ "member:remove",
47
+ "member:role",
48
+ "flow:read",
49
+ "flow:edit",
50
+ "flow:publish",
51
+ "channel:read",
52
+ "channel:manage",
53
+ "experiment:read",
54
+ "experiment:manage",
55
+ "media:manage",
56
+ "ai:brand_extract",
57
+ "ai:translate",
58
+ "store:manage",
59
+ "analytics:read",
60
+ "customers:read",
61
+ "notifications:read",
62
+ "notifications:write"
63
+ ),
64
+ editor: caps(
65
+ "org:read",
66
+ "flow:read",
67
+ "flow:edit",
68
+ "flow:publish",
69
+ "channel:read",
70
+ "channel:manage",
71
+ "experiment:read",
72
+ "experiment:manage",
73
+ "media:manage",
74
+ "ai:brand_extract",
75
+ "ai:translate",
76
+ "store:manage",
77
+ "analytics:read",
78
+ "customers:read",
79
+ "notifications:read",
80
+ "notifications:write"
81
+ ),
82
+ viewer: caps(
83
+ "org:read",
84
+ "flow:read",
85
+ "channel:read",
86
+ "experiment:read",
87
+ "analytics:read",
88
+ "customers:read",
89
+ "notifications:read",
90
+ "notifications:write"
91
+ )
92
+ };
93
+ var resolveCapabilities = (role) => {
94
+ if (role === "owner") return OWNER_CAPS;
95
+ return ROLE_CAPABILITIES[role];
96
+ };
97
+ var hasCapability = (role, capability) => resolveCapabilities(role).has(capability);
98
+ var hasAnyCapability = (role, capabilities) => {
99
+ const set = resolveCapabilities(role);
100
+ return capabilities.some((c) => set.has(c));
101
+ };
102
+ var parseWorkspaceRole = (raw) => {
103
+ if (raw === "owner" || raw === "admin" || raw === "editor" || raw === "viewer") return raw;
104
+ return null;
105
+ };
106
+ var assertWorkspaceRole = (raw) => {
107
+ const r = parseWorkspaceRole(raw);
108
+ if (!r) {
109
+ throw new TypeError(`invalid_workspace_role:${raw}`);
110
+ }
111
+ return r;
112
+ };
113
+
114
+ export { CLERK_ORG_ADMIN, CLERK_ORG_MEMBER, WORKSPACE_CAPABILITIES, WORKSPACE_ROLES, assertWorkspaceRole, hasAnyCapability, hasCapability, parseWorkspaceRole, resolveCapabilities };
115
+ //# sourceMappingURL=workspaceCapabilities.js.map
116
+ //# sourceMappingURL=workspaceCapabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/workspaceCapabilities.ts"],"names":[],"mappings":"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","file":"workspaceCapabilities.js","sourcesContent":["/** Clerk org roles used by Rheo (coarse). */\nexport const CLERK_ORG_ADMIN = 'org:admin';\nexport const CLERK_ORG_MEMBER = 'org:member';\n\nexport const WORKSPACE_ROLES = ['owner', 'admin', 'editor', 'viewer'] as const;\nexport type WorkspaceRole = (typeof WORKSPACE_ROLES)[number];\n\nexport const WORKSPACE_CAPABILITIES = [\n 'org:read',\n 'billing:manage',\n 'workspace:delete',\n 'workspace:settings',\n 'app:settings',\n 'app:manage',\n 'member:invite',\n 'member:remove',\n 'member:role',\n 'ownership:transfer',\n 'flow:read',\n 'flow:edit',\n 'flow:publish',\n 'channel:read',\n 'channel:manage',\n 'experiment:read',\n 'experiment:manage',\n 'media:manage',\n 'ai:brand_extract',\n 'ai:translate',\n 'store:manage',\n 'analytics:read',\n 'customers:read',\n 'notifications:read',\n 'notifications:write',\n 'apiKey:manage',\n /** Granted at runtime via workspace-access when the member may approve rollouts. */\n 'rollout:approve',\n] as const;\n\nexport type WorkspaceCapability = (typeof WORKSPACE_CAPABILITIES)[number];\n\n/** Owner receives all capabilities except `rollout:approve` (that cap is merged per org in workspace-access). */\nconst OWNER_CAPS = new Set<WorkspaceCapability>(\n WORKSPACE_CAPABILITIES.filter((c) => c !== 'rollout:approve'),\n);\n\nconst caps = (...c: WorkspaceCapability[]) => new Set(c);\n\n/** Role → capabilities (owner is expanded to full set separately). */\nconst ROLE_CAPABILITIES: Record<Exclude<WorkspaceRole, 'owner'>, ReadonlySet<WorkspaceCapability>> = {\n admin: caps(\n 'org:read',\n 'workspace:settings',\n 'app:settings',\n 'app:manage',\n 'member:invite',\n 'member:remove',\n 'member:role',\n 'flow:read',\n 'flow:edit',\n 'flow:publish',\n 'channel:read',\n 'channel:manage',\n 'experiment:read',\n 'experiment:manage',\n 'media:manage',\n 'ai:brand_extract',\n 'ai:translate',\n 'store:manage',\n 'analytics:read',\n 'customers:read',\n 'notifications:read',\n 'notifications:write',\n ),\n editor: caps(\n 'org:read',\n 'flow:read',\n 'flow:edit',\n 'flow:publish',\n 'channel:read',\n 'channel:manage',\n 'experiment:read',\n 'experiment:manage',\n 'media:manage',\n 'ai:brand_extract',\n 'ai:translate',\n 'store:manage',\n 'analytics:read',\n 'customers:read',\n 'notifications:read',\n 'notifications:write',\n ),\n viewer: caps(\n 'org:read',\n 'flow:read',\n 'channel:read',\n 'experiment:read',\n 'analytics:read',\n 'customers:read',\n 'notifications:read',\n 'notifications:write',\n ),\n};\n\nexport const resolveCapabilities = (role: WorkspaceRole): ReadonlySet<WorkspaceCapability> => {\n if (role === 'owner') return OWNER_CAPS;\n return ROLE_CAPABILITIES[role];\n};\n\nexport const hasCapability = (\n role: WorkspaceRole,\n capability: WorkspaceCapability,\n): boolean => resolveCapabilities(role).has(capability);\n\nexport const hasAnyCapability = (\n role: WorkspaceRole,\n capabilities: ReadonlyArray<WorkspaceCapability>,\n): boolean => {\n const set = resolveCapabilities(role);\n return capabilities.some((c) => set.has(c));\n};\n\n/** Normalize DB / legacy string to WorkspaceRole. */\nexport const parseWorkspaceRole = (raw: string): WorkspaceRole | null => {\n if (raw === 'owner' || raw === 'admin' || raw === 'editor' || raw === 'viewer') return raw;\n return null;\n};\n\nexport const assertWorkspaceRole = (raw: string): WorkspaceRole => {\n const r = parseWorkspaceRole(raw);\n if (!r) {\n throw new TypeError(`invalid_workspace_role:${raw}`);\n }\n return r;\n};\n"]}
package/package.json ADDED
@@ -0,0 +1,162 @@
1
+ {
2
+ "name": "@getrheo/contracts",
3
+ "version": "1.0.0",
4
+ "type": "module",
5
+ "main": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
+ "exports": {
8
+ ".": {
9
+ "types": "./dist/index.d.ts",
10
+ "import": "./dist/index.js",
11
+ "default": "./dist/index.js"
12
+ },
13
+ "./animations": {
14
+ "types": "./dist/animations.d.ts",
15
+ "import": "./dist/animations.js",
16
+ "default": "./dist/animations.js"
17
+ },
18
+ "./appIntegrations": {
19
+ "types": "./dist/appIntegrations.d.ts",
20
+ "import": "./dist/appIntegrations.js",
21
+ "default": "./dist/appIntegrations.js"
22
+ },
23
+ "./canvasEditorGates": {
24
+ "types": "./dist/canvasEditorGates.d.ts",
25
+ "import": "./dist/canvasEditorGates.js",
26
+ "default": "./dist/canvasEditorGates.js"
27
+ },
28
+ "./constants": {
29
+ "types": "./dist/constants/index.d.ts",
30
+ "import": "./dist/constants/index.js",
31
+ "default": "./dist/constants/index.js"
32
+ },
33
+ "./dashboard": {
34
+ "types": "./dist/dashboard.d.ts",
35
+ "import": "./dist/dashboard.js",
36
+ "default": "./dist/dashboard.js"
37
+ },
38
+ "./decisions": {
39
+ "types": "./dist/decisions.d.ts",
40
+ "import": "./dist/decisions.js",
41
+ "default": "./dist/decisions.js"
42
+ },
43
+ "./events": {
44
+ "types": "./dist/events.d.ts",
45
+ "import": "./dist/events.js",
46
+ "default": "./dist/events.js"
47
+ },
48
+ "./externalSurfaceIntegrations": {
49
+ "types": "./dist/externalSurfaceIntegrations.d.ts",
50
+ "import": "./dist/externalSurfaceIntegrations.js",
51
+ "default": "./dist/externalSurfaceIntegrations.js"
52
+ },
53
+ "./externalSurfaces": {
54
+ "types": "./dist/externalSurfaces.d.ts",
55
+ "import": "./dist/externalSurfaces.js",
56
+ "default": "./dist/externalSurfaces.js"
57
+ },
58
+ "./fields": {
59
+ "types": "./dist/fields.d.ts",
60
+ "import": "./dist/fields.js",
61
+ "default": "./dist/fields.js"
62
+ },
63
+ "./imageContentType": {
64
+ "types": "./dist/imageContentType.d.ts",
65
+ "import": "./dist/imageContentType.js",
66
+ "default": "./dist/imageContentType.js"
67
+ },
68
+ "./identity": {
69
+ "types": "./dist/identity.d.ts",
70
+ "import": "./dist/identity.js",
71
+ "default": "./dist/identity.js"
72
+ },
73
+ "./layers": {
74
+ "types": "./dist/layers.d.ts",
75
+ "import": "./dist/layers.js",
76
+ "default": "./dist/layers.js"
77
+ },
78
+ "./localized": {
79
+ "types": "./dist/localized.d.ts",
80
+ "import": "./dist/localized.js",
81
+ "default": "./dist/localized.js"
82
+ },
83
+ "./manifest": {
84
+ "types": "./dist/manifest.d.ts",
85
+ "import": "./dist/manifest.js",
86
+ "default": "./dist/manifest.js"
87
+ },
88
+ "./media": {
89
+ "types": "./dist/media.d.ts",
90
+ "import": "./dist/media.js",
91
+ "default": "./dist/media.js"
92
+ },
93
+ "./screens": {
94
+ "types": "./dist/screens.d.ts",
95
+ "import": "./dist/screens.js",
96
+ "default": "./dist/screens.js"
97
+ },
98
+ "./sdk": {
99
+ "types": "./dist/sdk.d.ts",
100
+ "import": "./dist/sdk.js",
101
+ "default": "./dist/sdk.js"
102
+ },
103
+ "./sdkAttributes": {
104
+ "types": "./dist/sdkAttributes.d.ts",
105
+ "import": "./dist/sdkAttributes.js",
106
+ "default": "./dist/sdkAttributes.js"
107
+ },
108
+ "./flowTemplates": {
109
+ "types": "./dist/flowTemplates.d.ts",
110
+ "import": "./dist/flowTemplates.js",
111
+ "default": "./dist/flowTemplates.js"
112
+ },
113
+ "./flowTemplateComments": {
114
+ "types": "./dist/flowTemplateComments.d.ts",
115
+ "import": "./dist/flowTemplateComments.js",
116
+ "default": "./dist/flowTemplateComments.js"
117
+ },
118
+ "./workspaceCapabilities": {
119
+ "types": "./dist/workspaceCapabilities.d.ts",
120
+ "import": "./dist/workspaceCapabilities.js",
121
+ "default": "./dist/workspaceCapabilities.js"
122
+ },
123
+ "./planEntitlements": {
124
+ "types": "./dist/planEntitlements.d.ts",
125
+ "import": "./dist/planEntitlements.js",
126
+ "default": "./dist/planEntitlements.js"
127
+ },
128
+ "./billingPeriod": {
129
+ "types": "./dist/billingPeriod.d.ts",
130
+ "import": "./dist/billingPeriod.js",
131
+ "default": "./dist/billingPeriod.js"
132
+ }
133
+ },
134
+ "dependencies": {
135
+ "zod": "^3.23.8"
136
+ },
137
+ "devDependencies": {
138
+ "@types/node": "^22.10.1",
139
+ "typescript": "^5.6.3",
140
+ "vitest": "^3.2.6",
141
+ "@rheo/config": "0.1.0"
142
+ },
143
+ "license": "MIT",
144
+ "repository": {
145
+ "type": "git",
146
+ "url": "git+https://github.com/madeinusmate/onboardly.git",
147
+ "directory": "packages/contracts"
148
+ },
149
+ "files": [
150
+ "dist",
151
+ "README.md"
152
+ ],
153
+ "publishConfig": {
154
+ "access": "public"
155
+ },
156
+ "scripts": {
157
+ "lint": "eslint .",
158
+ "typecheck": "tsc --noEmit",
159
+ "test": "vitest run",
160
+ "build": "node ../../scripts/build-publishable-package.mjs"
161
+ }
162
+ }