business-as-code 0.2.1 → 2.0.2

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 (190) hide show
  1. package/.turbo/turbo-build.log +5 -0
  2. package/CHANGELOG.md +17 -0
  3. package/IMPLEMENTATION.md +226 -0
  4. package/README.md +1133 -193
  5. package/dist/business.d.ts +62 -0
  6. package/dist/business.d.ts.map +1 -0
  7. package/dist/business.js +109 -0
  8. package/dist/business.js.map +1 -0
  9. package/dist/dollar.d.ts +60 -0
  10. package/dist/dollar.d.ts.map +1 -0
  11. package/dist/dollar.js +107 -0
  12. package/dist/dollar.js.map +1 -0
  13. package/dist/entities/assets.d.ts +21 -0
  14. package/dist/entities/assets.d.ts.map +1 -0
  15. package/dist/entities/assets.js +323 -0
  16. package/dist/entities/assets.js.map +1 -0
  17. package/dist/entities/business.d.ts +36 -0
  18. package/dist/entities/business.d.ts.map +1 -0
  19. package/dist/entities/business.js +370 -0
  20. package/dist/entities/business.js.map +1 -0
  21. package/dist/entities/communication.d.ts +21 -0
  22. package/dist/entities/communication.d.ts.map +1 -0
  23. package/dist/entities/communication.js +255 -0
  24. package/dist/entities/communication.js.map +1 -0
  25. package/dist/entities/customers.d.ts +58 -0
  26. package/dist/entities/customers.d.ts.map +1 -0
  27. package/dist/entities/customers.js +989 -0
  28. package/dist/entities/customers.js.map +1 -0
  29. package/dist/entities/financials.d.ts +59 -0
  30. package/dist/entities/financials.d.ts.map +1 -0
  31. package/dist/entities/financials.js +932 -0
  32. package/dist/entities/financials.js.map +1 -0
  33. package/dist/entities/goals.d.ts +58 -0
  34. package/dist/entities/goals.d.ts.map +1 -0
  35. package/dist/entities/goals.js +800 -0
  36. package/dist/entities/goals.js.map +1 -0
  37. package/dist/entities/index.d.ts +299 -0
  38. package/dist/entities/index.d.ts.map +1 -0
  39. package/dist/entities/index.js +198 -0
  40. package/dist/entities/index.js.map +1 -0
  41. package/dist/entities/legal.d.ts +21 -0
  42. package/dist/entities/legal.d.ts.map +1 -0
  43. package/dist/entities/legal.js +301 -0
  44. package/dist/entities/legal.js.map +1 -0
  45. package/dist/entities/market.d.ts +21 -0
  46. package/dist/entities/market.d.ts.map +1 -0
  47. package/dist/entities/market.js +301 -0
  48. package/dist/entities/market.js.map +1 -0
  49. package/dist/entities/marketing.d.ts +67 -0
  50. package/dist/entities/marketing.d.ts.map +1 -0
  51. package/dist/entities/marketing.js +1157 -0
  52. package/dist/entities/marketing.js.map +1 -0
  53. package/dist/entities/offerings.d.ts +51 -0
  54. package/dist/entities/offerings.d.ts.map +1 -0
  55. package/dist/entities/offerings.js +727 -0
  56. package/dist/entities/offerings.js.map +1 -0
  57. package/dist/entities/operations.d.ts +58 -0
  58. package/dist/entities/operations.d.ts.map +1 -0
  59. package/dist/entities/operations.js +787 -0
  60. package/dist/entities/operations.js.map +1 -0
  61. package/dist/entities/organization.d.ts +57 -0
  62. package/dist/entities/organization.d.ts.map +1 -0
  63. package/dist/entities/organization.js +807 -0
  64. package/dist/entities/organization.js.map +1 -0
  65. package/dist/entities/partnerships.d.ts +21 -0
  66. package/dist/entities/partnerships.d.ts.map +1 -0
  67. package/dist/entities/partnerships.js +300 -0
  68. package/dist/entities/partnerships.js.map +1 -0
  69. package/dist/entities/planning.d.ts +87 -0
  70. package/dist/entities/planning.d.ts.map +1 -0
  71. package/dist/entities/planning.js +271 -0
  72. package/dist/entities/planning.js.map +1 -0
  73. package/dist/entities/projects.d.ts +25 -0
  74. package/dist/entities/projects.d.ts.map +1 -0
  75. package/dist/entities/projects.js +349 -0
  76. package/dist/entities/projects.js.map +1 -0
  77. package/dist/entities/risk.d.ts +21 -0
  78. package/dist/entities/risk.d.ts.map +1 -0
  79. package/dist/entities/risk.js +293 -0
  80. package/dist/entities/risk.js.map +1 -0
  81. package/dist/entities/sales.d.ts +72 -0
  82. package/dist/entities/sales.d.ts.map +1 -0
  83. package/dist/entities/sales.js +1248 -0
  84. package/dist/entities/sales.js.map +1 -0
  85. package/dist/financials.d.ts +130 -0
  86. package/dist/financials.d.ts.map +1 -0
  87. package/dist/financials.js +297 -0
  88. package/dist/financials.js.map +1 -0
  89. package/dist/goals.d.ts +87 -0
  90. package/dist/goals.d.ts.map +1 -0
  91. package/dist/goals.js +215 -0
  92. package/dist/goals.js.map +1 -0
  93. package/dist/index.d.ts +97 -4
  94. package/dist/index.d.ts.map +1 -0
  95. package/dist/index.js +131 -1079
  96. package/dist/index.js.map +1 -1
  97. package/dist/kpis.d.ts +118 -0
  98. package/dist/kpis.d.ts.map +1 -0
  99. package/dist/kpis.js +232 -0
  100. package/dist/kpis.js.map +1 -0
  101. package/dist/metrics.d.ts +448 -0
  102. package/dist/metrics.d.ts.map +1 -0
  103. package/dist/metrics.js +325 -0
  104. package/dist/metrics.js.map +1 -0
  105. package/dist/okrs.d.ts +123 -0
  106. package/dist/okrs.d.ts.map +1 -0
  107. package/dist/okrs.js +269 -0
  108. package/dist/okrs.js.map +1 -0
  109. package/dist/organization.d.ts +585 -0
  110. package/dist/organization.d.ts.map +1 -0
  111. package/dist/organization.js +173 -0
  112. package/dist/organization.js.map +1 -0
  113. package/dist/process.d.ts +112 -0
  114. package/dist/process.d.ts.map +1 -0
  115. package/dist/process.js +241 -0
  116. package/dist/process.js.map +1 -0
  117. package/dist/product.d.ts +85 -0
  118. package/dist/product.d.ts.map +1 -0
  119. package/dist/product.js +145 -0
  120. package/dist/product.js.map +1 -0
  121. package/dist/queries.d.ts +304 -0
  122. package/dist/queries.d.ts.map +1 -0
  123. package/dist/queries.js +415 -0
  124. package/dist/queries.js.map +1 -0
  125. package/dist/roles.d.ts +340 -0
  126. package/dist/roles.d.ts.map +1 -0
  127. package/dist/roles.js +255 -0
  128. package/dist/roles.js.map +1 -0
  129. package/dist/service.d.ts +61 -0
  130. package/dist/service.d.ts.map +1 -0
  131. package/dist/service.js +140 -0
  132. package/dist/service.js.map +1 -0
  133. package/dist/types.d.ts +459 -0
  134. package/dist/types.d.ts.map +1 -0
  135. package/dist/types.js +5 -0
  136. package/dist/types.js.map +1 -0
  137. package/dist/vision.d.ts +38 -0
  138. package/dist/vision.d.ts.map +1 -0
  139. package/dist/vision.js +68 -0
  140. package/dist/vision.js.map +1 -0
  141. package/dist/workflow.d.ts +115 -0
  142. package/dist/workflow.d.ts.map +1 -0
  143. package/dist/workflow.js +247 -0
  144. package/dist/workflow.js.map +1 -0
  145. package/examples/basic-usage.ts +307 -0
  146. package/package.json +19 -60
  147. package/src/business.ts +121 -0
  148. package/src/dollar.ts +132 -0
  149. package/src/entities/assets.ts +332 -0
  150. package/src/entities/business.ts +406 -0
  151. package/src/entities/communication.ts +264 -0
  152. package/src/entities/customers.ts +1072 -0
  153. package/src/entities/financials.ts +1011 -0
  154. package/src/entities/goals.ts +871 -0
  155. package/src/entities/index.ts +383 -0
  156. package/src/entities/legal.ts +310 -0
  157. package/src/entities/market.ts +310 -0
  158. package/src/entities/marketing.ts +1249 -0
  159. package/src/entities/offerings.ts +789 -0
  160. package/src/entities/operations.ts +861 -0
  161. package/src/entities/organization.ts +876 -0
  162. package/src/entities/partnerships.ts +309 -0
  163. package/src/entities/planning.ts +307 -0
  164. package/src/entities/projects.ts +360 -0
  165. package/src/entities/risk.ts +302 -0
  166. package/src/entities/sales.ts +1352 -0
  167. package/src/financials.ts +352 -0
  168. package/src/goals.ts +250 -0
  169. package/src/index.test.ts +336 -0
  170. package/src/index.ts +530 -0
  171. package/src/kpis.ts +275 -0
  172. package/src/metrics.ts +825 -0
  173. package/src/okrs.ts +325 -0
  174. package/src/organization.ts +909 -0
  175. package/src/process.ts +272 -0
  176. package/src/product.ts +178 -0
  177. package/src/queries.ts +767 -0
  178. package/src/roles.ts +686 -0
  179. package/src/service.ts +164 -0
  180. package/src/types.ts +493 -0
  181. package/src/vision.ts +88 -0
  182. package/src/workflow.ts +280 -0
  183. package/tsconfig.json +9 -0
  184. package/dist/loaders/index.d.ts +0 -174
  185. package/dist/loaders/index.js +0 -366
  186. package/dist/loaders/index.js.map +0 -1
  187. package/dist/schema/index.d.ts +0 -146
  188. package/dist/schema/index.js +0 -716
  189. package/dist/schema/index.js.map +0 -1
  190. package/dist/types-CJ9eGS_C.d.ts +0 -86
@@ -0,0 +1,140 @@
1
+ /**
2
+ * Service definition and management
3
+ */
4
+ /**
5
+ * Define a service with pricing, SLA, and delivery information
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * const service = Service({
10
+ * name: 'Widget Consulting',
11
+ * description: 'Expert widget implementation and optimization',
12
+ * category: 'Consulting',
13
+ * targetSegment: 'Enterprise',
14
+ * valueProposition: 'Get expert help implementing widgets in 2 weeks',
15
+ * pricingModel: 'fixed',
16
+ * price: 5000,
17
+ * currency: 'USD',
18
+ * deliveryTime: '2 weeks',
19
+ * sla: {
20
+ * uptime: 99.9,
21
+ * responseTime: '< 24 hours',
22
+ * supportHours: 'Business hours (9-5 EST)',
23
+ * penalties: '10% refund per day of delay',
24
+ * },
25
+ * })
26
+ * ```
27
+ */
28
+ export function Service(definition) {
29
+ if (!definition.name) {
30
+ throw new Error('Service name is required');
31
+ }
32
+ return {
33
+ ...definition,
34
+ pricingModel: definition.pricingModel || 'hourly',
35
+ currency: definition.currency || 'USD',
36
+ metadata: definition.metadata || {},
37
+ };
38
+ }
39
+ /**
40
+ * Calculate service price based on hours (for hourly pricing)
41
+ */
42
+ export function calculateHourlyPrice(service, hours) {
43
+ if (service.pricingModel !== 'hourly' || !service.price) {
44
+ throw new Error('Service must use hourly pricing model');
45
+ }
46
+ return service.price * hours;
47
+ }
48
+ /**
49
+ * Calculate monthly retainer equivalent
50
+ */
51
+ export function calculateMonthlyRetainer(service, hoursPerMonth) {
52
+ if (service.pricingModel !== 'hourly' || !service.price) {
53
+ throw new Error('Service must use hourly pricing model');
54
+ }
55
+ return service.price * hoursPerMonth;
56
+ }
57
+ /**
58
+ * Check if service meets SLA uptime requirement
59
+ */
60
+ export function checkSLAUptime(service, actualUptime) {
61
+ if (!service.sla?.uptime)
62
+ return true;
63
+ return actualUptime >= service.sla.uptime;
64
+ }
65
+ /**
66
+ * Parse delivery time to days
67
+ */
68
+ export function parseDeliveryTimeToDays(deliveryTime) {
69
+ if (!deliveryTime)
70
+ return 0;
71
+ const lower = deliveryTime.toLowerCase();
72
+ // Parse patterns like "2 weeks", "3 days", "1 month"
73
+ const match = lower.match(/(\d+)\s*(day|days|week|weeks|month|months|hour|hours)/);
74
+ if (!match)
75
+ return 0;
76
+ const value = parseInt(match[1] || '0', 10);
77
+ const unit = match[2];
78
+ switch (unit) {
79
+ case 'hour':
80
+ case 'hours':
81
+ return value / 24;
82
+ case 'day':
83
+ case 'days':
84
+ return value;
85
+ case 'week':
86
+ case 'weeks':
87
+ return value * 7;
88
+ case 'month':
89
+ case 'months':
90
+ return value * 30;
91
+ default:
92
+ return 0;
93
+ }
94
+ }
95
+ /**
96
+ * Estimate service completion date
97
+ */
98
+ export function estimateCompletionDate(service, startDate) {
99
+ const start = startDate || new Date();
100
+ const days = parseDeliveryTimeToDays(service.deliveryTime);
101
+ const completion = new Date(start);
102
+ completion.setDate(completion.getDate() + days);
103
+ return completion;
104
+ }
105
+ /**
106
+ * Calculate service value (for value-based pricing)
107
+ */
108
+ export function calculateValueBasedPrice(service, customerValue, valueSharePercentage) {
109
+ if (service.pricingModel !== 'value-based') {
110
+ throw new Error('Service must use value-based pricing model');
111
+ }
112
+ if (valueSharePercentage < 0 || valueSharePercentage > 100) {
113
+ throw new Error('Value share percentage must be between 0 and 100');
114
+ }
115
+ return customerValue * (valueSharePercentage / 100);
116
+ }
117
+ /**
118
+ * Validate service definition
119
+ */
120
+ export function validateService(service) {
121
+ const errors = [];
122
+ if (!service.name) {
123
+ errors.push('Service name is required');
124
+ }
125
+ if (service.price && service.price < 0) {
126
+ errors.push('Service price cannot be negative');
127
+ }
128
+ if (service.sla?.uptime && (service.sla.uptime < 0 || service.sla.uptime > 100)) {
129
+ errors.push('SLA uptime must be between 0 and 100');
130
+ }
131
+ if (service.pricingModel &&
132
+ !['hourly', 'fixed', 'retainer', 'value-based'].includes(service.pricingModel)) {
133
+ errors.push('Invalid pricing model');
134
+ }
135
+ return {
136
+ valid: errors.length === 0,
137
+ errors,
138
+ };
139
+ }
140
+ //# sourceMappingURL=service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,459 @@
1
+ /**
2
+ * Core types for business-as-code primitives
3
+ */
4
+ /**
5
+ * Currency types supported by the system
6
+ */
7
+ export type Currency = 'USD' | 'EUR' | 'GBP' | 'JPY' | 'CNY' | 'CAD' | 'AUD' | string;
8
+ /**
9
+ * Time period for metrics and financial calculations
10
+ */
11
+ export type TimePeriod = 'daily' | 'weekly' | 'monthly' | 'quarterly' | 'yearly';
12
+ /**
13
+ * Business entity definition
14
+ */
15
+ export interface BusinessDefinition {
16
+ /** Business name */
17
+ name: string;
18
+ /** Business description */
19
+ description?: string;
20
+ /** Industry/sector */
21
+ industry?: string;
22
+ /** Mission statement */
23
+ mission?: string;
24
+ /** Core values */
25
+ values?: string[];
26
+ /** Target market */
27
+ targetMarket?: string;
28
+ /** Founding date */
29
+ foundedAt?: Date;
30
+ /** Team size */
31
+ teamSize?: number;
32
+ /** Organizational structure */
33
+ structure?: OrganizationalStructure;
34
+ /** Business metadata */
35
+ metadata?: Record<string, unknown>;
36
+ }
37
+ /**
38
+ * Goal definition
39
+ */
40
+ export interface GoalDefinition {
41
+ /** Goal name/title */
42
+ name: string;
43
+ /** Goal description */
44
+ description?: string;
45
+ /** Goal category */
46
+ category?: 'strategic' | 'operational' | 'financial' | 'customer' | 'internal' | 'learning';
47
+ /** Target completion date */
48
+ targetDate?: Date;
49
+ /** Owner responsible for the goal */
50
+ owner?: string;
51
+ /** Success metrics */
52
+ metrics?: string[];
53
+ /** Current status */
54
+ status?: 'not-started' | 'in-progress' | 'at-risk' | 'completed' | 'cancelled';
55
+ /** Progress percentage */
56
+ progress?: number;
57
+ /** Dependencies on other goals */
58
+ dependencies?: string[];
59
+ /** Goal metadata */
60
+ metadata?: Record<string, unknown>;
61
+ }
62
+ /**
63
+ * Department definition
64
+ */
65
+ export interface Department {
66
+ /** Department name */
67
+ name: string;
68
+ /** Department description */
69
+ description?: string;
70
+ /** Department head */
71
+ head?: string;
72
+ /** Team members */
73
+ members?: string[];
74
+ /** Department budget */
75
+ budget?: number;
76
+ /** Department goals */
77
+ goals?: GoalDefinition[];
78
+ }
79
+ /**
80
+ * Team definition
81
+ */
82
+ export interface Team {
83
+ /** Team name */
84
+ name: string;
85
+ /** Team description */
86
+ description?: string;
87
+ /** Team lead */
88
+ lead?: string;
89
+ /** Team members */
90
+ members?: string[];
91
+ /** Team objectives */
92
+ objectives?: string[];
93
+ }
94
+ /**
95
+ * Organizational structure
96
+ */
97
+ export interface OrganizationalStructure {
98
+ /** Departments/divisions */
99
+ departments?: Department[];
100
+ /** Reporting hierarchy */
101
+ hierarchy?: Record<string, string[]>;
102
+ /** Team compositions */
103
+ teams?: Team[];
104
+ }
105
+ /**
106
+ * Vision statement definition
107
+ */
108
+ export interface VisionDefinition {
109
+ /** Vision statement */
110
+ statement: string;
111
+ /** Target timeframe */
112
+ timeframe?: string;
113
+ /** Success indicators */
114
+ successIndicators?: string[];
115
+ /** Vision metadata */
116
+ metadata?: Record<string, unknown>;
117
+ }
118
+ /**
119
+ * Product definition
120
+ */
121
+ export interface ProductDefinition {
122
+ /** Product name */
123
+ name: string;
124
+ /** Product description */
125
+ description?: string;
126
+ /** Product category */
127
+ category?: string;
128
+ /** Target customer segment */
129
+ targetSegment?: string;
130
+ /** Value proposition */
131
+ valueProposition?: string;
132
+ /** Pricing model */
133
+ pricingModel?: 'one-time' | 'subscription' | 'usage-based' | 'freemium' | 'tiered';
134
+ /** Price */
135
+ price?: number;
136
+ /** Currency */
137
+ currency?: Currency;
138
+ /** Cost of goods sold */
139
+ cogs?: number;
140
+ /** Features */
141
+ features?: string[];
142
+ /** Product roadmap */
143
+ roadmap?: RoadmapItem[];
144
+ /** Product metadata */
145
+ metadata?: Record<string, unknown>;
146
+ }
147
+ /**
148
+ * Service definition
149
+ */
150
+ export interface ServiceDefinition {
151
+ /** Service name */
152
+ name: string;
153
+ /** Service description */
154
+ description?: string;
155
+ /** Service category */
156
+ category?: string;
157
+ /** Target customer segment */
158
+ targetSegment?: string;
159
+ /** Value proposition */
160
+ valueProposition?: string;
161
+ /** Pricing model */
162
+ pricingModel?: 'hourly' | 'fixed' | 'retainer' | 'value-based';
163
+ /** Base price */
164
+ price?: number;
165
+ /** Currency */
166
+ currency?: Currency;
167
+ /** Estimated delivery time */
168
+ deliveryTime?: string;
169
+ /** Service level agreement */
170
+ sla?: ServiceLevelAgreement;
171
+ /** Service metadata */
172
+ metadata?: Record<string, unknown>;
173
+ }
174
+ /**
175
+ * Roadmap item for products
176
+ */
177
+ export interface RoadmapItem {
178
+ /** Item name */
179
+ name: string;
180
+ /** Description */
181
+ description?: string;
182
+ /** Target quarter/date */
183
+ targetDate?: Date;
184
+ /** Priority */
185
+ priority?: 'critical' | 'high' | 'medium' | 'low';
186
+ /** Status */
187
+ status?: 'planned' | 'in-progress' | 'completed' | 'cancelled';
188
+ }
189
+ /**
190
+ * Service level agreement
191
+ */
192
+ export interface ServiceLevelAgreement {
193
+ /** Uptime percentage */
194
+ uptime?: number;
195
+ /** Response time */
196
+ responseTime?: string;
197
+ /** Support hours */
198
+ supportHours?: string;
199
+ /** Penalties for SLA violations */
200
+ penalties?: string;
201
+ }
202
+ /**
203
+ * Business process definition
204
+ */
205
+ export interface ProcessDefinition {
206
+ /** Process name */
207
+ name: string;
208
+ /** Process description */
209
+ description?: string;
210
+ /** Process category */
211
+ category?: 'core' | 'support' | 'management';
212
+ /** Process owner */
213
+ owner?: string;
214
+ /** Process steps */
215
+ steps?: ProcessStep[];
216
+ /** Inputs required */
217
+ inputs?: string[];
218
+ /** Outputs produced */
219
+ outputs?: string[];
220
+ /** Process metrics */
221
+ metrics?: ProcessMetric[];
222
+ /** Process metadata */
223
+ metadata?: Record<string, unknown>;
224
+ }
225
+ /**
226
+ * Process step definition
227
+ */
228
+ export interface ProcessStep {
229
+ /** Step number */
230
+ order: number;
231
+ /** Step name */
232
+ name: string;
233
+ /** Step description */
234
+ description?: string;
235
+ /** Responsible role/person */
236
+ responsible?: string;
237
+ /** Estimated duration */
238
+ duration?: string;
239
+ /** Step automation level */
240
+ automationLevel?: 'manual' | 'semi-automated' | 'automated';
241
+ }
242
+ /**
243
+ * Process metric
244
+ */
245
+ export interface ProcessMetric {
246
+ /** Metric name */
247
+ name: string;
248
+ /** Metric description */
249
+ description?: string;
250
+ /** Target value */
251
+ target?: number;
252
+ /** Current value */
253
+ current?: number;
254
+ /** Unit of measurement */
255
+ unit?: string;
256
+ }
257
+ /**
258
+ * Workflow definition (automation sequence)
259
+ */
260
+ export interface WorkflowDefinition {
261
+ /** Workflow name */
262
+ name: string;
263
+ /** Workflow description */
264
+ description?: string;
265
+ /** Trigger conditions */
266
+ trigger?: WorkflowTrigger;
267
+ /** Workflow actions */
268
+ actions?: WorkflowAction[];
269
+ /** Workflow metadata */
270
+ metadata?: Record<string, unknown>;
271
+ }
272
+ /**
273
+ * Workflow trigger
274
+ */
275
+ export interface WorkflowTrigger {
276
+ /** Trigger type */
277
+ type: 'event' | 'schedule' | 'webhook' | 'manual';
278
+ /** Event name (for event triggers) */
279
+ event?: string;
280
+ /** Schedule expression (for scheduled triggers) */
281
+ schedule?: string;
282
+ /** Webhook URL (for webhook triggers) */
283
+ webhook?: string;
284
+ }
285
+ /**
286
+ * Workflow action
287
+ */
288
+ export interface WorkflowAction {
289
+ /** Action order */
290
+ order: number;
291
+ /** Action type */
292
+ type: 'send' | 'create' | 'update' | 'delete' | 'notify' | 'call' | 'wait';
293
+ /** Action description */
294
+ description?: string;
295
+ /** Action parameters */
296
+ params?: Record<string, unknown>;
297
+ /** Condition for executing this action */
298
+ condition?: string;
299
+ }
300
+ /**
301
+ * Key Performance Indicator
302
+ */
303
+ export interface KPIDefinition {
304
+ /** KPI name */
305
+ name: string;
306
+ /** KPI description */
307
+ description?: string;
308
+ /** KPI category */
309
+ category?: 'financial' | 'customer' | 'operations' | 'people' | 'growth';
310
+ /** Measurement unit */
311
+ unit?: string;
312
+ /** Target value */
313
+ target?: number;
314
+ /** Current value */
315
+ current?: number;
316
+ /** Measurement frequency */
317
+ frequency?: TimePeriod;
318
+ /** Data source */
319
+ dataSource?: string;
320
+ /** Calculation formula */
321
+ formula?: string;
322
+ /** KPI metadata */
323
+ metadata?: Record<string, unknown>;
324
+ }
325
+ /**
326
+ * Objective and Key Results (OKR)
327
+ */
328
+ export interface OKRDefinition {
329
+ /** Objective statement */
330
+ objective: string;
331
+ /** Objective description */
332
+ description?: string;
333
+ /** Time period */
334
+ period?: string;
335
+ /** Owner */
336
+ owner?: string;
337
+ /** Key results */
338
+ keyResults?: KeyResult[];
339
+ /** Status */
340
+ status?: 'not-started' | 'on-track' | 'at-risk' | 'completed';
341
+ /** Confidence level */
342
+ confidence?: number;
343
+ /** OKR metadata */
344
+ metadata?: Record<string, unknown>;
345
+ }
346
+ /**
347
+ * Key result within an OKR
348
+ */
349
+ export interface KeyResult {
350
+ /** Key result description */
351
+ description: string;
352
+ /** Metric to measure */
353
+ metric: string;
354
+ /** Starting value */
355
+ startValue?: number;
356
+ /** Target value */
357
+ targetValue: number;
358
+ /** Current value */
359
+ currentValue?: number;
360
+ /** Unit of measurement */
361
+ unit?: string;
362
+ /** Progress percentage */
363
+ progress?: number;
364
+ }
365
+ /**
366
+ * Financial metrics and calculations
367
+ */
368
+ export interface FinancialMetrics {
369
+ /** Revenue */
370
+ revenue?: number;
371
+ /** Cost of goods sold */
372
+ cogs?: number;
373
+ /** Gross profit */
374
+ grossProfit?: number;
375
+ /** Gross margin percentage */
376
+ grossMargin?: number;
377
+ /** Operating expenses */
378
+ operatingExpenses?: number;
379
+ /** Operating income */
380
+ operatingIncome?: number;
381
+ /** Operating margin percentage */
382
+ operatingMargin?: number;
383
+ /** Net income */
384
+ netIncome?: number;
385
+ /** Net margin percentage */
386
+ netMargin?: number;
387
+ /** EBITDA */
388
+ ebitda?: number;
389
+ /** EBITDA margin percentage */
390
+ ebitdaMargin?: number;
391
+ /** Cash flow from operations */
392
+ operatingCashFlow?: number;
393
+ /** Free cash flow */
394
+ freeCashFlow?: number;
395
+ /** Currency */
396
+ currency?: Currency;
397
+ /** Period */
398
+ period?: TimePeriod;
399
+ }
400
+ /**
401
+ * Financial statement data
402
+ */
403
+ export interface FinancialStatement {
404
+ /** Statement type */
405
+ type: 'income' | 'balance-sheet' | 'cash-flow';
406
+ /** Period */
407
+ period: string;
408
+ /** Line items */
409
+ lineItems: Record<string, number>;
410
+ /** Currency */
411
+ currency: Currency;
412
+ /** Metadata */
413
+ metadata?: Record<string, unknown>;
414
+ }
415
+ /**
416
+ * Business context for $ helper
417
+ */
418
+ export interface BusinessContext {
419
+ /** Current business entity */
420
+ business?: BusinessDefinition;
421
+ /** Active goals */
422
+ goals?: GoalDefinition[];
423
+ /** Active OKRs */
424
+ okrs?: OKRDefinition[];
425
+ /** Tracked KPIs */
426
+ kpis?: KPIDefinition[];
427
+ /** Financial data */
428
+ financials?: FinancialMetrics;
429
+ /** Custom context data */
430
+ [key: string]: unknown;
431
+ }
432
+ /**
433
+ * $ helper for business operations
434
+ */
435
+ export interface BusinessOperations {
436
+ /** Format currency value */
437
+ format: (amount: number, currency?: Currency) => string;
438
+ /** Calculate percentage */
439
+ percent: (value: number, total: number) => number;
440
+ /** Calculate growth rate */
441
+ growth: (current: number, previous: number) => number;
442
+ /** Calculate margin */
443
+ margin: (revenue: number, cost: number) => number;
444
+ /** Calculate return on investment */
445
+ roi: (gain: number, cost: number) => number;
446
+ /** Calculate customer lifetime value */
447
+ ltv: (averageValue: number, frequency: number, lifetime: number) => number;
448
+ /** Calculate customer acquisition cost */
449
+ cac: (marketingSpend: number, newCustomers: number) => number;
450
+ /** Calculate burn rate */
451
+ burnRate: (cashStart: number, cashEnd: number, months: number) => number;
452
+ /** Calculate runway */
453
+ runway: (cash: number, burnRate: number) => number;
454
+ /** Access business context */
455
+ context: BusinessContext;
456
+ /** Log business event */
457
+ log: (event: string, data?: unknown) => void;
458
+ }
459
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Core types for business-as-code primitives
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Vision statement definition
3
+ */
4
+ import type { VisionDefinition } from './types.js';
5
+ /**
6
+ * Define a business vision statement with timeframe and success indicators
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const vision = Vision({
11
+ * statement: 'To become the world\'s most trusted widget platform',
12
+ * timeframe: '5 years',
13
+ * successIndicators: [
14
+ * '10M+ active users',
15
+ * 'Present in 50+ countries',
16
+ * 'Industry-leading NPS score',
17
+ * '$1B+ annual revenue',
18
+ * ],
19
+ * })
20
+ * ```
21
+ */
22
+ export declare function Vision(definition: VisionDefinition): VisionDefinition;
23
+ /**
24
+ * Check if a success indicator has been achieved
25
+ */
26
+ export declare function checkIndicator(vision: VisionDefinition, indicator: string, currentMetrics: Record<string, number | boolean>): boolean;
27
+ /**
28
+ * Calculate vision progress based on achieved indicators
29
+ */
30
+ export declare function calculateProgress(vision: VisionDefinition, currentMetrics: Record<string, number | boolean>): number;
31
+ /**
32
+ * Validate vision definition
33
+ */
34
+ export declare function validateVision(vision: VisionDefinition): {
35
+ valid: boolean;
36
+ errors: string[];
37
+ };
38
+ //# sourceMappingURL=vision.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vision.d.ts","sourceRoot":"","sources":["../src/vision.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,MAAM,CAAC,UAAU,EAAE,gBAAgB,GAAG,gBAAgB,CAYrE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,gBAAgB,EACxB,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAC/C,OAAO,CAKT;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,gBAAgB,EACxB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAC/C,MAAM,CAUR;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,gBAAgB,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAe7F"}