@lssm/example.service-business-os 0.0.0-canary-20251217054315 → 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.
@@ -0,0 +1,64 @@
1
+ import * as _lssm_lib_schema37 from "@lssm/lib.schema";
2
+ import * as _lssm_lib_contracts0 from "@lssm/lib.contracts";
3
+
4
+ //#region src/client/client.contracts.d.ts
5
+ /**
6
+ * Create a new client.
7
+ */
8
+ declare const CreateClientContract: _lssm_lib_contracts0.ContractSpec<_lssm_lib_schema37.SchemaModel<{
9
+ name: {
10
+ type: _lssm_lib_schema37.FieldType<string, string>;
11
+ isOptional: false;
12
+ };
13
+ contactEmail: {
14
+ type: _lssm_lib_schema37.FieldType<string, string>;
15
+ isOptional: true;
16
+ };
17
+ phone: {
18
+ type: _lssm_lib_schema37.FieldType<string, string>;
19
+ isOptional: true;
20
+ };
21
+ orgId: {
22
+ type: _lssm_lib_schema37.FieldType<string, string>;
23
+ isOptional: false;
24
+ };
25
+ ownerId: {
26
+ type: _lssm_lib_schema37.FieldType<string, string>;
27
+ isOptional: false;
28
+ };
29
+ metadata: {
30
+ type: _lssm_lib_schema37.FieldType<unknown, unknown>;
31
+ isOptional: true;
32
+ };
33
+ }>, _lssm_lib_schema37.SchemaModel<{
34
+ id: {
35
+ type: _lssm_lib_schema37.FieldType<string, string>;
36
+ isOptional: false;
37
+ };
38
+ name: {
39
+ type: _lssm_lib_schema37.FieldType<string, string>;
40
+ isOptional: false;
41
+ };
42
+ contactEmail: {
43
+ type: _lssm_lib_schema37.FieldType<string, string>;
44
+ isOptional: true;
45
+ };
46
+ phone: {
47
+ type: _lssm_lib_schema37.FieldType<string, string>;
48
+ isOptional: true;
49
+ };
50
+ orgId: {
51
+ type: _lssm_lib_schema37.FieldType<string, string>;
52
+ isOptional: false;
53
+ };
54
+ ownerId: {
55
+ type: _lssm_lib_schema37.FieldType<string, string>;
56
+ isOptional: false;
57
+ };
58
+ createdAt: {
59
+ type: _lssm_lib_schema37.FieldType<Date, string>;
60
+ isOptional: false;
61
+ };
62
+ }>, undefined>;
63
+ //#endregion
64
+ export { CreateClientContract };
@@ -0,0 +1,67 @@
1
+ import * as _lssm_lib_schema0 from "@lssm/lib.schema";
2
+
3
+ //#region src/client/client.schema.d.ts
4
+ /**
5
+ * Client profile.
6
+ */
7
+ declare const ClientModel: _lssm_lib_schema0.SchemaModel<{
8
+ id: {
9
+ type: _lssm_lib_schema0.FieldType<string, string>;
10
+ isOptional: false;
11
+ };
12
+ name: {
13
+ type: _lssm_lib_schema0.FieldType<string, string>;
14
+ isOptional: false;
15
+ };
16
+ contactEmail: {
17
+ type: _lssm_lib_schema0.FieldType<string, string>;
18
+ isOptional: true;
19
+ };
20
+ phone: {
21
+ type: _lssm_lib_schema0.FieldType<string, string>;
22
+ isOptional: true;
23
+ };
24
+ orgId: {
25
+ type: _lssm_lib_schema0.FieldType<string, string>;
26
+ isOptional: false;
27
+ };
28
+ ownerId: {
29
+ type: _lssm_lib_schema0.FieldType<string, string>;
30
+ isOptional: false;
31
+ };
32
+ createdAt: {
33
+ type: _lssm_lib_schema0.FieldType<Date, string>;
34
+ isOptional: false;
35
+ };
36
+ }>;
37
+ /**
38
+ * Input for creating a client.
39
+ */
40
+ declare const CreateClientInputModel: _lssm_lib_schema0.SchemaModel<{
41
+ name: {
42
+ type: _lssm_lib_schema0.FieldType<string, string>;
43
+ isOptional: false;
44
+ };
45
+ contactEmail: {
46
+ type: _lssm_lib_schema0.FieldType<string, string>;
47
+ isOptional: true;
48
+ };
49
+ phone: {
50
+ type: _lssm_lib_schema0.FieldType<string, string>;
51
+ isOptional: true;
52
+ };
53
+ orgId: {
54
+ type: _lssm_lib_schema0.FieldType<string, string>;
55
+ isOptional: false;
56
+ };
57
+ ownerId: {
58
+ type: _lssm_lib_schema0.FieldType<string, string>;
59
+ isOptional: false;
60
+ };
61
+ metadata: {
62
+ type: _lssm_lib_schema0.FieldType<unknown, unknown>;
63
+ isOptional: true;
64
+ };
65
+ }>;
66
+ //#endregion
67
+ export { ClientModel, CreateClientInputModel };
@@ -0,0 +1,3 @@
1
+ import { CreateClientContract } from "./client.contracts.js";
2
+ import { ClientModel, CreateClientInputModel } from "./client.schema.js";
3
+ export { ClientModel, CreateClientContract, CreateClientInputModel };
@@ -0,0 +1,16 @@
1
+ import { CreateClientContract } from "../client/client.contracts.js";
2
+ import { ClientModel, CreateClientInputModel } from "../client/client.schema.js";
3
+ import "../client/index.js";
4
+ import { AcceptQuoteInputModel, CreateQuoteInputModel, QuoteModel } from "../quote/quote.schema.js";
5
+ import { AcceptQuoteContract, CreateQuoteContract } from "../quote/quote.contracts.js";
6
+ import "../quote/index.js";
7
+ import { CompleteJobInputModel, JobModel, ScheduleJobInputModel } from "../job/job.schema.js";
8
+ import { CompleteJobContract, ScheduleJobContract } from "../job/job.contracts.js";
9
+ import "../job/index.js";
10
+ import { InvoiceModel, IssueInvoiceInputModel } from "../invoice/invoice.schema.js";
11
+ import { IssueInvoiceContract } from "../invoice/invoice.contracts.js";
12
+ import "../invoice/index.js";
13
+ import { PaymentModel, RecordPaymentInputModel } from "../payment/payment.schema.js";
14
+ import { RecordPaymentContract } from "../payment/payment.contracts.js";
15
+ import "../payment/index.js";
16
+ export { AcceptQuoteContract, AcceptQuoteInputModel, ClientModel, CompleteJobContract, CompleteJobInputModel, CreateClientContract, CreateClientInputModel, CreateQuoteContract, CreateQuoteInputModel, InvoiceModel, IssueInvoiceContract, IssueInvoiceInputModel, JobModel, PaymentModel, QuoteModel, RecordPaymentContract, RecordPaymentInputModel, ScheduleJobContract, ScheduleJobInputModel };
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1,167 @@
1
+ import * as _lssm_lib_schema280 from "@lssm/lib.schema";
2
+ import { ModuleSchemaContribution } from "@lssm/lib.schema";
3
+
4
+ //#region src/entities/index.d.ts
5
+ declare const QuoteStatusEnum: _lssm_lib_schema280.EntityEnumDef;
6
+ declare const JobStatusEnum: _lssm_lib_schema280.EntityEnumDef;
7
+ declare const InvoiceStatusEnum: _lssm_lib_schema280.EntityEnumDef;
8
+ declare const PaymentMethodEnum: _lssm_lib_schema280.EntityEnumDef;
9
+ declare const ClientEntity: _lssm_lib_schema280.EntitySpec<{
10
+ id: _lssm_lib_schema280.EntityScalarField;
11
+ name: _lssm_lib_schema280.EntityScalarField;
12
+ contactEmail: _lssm_lib_schema280.EntityScalarField;
13
+ phone: _lssm_lib_schema280.EntityScalarField;
14
+ address: _lssm_lib_schema280.EntityScalarField;
15
+ industry: _lssm_lib_schema280.EntityScalarField;
16
+ orgId: _lssm_lib_schema280.EntityScalarField;
17
+ ownerId: _lssm_lib_schema280.EntityScalarField;
18
+ metadata: _lssm_lib_schema280.EntityScalarField;
19
+ createdAt: _lssm_lib_schema280.EntityScalarField;
20
+ updatedAt: _lssm_lib_schema280.EntityScalarField;
21
+ quotes: _lssm_lib_schema280.EntityRelationField;
22
+ jobs: _lssm_lib_schema280.EntityRelationField;
23
+ }>;
24
+ declare const QuoteEntity: _lssm_lib_schema280.EntitySpec<{
25
+ id: _lssm_lib_schema280.EntityScalarField;
26
+ clientId: _lssm_lib_schema280.EntityScalarField;
27
+ title: _lssm_lib_schema280.EntityScalarField;
28
+ description: _lssm_lib_schema280.EntityScalarField;
29
+ amount: _lssm_lib_schema280.EntityScalarField;
30
+ currency: _lssm_lib_schema280.EntityScalarField;
31
+ status: _lssm_lib_schema280.EntityEnumField;
32
+ validUntil: _lssm_lib_schema280.EntityScalarField;
33
+ terms: _lssm_lib_schema280.EntityScalarField;
34
+ orgId: _lssm_lib_schema280.EntityScalarField;
35
+ ownerId: _lssm_lib_schema280.EntityScalarField;
36
+ createdAt: _lssm_lib_schema280.EntityScalarField;
37
+ updatedAt: _lssm_lib_schema280.EntityScalarField;
38
+ client: _lssm_lib_schema280.EntityRelationField;
39
+ jobs: _lssm_lib_schema280.EntityRelationField;
40
+ }>;
41
+ declare const JobEntity: _lssm_lib_schema280.EntitySpec<{
42
+ id: _lssm_lib_schema280.EntityScalarField;
43
+ quoteId: _lssm_lib_schema280.EntityScalarField;
44
+ clientId: _lssm_lib_schema280.EntityScalarField;
45
+ title: _lssm_lib_schema280.EntityScalarField;
46
+ status: _lssm_lib_schema280.EntityEnumField;
47
+ scheduledAt: _lssm_lib_schema280.EntityScalarField;
48
+ completedAt: _lssm_lib_schema280.EntityScalarField;
49
+ assignedTo: _lssm_lib_schema280.EntityScalarField;
50
+ location: _lssm_lib_schema280.EntityScalarField;
51
+ notes: _lssm_lib_schema280.EntityScalarField;
52
+ orgId: _lssm_lib_schema280.EntityScalarField;
53
+ createdAt: _lssm_lib_schema280.EntityScalarField;
54
+ updatedAt: _lssm_lib_schema280.EntityScalarField;
55
+ quote: _lssm_lib_schema280.EntityRelationField;
56
+ client: _lssm_lib_schema280.EntityRelationField;
57
+ invoices: _lssm_lib_schema280.EntityRelationField;
58
+ }>;
59
+ declare const InvoiceEntity: _lssm_lib_schema280.EntitySpec<{
60
+ id: _lssm_lib_schema280.EntityScalarField;
61
+ jobId: _lssm_lib_schema280.EntityScalarField;
62
+ invoiceNumber: _lssm_lib_schema280.EntityScalarField;
63
+ amount: _lssm_lib_schema280.EntityScalarField;
64
+ currency: _lssm_lib_schema280.EntityScalarField;
65
+ status: _lssm_lib_schema280.EntityEnumField;
66
+ dueDate: _lssm_lib_schema280.EntityScalarField;
67
+ issuedAt: _lssm_lib_schema280.EntityScalarField;
68
+ paidAt: _lssm_lib_schema280.EntityScalarField;
69
+ orgId: _lssm_lib_schema280.EntityScalarField;
70
+ notes: _lssm_lib_schema280.EntityScalarField;
71
+ metadata: _lssm_lib_schema280.EntityScalarField;
72
+ createdAt: _lssm_lib_schema280.EntityScalarField;
73
+ updatedAt: _lssm_lib_schema280.EntityScalarField;
74
+ job: _lssm_lib_schema280.EntityRelationField;
75
+ payments: _lssm_lib_schema280.EntityRelationField;
76
+ }>;
77
+ declare const PaymentEntity: _lssm_lib_schema280.EntitySpec<{
78
+ id: _lssm_lib_schema280.EntityScalarField;
79
+ invoiceId: _lssm_lib_schema280.EntityScalarField;
80
+ amount: _lssm_lib_schema280.EntityScalarField;
81
+ currency: _lssm_lib_schema280.EntityScalarField;
82
+ method: _lssm_lib_schema280.EntityEnumField;
83
+ reference: _lssm_lib_schema280.EntityScalarField;
84
+ receivedAt: _lssm_lib_schema280.EntityScalarField;
85
+ orgId: _lssm_lib_schema280.EntityScalarField;
86
+ createdAt: _lssm_lib_schema280.EntityScalarField;
87
+ invoice: _lssm_lib_schema280.EntityRelationField;
88
+ }>;
89
+ declare const serviceBusinessEntities: (_lssm_lib_schema280.EntitySpec<{
90
+ id: _lssm_lib_schema280.EntityScalarField;
91
+ name: _lssm_lib_schema280.EntityScalarField;
92
+ contactEmail: _lssm_lib_schema280.EntityScalarField;
93
+ phone: _lssm_lib_schema280.EntityScalarField;
94
+ address: _lssm_lib_schema280.EntityScalarField;
95
+ industry: _lssm_lib_schema280.EntityScalarField;
96
+ orgId: _lssm_lib_schema280.EntityScalarField;
97
+ ownerId: _lssm_lib_schema280.EntityScalarField;
98
+ metadata: _lssm_lib_schema280.EntityScalarField;
99
+ createdAt: _lssm_lib_schema280.EntityScalarField;
100
+ updatedAt: _lssm_lib_schema280.EntityScalarField;
101
+ quotes: _lssm_lib_schema280.EntityRelationField;
102
+ jobs: _lssm_lib_schema280.EntityRelationField;
103
+ }> | _lssm_lib_schema280.EntitySpec<{
104
+ id: _lssm_lib_schema280.EntityScalarField;
105
+ clientId: _lssm_lib_schema280.EntityScalarField;
106
+ title: _lssm_lib_schema280.EntityScalarField;
107
+ description: _lssm_lib_schema280.EntityScalarField;
108
+ amount: _lssm_lib_schema280.EntityScalarField;
109
+ currency: _lssm_lib_schema280.EntityScalarField;
110
+ status: _lssm_lib_schema280.EntityEnumField;
111
+ validUntil: _lssm_lib_schema280.EntityScalarField;
112
+ terms: _lssm_lib_schema280.EntityScalarField;
113
+ orgId: _lssm_lib_schema280.EntityScalarField;
114
+ ownerId: _lssm_lib_schema280.EntityScalarField;
115
+ createdAt: _lssm_lib_schema280.EntityScalarField;
116
+ updatedAt: _lssm_lib_schema280.EntityScalarField;
117
+ client: _lssm_lib_schema280.EntityRelationField;
118
+ jobs: _lssm_lib_schema280.EntityRelationField;
119
+ }> | _lssm_lib_schema280.EntitySpec<{
120
+ id: _lssm_lib_schema280.EntityScalarField;
121
+ quoteId: _lssm_lib_schema280.EntityScalarField;
122
+ clientId: _lssm_lib_schema280.EntityScalarField;
123
+ title: _lssm_lib_schema280.EntityScalarField;
124
+ status: _lssm_lib_schema280.EntityEnumField;
125
+ scheduledAt: _lssm_lib_schema280.EntityScalarField;
126
+ completedAt: _lssm_lib_schema280.EntityScalarField;
127
+ assignedTo: _lssm_lib_schema280.EntityScalarField;
128
+ location: _lssm_lib_schema280.EntityScalarField;
129
+ notes: _lssm_lib_schema280.EntityScalarField;
130
+ orgId: _lssm_lib_schema280.EntityScalarField;
131
+ createdAt: _lssm_lib_schema280.EntityScalarField;
132
+ updatedAt: _lssm_lib_schema280.EntityScalarField;
133
+ quote: _lssm_lib_schema280.EntityRelationField;
134
+ client: _lssm_lib_schema280.EntityRelationField;
135
+ invoices: _lssm_lib_schema280.EntityRelationField;
136
+ }> | _lssm_lib_schema280.EntitySpec<{
137
+ id: _lssm_lib_schema280.EntityScalarField;
138
+ jobId: _lssm_lib_schema280.EntityScalarField;
139
+ invoiceNumber: _lssm_lib_schema280.EntityScalarField;
140
+ amount: _lssm_lib_schema280.EntityScalarField;
141
+ currency: _lssm_lib_schema280.EntityScalarField;
142
+ status: _lssm_lib_schema280.EntityEnumField;
143
+ dueDate: _lssm_lib_schema280.EntityScalarField;
144
+ issuedAt: _lssm_lib_schema280.EntityScalarField;
145
+ paidAt: _lssm_lib_schema280.EntityScalarField;
146
+ orgId: _lssm_lib_schema280.EntityScalarField;
147
+ notes: _lssm_lib_schema280.EntityScalarField;
148
+ metadata: _lssm_lib_schema280.EntityScalarField;
149
+ createdAt: _lssm_lib_schema280.EntityScalarField;
150
+ updatedAt: _lssm_lib_schema280.EntityScalarField;
151
+ job: _lssm_lib_schema280.EntityRelationField;
152
+ payments: _lssm_lib_schema280.EntityRelationField;
153
+ }> | _lssm_lib_schema280.EntitySpec<{
154
+ id: _lssm_lib_schema280.EntityScalarField;
155
+ invoiceId: _lssm_lib_schema280.EntityScalarField;
156
+ amount: _lssm_lib_schema280.EntityScalarField;
157
+ currency: _lssm_lib_schema280.EntityScalarField;
158
+ method: _lssm_lib_schema280.EntityEnumField;
159
+ reference: _lssm_lib_schema280.EntityScalarField;
160
+ receivedAt: _lssm_lib_schema280.EntityScalarField;
161
+ orgId: _lssm_lib_schema280.EntityScalarField;
162
+ createdAt: _lssm_lib_schema280.EntityScalarField;
163
+ invoice: _lssm_lib_schema280.EntityRelationField;
164
+ }>)[];
165
+ declare const serviceBusinessSchemaContribution: ModuleSchemaContribution;
166
+ //#endregion
167
+ export { ClientEntity, InvoiceEntity, InvoiceStatusEnum, JobEntity, JobStatusEnum, PaymentEntity, PaymentMethodEnum, QuoteEntity, QuoteStatusEnum, serviceBusinessEntities, serviceBusinessSchemaContribution };
@@ -0,0 +1,336 @@
1
+ import * as _lssm_lib_schema52 from "@lssm/lib.schema";
2
+ import * as _lssm_lib_contracts0 from "@lssm/lib.contracts";
3
+
4
+ //#region src/events.d.ts
5
+ declare const QuoteSentEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
6
+ quoteId: {
7
+ type: _lssm_lib_schema52.FieldType<string, string>;
8
+ isOptional: false;
9
+ };
10
+ clientId: {
11
+ type: _lssm_lib_schema52.FieldType<string, string>;
12
+ isOptional: false;
13
+ };
14
+ amount: {
15
+ type: _lssm_lib_schema52.FieldType<number, number>;
16
+ isOptional: false;
17
+ };
18
+ status: {
19
+ type: _lssm_lib_schema52.FieldType<string, string>;
20
+ isOptional: false;
21
+ };
22
+ orgId: {
23
+ type: _lssm_lib_schema52.FieldType<string, string>;
24
+ isOptional: false;
25
+ };
26
+ occurredAt: {
27
+ type: _lssm_lib_schema52.FieldType<Date, string>;
28
+ isOptional: false;
29
+ };
30
+ }>>;
31
+ declare const QuoteAcceptedEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
32
+ quoteId: {
33
+ type: _lssm_lib_schema52.FieldType<string, string>;
34
+ isOptional: false;
35
+ };
36
+ clientId: {
37
+ type: _lssm_lib_schema52.FieldType<string, string>;
38
+ isOptional: false;
39
+ };
40
+ amount: {
41
+ type: _lssm_lib_schema52.FieldType<number, number>;
42
+ isOptional: false;
43
+ };
44
+ status: {
45
+ type: _lssm_lib_schema52.FieldType<string, string>;
46
+ isOptional: false;
47
+ };
48
+ orgId: {
49
+ type: _lssm_lib_schema52.FieldType<string, string>;
50
+ isOptional: false;
51
+ };
52
+ occurredAt: {
53
+ type: _lssm_lib_schema52.FieldType<Date, string>;
54
+ isOptional: false;
55
+ };
56
+ }>>;
57
+ declare const JobScheduledEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
58
+ jobId: {
59
+ type: _lssm_lib_schema52.FieldType<string, string>;
60
+ isOptional: false;
61
+ };
62
+ quoteId: {
63
+ type: _lssm_lib_schema52.FieldType<string, string>;
64
+ isOptional: true;
65
+ };
66
+ clientId: {
67
+ type: _lssm_lib_schema52.FieldType<string, string>;
68
+ isOptional: true;
69
+ };
70
+ status: {
71
+ type: _lssm_lib_schema52.FieldType<string, string>;
72
+ isOptional: false;
73
+ };
74
+ scheduledAt: {
75
+ type: _lssm_lib_schema52.FieldType<Date, string>;
76
+ isOptional: true;
77
+ };
78
+ orgId: {
79
+ type: _lssm_lib_schema52.FieldType<string, string>;
80
+ isOptional: false;
81
+ };
82
+ occurredAt: {
83
+ type: _lssm_lib_schema52.FieldType<Date, string>;
84
+ isOptional: false;
85
+ };
86
+ }>>;
87
+ declare const JobCompletedEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
88
+ jobId: {
89
+ type: _lssm_lib_schema52.FieldType<string, string>;
90
+ isOptional: false;
91
+ };
92
+ quoteId: {
93
+ type: _lssm_lib_schema52.FieldType<string, string>;
94
+ isOptional: true;
95
+ };
96
+ clientId: {
97
+ type: _lssm_lib_schema52.FieldType<string, string>;
98
+ isOptional: true;
99
+ };
100
+ status: {
101
+ type: _lssm_lib_schema52.FieldType<string, string>;
102
+ isOptional: false;
103
+ };
104
+ scheduledAt: {
105
+ type: _lssm_lib_schema52.FieldType<Date, string>;
106
+ isOptional: true;
107
+ };
108
+ orgId: {
109
+ type: _lssm_lib_schema52.FieldType<string, string>;
110
+ isOptional: false;
111
+ };
112
+ occurredAt: {
113
+ type: _lssm_lib_schema52.FieldType<Date, string>;
114
+ isOptional: false;
115
+ };
116
+ }>>;
117
+ declare const InvoiceIssuedEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
118
+ invoiceId: {
119
+ type: _lssm_lib_schema52.FieldType<string, string>;
120
+ isOptional: false;
121
+ };
122
+ jobId: {
123
+ type: _lssm_lib_schema52.FieldType<string, string>;
124
+ isOptional: false;
125
+ };
126
+ amount: {
127
+ type: _lssm_lib_schema52.FieldType<number, number>;
128
+ isOptional: false;
129
+ };
130
+ status: {
131
+ type: _lssm_lib_schema52.FieldType<string, string>;
132
+ isOptional: false;
133
+ };
134
+ orgId: {
135
+ type: _lssm_lib_schema52.FieldType<string, string>;
136
+ isOptional: false;
137
+ };
138
+ occurredAt: {
139
+ type: _lssm_lib_schema52.FieldType<Date, string>;
140
+ isOptional: false;
141
+ };
142
+ }>>;
143
+ declare const PaymentReceivedEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
144
+ paymentId: {
145
+ type: _lssm_lib_schema52.FieldType<string, string>;
146
+ isOptional: false;
147
+ };
148
+ invoiceId: {
149
+ type: _lssm_lib_schema52.FieldType<string, string>;
150
+ isOptional: false;
151
+ };
152
+ amount: {
153
+ type: _lssm_lib_schema52.FieldType<number, number>;
154
+ isOptional: false;
155
+ };
156
+ method: {
157
+ type: _lssm_lib_schema52.FieldType<string, string>;
158
+ isOptional: false;
159
+ };
160
+ orgId: {
161
+ type: _lssm_lib_schema52.FieldType<string, string>;
162
+ isOptional: false;
163
+ };
164
+ receivedAt: {
165
+ type: _lssm_lib_schema52.FieldType<Date, string>;
166
+ isOptional: false;
167
+ };
168
+ }>>;
169
+ declare const ServiceBusinessEvents: {
170
+ QuoteSentEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
171
+ quoteId: {
172
+ type: _lssm_lib_schema52.FieldType<string, string>;
173
+ isOptional: false;
174
+ };
175
+ clientId: {
176
+ type: _lssm_lib_schema52.FieldType<string, string>;
177
+ isOptional: false;
178
+ };
179
+ amount: {
180
+ type: _lssm_lib_schema52.FieldType<number, number>;
181
+ isOptional: false;
182
+ };
183
+ status: {
184
+ type: _lssm_lib_schema52.FieldType<string, string>;
185
+ isOptional: false;
186
+ };
187
+ orgId: {
188
+ type: _lssm_lib_schema52.FieldType<string, string>;
189
+ isOptional: false;
190
+ };
191
+ occurredAt: {
192
+ type: _lssm_lib_schema52.FieldType<Date, string>;
193
+ isOptional: false;
194
+ };
195
+ }>>;
196
+ QuoteAcceptedEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
197
+ quoteId: {
198
+ type: _lssm_lib_schema52.FieldType<string, string>;
199
+ isOptional: false;
200
+ };
201
+ clientId: {
202
+ type: _lssm_lib_schema52.FieldType<string, string>;
203
+ isOptional: false;
204
+ };
205
+ amount: {
206
+ type: _lssm_lib_schema52.FieldType<number, number>;
207
+ isOptional: false;
208
+ };
209
+ status: {
210
+ type: _lssm_lib_schema52.FieldType<string, string>;
211
+ isOptional: false;
212
+ };
213
+ orgId: {
214
+ type: _lssm_lib_schema52.FieldType<string, string>;
215
+ isOptional: false;
216
+ };
217
+ occurredAt: {
218
+ type: _lssm_lib_schema52.FieldType<Date, string>;
219
+ isOptional: false;
220
+ };
221
+ }>>;
222
+ JobScheduledEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
223
+ jobId: {
224
+ type: _lssm_lib_schema52.FieldType<string, string>;
225
+ isOptional: false;
226
+ };
227
+ quoteId: {
228
+ type: _lssm_lib_schema52.FieldType<string, string>;
229
+ isOptional: true;
230
+ };
231
+ clientId: {
232
+ type: _lssm_lib_schema52.FieldType<string, string>;
233
+ isOptional: true;
234
+ };
235
+ status: {
236
+ type: _lssm_lib_schema52.FieldType<string, string>;
237
+ isOptional: false;
238
+ };
239
+ scheduledAt: {
240
+ type: _lssm_lib_schema52.FieldType<Date, string>;
241
+ isOptional: true;
242
+ };
243
+ orgId: {
244
+ type: _lssm_lib_schema52.FieldType<string, string>;
245
+ isOptional: false;
246
+ };
247
+ occurredAt: {
248
+ type: _lssm_lib_schema52.FieldType<Date, string>;
249
+ isOptional: false;
250
+ };
251
+ }>>;
252
+ JobCompletedEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
253
+ jobId: {
254
+ type: _lssm_lib_schema52.FieldType<string, string>;
255
+ isOptional: false;
256
+ };
257
+ quoteId: {
258
+ type: _lssm_lib_schema52.FieldType<string, string>;
259
+ isOptional: true;
260
+ };
261
+ clientId: {
262
+ type: _lssm_lib_schema52.FieldType<string, string>;
263
+ isOptional: true;
264
+ };
265
+ status: {
266
+ type: _lssm_lib_schema52.FieldType<string, string>;
267
+ isOptional: false;
268
+ };
269
+ scheduledAt: {
270
+ type: _lssm_lib_schema52.FieldType<Date, string>;
271
+ isOptional: true;
272
+ };
273
+ orgId: {
274
+ type: _lssm_lib_schema52.FieldType<string, string>;
275
+ isOptional: false;
276
+ };
277
+ occurredAt: {
278
+ type: _lssm_lib_schema52.FieldType<Date, string>;
279
+ isOptional: false;
280
+ };
281
+ }>>;
282
+ InvoiceIssuedEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
283
+ invoiceId: {
284
+ type: _lssm_lib_schema52.FieldType<string, string>;
285
+ isOptional: false;
286
+ };
287
+ jobId: {
288
+ type: _lssm_lib_schema52.FieldType<string, string>;
289
+ isOptional: false;
290
+ };
291
+ amount: {
292
+ type: _lssm_lib_schema52.FieldType<number, number>;
293
+ isOptional: false;
294
+ };
295
+ status: {
296
+ type: _lssm_lib_schema52.FieldType<string, string>;
297
+ isOptional: false;
298
+ };
299
+ orgId: {
300
+ type: _lssm_lib_schema52.FieldType<string, string>;
301
+ isOptional: false;
302
+ };
303
+ occurredAt: {
304
+ type: _lssm_lib_schema52.FieldType<Date, string>;
305
+ isOptional: false;
306
+ };
307
+ }>>;
308
+ PaymentReceivedEvent: _lssm_lib_contracts0.EventSpec<_lssm_lib_schema52.SchemaModel<{
309
+ paymentId: {
310
+ type: _lssm_lib_schema52.FieldType<string, string>;
311
+ isOptional: false;
312
+ };
313
+ invoiceId: {
314
+ type: _lssm_lib_schema52.FieldType<string, string>;
315
+ isOptional: false;
316
+ };
317
+ amount: {
318
+ type: _lssm_lib_schema52.FieldType<number, number>;
319
+ isOptional: false;
320
+ };
321
+ method: {
322
+ type: _lssm_lib_schema52.FieldType<string, string>;
323
+ isOptional: false;
324
+ };
325
+ orgId: {
326
+ type: _lssm_lib_schema52.FieldType<string, string>;
327
+ isOptional: false;
328
+ };
329
+ receivedAt: {
330
+ type: _lssm_lib_schema52.FieldType<Date, string>;
331
+ isOptional: false;
332
+ };
333
+ }>>;
334
+ };
335
+ //#endregion
336
+ export { InvoiceIssuedEvent, JobCompletedEvent, JobScheduledEvent, PaymentReceivedEvent, QuoteAcceptedEvent, QuoteSentEvent, ServiceBusinessEvents };
@@ -0,0 +1,36 @@
1
+ //#region src/example.d.ts
2
+ declare const example: {
3
+ readonly id: "service-business-os";
4
+ readonly title: "Service Business OS";
5
+ readonly summary: "Service business operating system: jobs, clients, scheduling, invoicing, and ops dashboards.";
6
+ readonly tags: readonly ["service-business", "jobs", "scheduling", "invoicing"];
7
+ readonly kind: "template";
8
+ readonly visibility: "public";
9
+ readonly docs: {
10
+ readonly rootDocId: "docs.examples.service-business-os";
11
+ };
12
+ readonly entrypoints: {
13
+ readonly packageName: "@lssm/example.service-business-os";
14
+ readonly feature: "./feature";
15
+ readonly contracts: "./contracts";
16
+ readonly presentations: "./presentations";
17
+ readonly handlers: "./handlers";
18
+ readonly docs: "./docs";
19
+ };
20
+ readonly surfaces: {
21
+ readonly templates: true;
22
+ readonly sandbox: {
23
+ readonly enabled: true;
24
+ readonly modes: readonly ["playground", "specs", "builder", "markdown", "evolution"];
25
+ };
26
+ readonly studio: {
27
+ readonly enabled: true;
28
+ readonly installable: true;
29
+ };
30
+ readonly mcp: {
31
+ readonly enabled: true;
32
+ };
33
+ };
34
+ };
35
+ //#endregion
36
+ export { example as default };