@thecorporation/corp-tools 26.3.24 → 26.3.25

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,3462 @@
1
+ /** @deprecated Use specific generated types from api-schemas.ts instead */
2
+ type ApiRecord = Record<string, unknown>;
3
+ interface CreateEquityRoundRequest {
4
+ entity_id: string;
5
+ issuer_legal_entity_id: string;
6
+ name: string;
7
+ pre_money_cents?: number;
8
+ round_price_cents?: number;
9
+ target_raise_cents?: number;
10
+ conversion_target_instrument_id?: string;
11
+ metadata?: Record<string, unknown>;
12
+ }
13
+ interface ApplyEquityRoundTermsRequest {
14
+ entity_id: string;
15
+ anti_dilution_method: string;
16
+ conversion_precedence?: string[];
17
+ protective_provisions?: Record<string, unknown>;
18
+ }
19
+ interface BoardApproveEquityRoundRequest {
20
+ entity_id: string;
21
+ meeting_id: string;
22
+ resolution_id: string;
23
+ }
24
+ interface AcceptEquityRoundRequest {
25
+ entity_id: string;
26
+ intent_id: string;
27
+ accepted_by_contact_id?: string;
28
+ }
29
+ interface PreviewRoundConversionRequest {
30
+ entity_id: string;
31
+ round_id: string;
32
+ source_reference?: string;
33
+ }
34
+ interface ExecuteRoundConversionRequest {
35
+ entity_id: string;
36
+ round_id: string;
37
+ intent_id: string;
38
+ source_reference?: string;
39
+ }
40
+ interface CreateExecutionIntentRequest {
41
+ entity_id: string;
42
+ intent_type: string;
43
+ authority_tier?: string;
44
+ description: string;
45
+ metadata?: Record<string, unknown>;
46
+ }
47
+ interface EquityRoundResponse extends ApiRecord {
48
+ round_id: string;
49
+ status: string;
50
+ }
51
+ interface IntentResponse extends ApiRecord {
52
+ intent_id: string;
53
+ status: string;
54
+ }
55
+
56
+ type components = {
57
+ schemas: {
58
+ AcceptRoundRequest: {
59
+ accepted_by_contact_id?: null | components["schemas"]["ContactId"];
60
+ entity_id: components["schemas"]["EntityId"];
61
+ intent_id: components["schemas"]["IntentId"];
62
+ };
63
+ /** Format: uuid */
64
+ AccountId: string;
65
+ AccountResponse: {
66
+ account_code: components["schemas"]["GlAccountCode"];
67
+ account_id: components["schemas"]["AccountId"];
68
+ account_name: string;
69
+ account_type: components["schemas"]["AccountType"];
70
+ created_at: string;
71
+ currency: components["schemas"]["Currency"];
72
+ entity_id: components["schemas"]["EntityId"];
73
+ is_active: boolean;
74
+ normal_balance: components["schemas"]["Side"];
75
+ };
76
+ /**
77
+ * @description The five fundamental accounting categories.
78
+ * @enum {string}
79
+ */
80
+ AccountType: "asset" | "liability" | "equity" | "revenue" | "expense";
81
+ AddFounderRequest: {
82
+ address?: null | components["schemas"]["Address"];
83
+ email?: string | null;
84
+ is_incorporator?: boolean | null;
85
+ name: string;
86
+ officer_title?: null | components["schemas"]["OfficerTitle"];
87
+ /** Format: double */
88
+ ownership_pct?: number | null;
89
+ role?: null | components["schemas"]["MemberRole"];
90
+ };
91
+ AddFounderResponse: {
92
+ entity_id: components["schemas"]["EntityId"];
93
+ member_count: number;
94
+ members: components["schemas"]["FounderSummary"][];
95
+ };
96
+ AddSecurityRequest: {
97
+ email?: string | null;
98
+ entity_id: components["schemas"]["EntityId"];
99
+ grant_type?: string | null;
100
+ holder_id?: null | components["schemas"]["HolderId"];
101
+ instrument_id: components["schemas"]["InstrumentId"];
102
+ /** Format: int64 */
103
+ principal_cents?: number;
104
+ /** Format: int64 */
105
+ quantity: number;
106
+ recipient_name: string;
107
+ };
108
+ AddSkillRequest: {
109
+ description: string;
110
+ /** @description Parsed at deserialization — empty names are rejected by `NonEmpty`. */
111
+ name: components["schemas"]["NonEmpty"];
112
+ parameters?: Record<string, never>;
113
+ };
114
+ /** @description A mailing address. */
115
+ Address: {
116
+ city: string;
117
+ state: string;
118
+ street: string;
119
+ street2?: string | null;
120
+ zip: string;
121
+ };
122
+ AdjustPositionRequest: {
123
+ entity_id: components["schemas"]["EntityId"];
124
+ holder_id: components["schemas"]["HolderId"];
125
+ instrument_id: components["schemas"]["InstrumentId"];
126
+ issuer_legal_entity_id: components["schemas"]["LegalEntityId"];
127
+ /** Format: int64 */
128
+ principal_delta_cents?: number;
129
+ /** Format: int64 */
130
+ quantity_delta: number;
131
+ source_reference?: string | null;
132
+ };
133
+ /** Format: uuid */
134
+ AgendaItemId: string;
135
+ AgendaItemResponse: {
136
+ agenda_item_id: components["schemas"]["AgendaItemId"];
137
+ created_at: string;
138
+ description?: string | null;
139
+ item_type: components["schemas"]["AgendaItemType"];
140
+ meeting_id: components["schemas"]["MeetingId"];
141
+ /** Format: int32 */
142
+ sequence_number: number;
143
+ status: components["schemas"]["AgendaItemStatus"];
144
+ title: string;
145
+ };
146
+ /**
147
+ * @description Status of an agenda item.
148
+ * @enum {string}
149
+ */
150
+ AgendaItemStatus: "pending" | "discussed" | "voted" | "tabled" | "withdrawn";
151
+ /**
152
+ * @description Type of item on a meeting agenda.
153
+ * @enum {string}
154
+ */
155
+ AgendaItemType: "resolution" | "discussion" | "report" | "election";
156
+ /** Format: uuid */
157
+ AgentId: string;
158
+ AgentInvoiceRequest: {
159
+ /** Format: int64 */
160
+ amount_cents: number;
161
+ customer_name: string;
162
+ description: string;
163
+ /** Format: date */
164
+ due_date: string;
165
+ entity_id: components["schemas"]["EntityId"];
166
+ };
167
+ AgentResponse: {
168
+ agent_id: components["schemas"]["AgentId"];
169
+ budget?: null | components["schemas"]["BudgetConfig"];
170
+ channels: components["schemas"]["ChannelConfig"][];
171
+ created_at: string;
172
+ email_address?: string | null;
173
+ entity_id?: null | components["schemas"]["EntityId"];
174
+ mcp_servers: components["schemas"]["MCPServerSpec"][];
175
+ model?: string | null;
176
+ name: string;
177
+ parent_agent_id?: null | components["schemas"]["AgentId"];
178
+ sandbox?: null | components["schemas"]["SandboxConfig"];
179
+ scopes: components["schemas"]["Scope"][];
180
+ skills: components["schemas"]["AgentSkill"][];
181
+ status: components["schemas"]["AgentStatus"];
182
+ system_prompt?: string | null;
183
+ tools: components["schemas"]["ToolSpec"][];
184
+ webhook_url?: string | null;
185
+ workspace_id: components["schemas"]["WorkspaceId"];
186
+ };
187
+ /** @description A skill that an agent can perform (used in api-rs Agent struct). */
188
+ AgentSkill: {
189
+ description: string;
190
+ name: components["schemas"]["NonEmpty"];
191
+ parameters?: Record<string, never>;
192
+ };
193
+ /** @enum {string} */
194
+ AgentStatus: "active" | "paused" | "disabled";
195
+ AmendDelegationScheduleRequest: {
196
+ adopted_resolution_id?: null | components["schemas"]["ResolutionId"];
197
+ allowed_tier1_intent_types?: string[] | null;
198
+ entity_id: components["schemas"]["EntityId"];
199
+ meeting_id?: null | components["schemas"]["MeetingId"];
200
+ /** Format: date */
201
+ next_mandatory_review_at?: string | null;
202
+ rationale?: string | null;
203
+ /** Format: int64 */
204
+ tier1_max_amount_cents?: number | null;
205
+ };
206
+ AmendmentHistoryEntry: {
207
+ amended_at: string;
208
+ description: string;
209
+ /** Format: int32 */
210
+ version: number;
211
+ };
212
+ /** @enum {string} */
213
+ AntiDilutionMethod: "none" | "broad_based_weighted_average" | "narrow_based_weighted_average" | "full_ratchet";
214
+ /** Format: uuid */
215
+ ApiKeyId: string;
216
+ ApiKeyResponse: {
217
+ contact_id?: null | components["schemas"]["ContactId"];
218
+ created_at: string;
219
+ entity_ids?: components["schemas"]["EntityId"][] | null;
220
+ key_id: components["schemas"]["ApiKeyId"];
221
+ name: string;
222
+ raw_key?: string | null;
223
+ scopes: components["schemas"]["Scope"][];
224
+ workspace_id: components["schemas"]["WorkspaceId"];
225
+ };
226
+ ApplyFundraisingTermsRequest: {
227
+ anti_dilution_method: components["schemas"]["AntiDilutionMethod"];
228
+ conversion_precedence?: components["schemas"]["InstrumentKind"][];
229
+ entity_id: components["schemas"]["EntityId"];
230
+ protective_provisions?: Record<string, never>;
231
+ };
232
+ ApplyRoundTermsRequest: {
233
+ anti_dilution_method: components["schemas"]["AntiDilutionMethod"];
234
+ conversion_precedence?: components["schemas"]["InstrumentKind"][];
235
+ entity_id: components["schemas"]["EntityId"];
236
+ protective_provisions?: Record<string, never>;
237
+ };
238
+ /** Format: uuid */
239
+ ApprovalArtifactId: string;
240
+ ApprovalArtifactResponse: {
241
+ approval_artifact_id: components["schemas"]["ApprovalArtifactId"];
242
+ approved_at: string;
243
+ approver_identity: string;
244
+ channel: string;
245
+ created_at: string;
246
+ entity_id: components["schemas"]["EntityId"];
247
+ expires_at?: string | null;
248
+ explicit: boolean;
249
+ intent_type: string;
250
+ /** Format: int64 */
251
+ max_amount_cents?: number | null;
252
+ revoked_at?: string | null;
253
+ scope: string;
254
+ };
255
+ ApproveValuationRequest: {
256
+ entity_id: components["schemas"]["EntityId"];
257
+ resolution_id?: null | components["schemas"]["ResolutionId"];
258
+ };
259
+ AssignObligationRequest: {
260
+ assignee_id: components["schemas"]["ContactId"];
261
+ entity_id: components["schemas"]["EntityId"];
262
+ };
263
+ /**
264
+ * @description Who is responsible for fulfilling an obligation.
265
+ * @enum {string}
266
+ */
267
+ AssigneeType: "internal" | "third_party" | "human";
268
+ AttachResolutionDocumentRequest: {
269
+ document_id: components["schemas"]["DocumentId"];
270
+ entity_id: components["schemas"]["EntityId"];
271
+ };
272
+ AuditEvent: {
273
+ details: Record<string, never>;
274
+ event_id: string;
275
+ event_type: string;
276
+ timestamp: string;
277
+ };
278
+ /** @enum {string} */
279
+ AuthoritySource: "law" | "charter" | "governance_docs" | "resolution" | "directive" | "standing_instruction" | "delegation_schedule" | "heuristic";
280
+ /**
281
+ * @description The authority level required to approve an action.
282
+ * @enum {string}
283
+ */
284
+ AuthorityTier: "tier_1" | "tier_2" | "tier_3";
285
+ /** Format: uuid */
286
+ BankAccountId: string;
287
+ BankAccountResponse: {
288
+ account_type: components["schemas"]["BankAccountType"];
289
+ bank_account_id: components["schemas"]["BankAccountId"];
290
+ bank_name: string;
291
+ created_at: string;
292
+ currency: components["schemas"]["Currency"];
293
+ entity_id: components["schemas"]["EntityId"];
294
+ status: components["schemas"]["BankAccountStatus"];
295
+ };
296
+ /**
297
+ * @description Lifecycle status of a bank account connection.
298
+ * @enum {string}
299
+ */
300
+ BankAccountStatus: "pending_review" | "active" | "closed";
301
+ /**
302
+ * @description Type of bank account held by the entity.
303
+ * @enum {string}
304
+ */
305
+ BankAccountType: "checking" | "savings";
306
+ BillingCheckoutRequest: {
307
+ entity_id?: null | components["schemas"]["EntityId"];
308
+ plan_id: string;
309
+ };
310
+ BillingCheckoutResponse: {
311
+ checkout_url: string;
312
+ plan: string;
313
+ status: string;
314
+ };
315
+ BillingPlanResponse: {
316
+ interval: string;
317
+ name: string;
318
+ plan_id: string;
319
+ /** Format: int64 */
320
+ price_cents: number;
321
+ };
322
+ BillingPlansResponse: {
323
+ plans: components["schemas"]["BillingPlanResponse"][];
324
+ };
325
+ BillingPortalResponse: {
326
+ portal_url: string;
327
+ };
328
+ BillingStatusResponse: {
329
+ current_period_end?: string | null;
330
+ plan: string;
331
+ status: string;
332
+ workspace_id: components["schemas"]["WorkspaceId"];
333
+ };
334
+ BindApprovalArtifactRequest: {
335
+ approval_artifact_id: components["schemas"]["ApprovalArtifactId"];
336
+ entity_id: components["schemas"]["EntityId"];
337
+ };
338
+ BindDocumentRequestRequest: {
339
+ entity_id: components["schemas"]["EntityId"];
340
+ request_id: components["schemas"]["DocumentRequestId"];
341
+ };
342
+ BoardApproveRoundRequest: {
343
+ entity_id: components["schemas"]["EntityId"];
344
+ meeting_id: components["schemas"]["MeetingId"];
345
+ resolution_id: components["schemas"]["ResolutionId"];
346
+ };
347
+ BodyQuery: {
348
+ entity_id: components["schemas"]["EntityId"];
349
+ };
350
+ /**
351
+ * @description Whether a governance body is active.
352
+ * @enum {string}
353
+ */
354
+ BodyStatus: "active" | "inactive";
355
+ /**
356
+ * @description The type of governance body.
357
+ * @enum {string}
358
+ */
359
+ BodyType: "board_of_directors" | "llc_member_vote";
360
+ BranchListEntry: {
361
+ head_oid: string;
362
+ name: string;
363
+ };
364
+ /**
365
+ * @description A validated git branch name.
366
+ *
367
+ * Guarantees: non-empty, no `..`, no spaces, no leading `-`, no null bytes.
368
+ * Implements `Deref<Target=str>` for transparent use with `&str` parameters.
369
+ */
370
+ BranchName: string;
371
+ /**
372
+ * @description Execution budget limits.
373
+ *
374
+ * All limits are validated positive on deserialization — a budget of
375
+ * zero turns or zero tokens is nonsensical and rejected at parse time.
376
+ */
377
+ BudgetConfig: {
378
+ /** Format: int64 */
379
+ max_monthly_cost_cents?: number;
380
+ /** Format: int64 */
381
+ max_tokens?: number;
382
+ /** Format: int32 */
383
+ max_turns?: number;
384
+ };
385
+ /**
386
+ * @description Level of cap table visibility granted to a contact.
387
+ * @enum {string}
388
+ */
389
+ CapTableAccess: "none" | "summary" | "detailed";
390
+ /** @enum {string} */
391
+ CapTableBasis: "outstanding" | "as_converted" | "fully_diluted";
392
+ CapTableHolderSummary: {
393
+ /** Format: int32 */
394
+ as_converted_bps: number;
395
+ /** Format: int64 */
396
+ as_converted_units: number;
397
+ /** Format: int32 */
398
+ fully_diluted_bps: number;
399
+ /** Format: int64 */
400
+ fully_diluted_units: number;
401
+ holder_id: components["schemas"]["HolderId"];
402
+ name: string;
403
+ /** Format: int32 */
404
+ outstanding_bps: number;
405
+ /** Format: int64 */
406
+ outstanding_units: number;
407
+ };
408
+ CapTableInstrumentSummary: {
409
+ /** Format: int64 */
410
+ authorized_units?: number | null;
411
+ /** Format: int64 */
412
+ diluted_units: number;
413
+ instrument_id: components["schemas"]["InstrumentId"];
414
+ /** Format: int64 */
415
+ issued_units: number;
416
+ kind: components["schemas"]["InstrumentKind"];
417
+ symbol: string;
418
+ };
419
+ CapTableQuery: {
420
+ basis?: components["schemas"]["CapTableBasis"];
421
+ issuer_legal_entity_id?: null | components["schemas"]["LegalEntityId"];
422
+ };
423
+ CapTableResponse: {
424
+ basis: components["schemas"]["CapTableBasis"];
425
+ entity_id: components["schemas"]["EntityId"];
426
+ generated_at: string;
427
+ holders: components["schemas"]["CapTableHolderSummary"][];
428
+ instruments: components["schemas"]["CapTableInstrumentSummary"][];
429
+ issuer_legal_entity_id: components["schemas"]["LegalEntityId"];
430
+ /** Format: int64 */
431
+ total_units: number;
432
+ };
433
+ CastVoteRequest: {
434
+ vote_value: components["schemas"]["VoteValue"];
435
+ voter_id: components["schemas"]["ContactId"];
436
+ };
437
+ /**
438
+ * @description Inbound channel configuration — a tagged enum so that each variant
439
+ * carries only the fields it needs.
440
+ *
441
+ * The key invariant: a `Cron` channel *always* has a valid schedule.
442
+ * This is unrepresentable with the old struct approach (schedule was
443
+ * `Option<String>`, allowing a cron channel with no schedule).
444
+ *
445
+ * Wire format is the same as before — internally tagged on `"type"`:
446
+ * ```json
447
+ * {"type": "cron", "schedule": "*\/5 * * * *"}
448
+ * {"type": "email", "address": "bot@acme.com"}
449
+ * ```
450
+ */
451
+ ChannelConfig: {
452
+ address?: string | null;
453
+ /** @enum {string} */
454
+ type: "email";
455
+ webhook_secret?: string | null;
456
+ } | {
457
+ address?: string | null;
458
+ /** @enum {string} */
459
+ type: "webhook";
460
+ webhook_secret?: string | null;
461
+ } | {
462
+ schedule: components["schemas"]["CronExpr"];
463
+ /** @enum {string} */
464
+ type: "cron";
465
+ } | {
466
+ /** @enum {string} */
467
+ type: "manual";
468
+ };
469
+ ChartOfAccountsResponse: {
470
+ accounts: components["schemas"]["AccountResponse"][];
471
+ entity_id: components["schemas"]["EntityId"];
472
+ };
473
+ ClaimWorkItemRequest: {
474
+ claimed_by?: string | null;
475
+ claimed_by_actor?: null | components["schemas"]["WorkItemActorRefRequest"];
476
+ /** Format: int64 */
477
+ ttl_seconds?: number | null;
478
+ };
479
+ /** Format: uuid */
480
+ ClassificationId: string;
481
+ ClassificationResponse: {
482
+ classification: components["schemas"]["ClassificationResult"];
483
+ classification_id: components["schemas"]["ClassificationId"];
484
+ contractor_name: string;
485
+ created_at: string;
486
+ entity_id: components["schemas"]["EntityId"];
487
+ flags: string[];
488
+ risk_level: components["schemas"]["RiskLevel"];
489
+ state: string;
490
+ };
491
+ /**
492
+ * @description Classification result.
493
+ * @enum {string}
494
+ */
495
+ ClassificationResult: "independent" | "employee" | "uncertain";
496
+ ClassifyContractorRequest: {
497
+ contractor_name: string;
498
+ /** Format: int32 */
499
+ duration_months?: number | null;
500
+ entity_id: components["schemas"]["EntityId"];
501
+ exclusive_client?: boolean | null;
502
+ factors?: Record<string, never>;
503
+ /** Format: int32 */
504
+ hours_per_week?: number | null;
505
+ provides_tools?: boolean | null;
506
+ state?: string;
507
+ };
508
+ CompanyAddress: {
509
+ city: string;
510
+ county?: string | null;
511
+ state: string;
512
+ street: string;
513
+ zip: string;
514
+ };
515
+ CompileWorkflowPacketRequest: {
516
+ entity_id: components["schemas"]["EntityId"];
517
+ phase?: string | null;
518
+ required_signers?: string[];
519
+ };
520
+ CompleteWorkItemRequest: {
521
+ completed_by?: string | null;
522
+ completed_by_actor?: null | components["schemas"]["WorkItemActorRefRequest"];
523
+ result?: string | null;
524
+ };
525
+ /** Format: uuid */
526
+ ComplianceEscalationId: string;
527
+ ComplianceEscalationResponse: {
528
+ action: string;
529
+ authority: string;
530
+ created_at: string;
531
+ deadline_id: components["schemas"]["DeadlineId"];
532
+ entity_id: components["schemas"]["EntityId"];
533
+ escalation_id: components["schemas"]["ComplianceEscalationId"];
534
+ incident_id?: null | components["schemas"]["IncidentId"];
535
+ milestone: string;
536
+ obligation_id?: null | components["schemas"]["ObligationId"];
537
+ status: components["schemas"]["EscalationStatus"];
538
+ };
539
+ /** Format: uuid */
540
+ ComplianceEvidenceLinkId: string;
541
+ ComplianceScanResponse: {
542
+ escalations_created: number;
543
+ incidents_created: number;
544
+ scanned_deadlines: number;
545
+ };
546
+ ComputeResolutionRequest: {
547
+ /** Format: date */
548
+ effective_date?: string | null;
549
+ resolution_text: string;
550
+ };
551
+ ConfigResponse: {
552
+ environment: string;
553
+ features: string[];
554
+ version: string;
555
+ };
556
+ ConfirmEinRequest: {
557
+ ein: string;
558
+ };
559
+ ConfirmFilingRequest: {
560
+ external_filing_id: string;
561
+ receipt_reference?: string | null;
562
+ };
563
+ /**
564
+ * @description The role or relationship a contact has with the entity.
565
+ * @enum {string}
566
+ */
567
+ ContactCategory: "employee" | "contractor" | "board_member" | "law_firm" | "valuation_firm" | "accounting_firm" | "investor" | "officer" | "founder" | "member" | "other";
568
+ /** Format: uuid */
569
+ ContactId: string;
570
+ ContactProfileResponse: {
571
+ category: components["schemas"]["ContactCategory"];
572
+ contact_id: components["schemas"]["ContactId"];
573
+ email?: string | null;
574
+ entities: components["schemas"]["EntityId"][];
575
+ mailing_address?: string | null;
576
+ name: string;
577
+ notes?: string | null;
578
+ phone?: string | null;
579
+ };
580
+ ContactResponse: {
581
+ cap_table_access: components["schemas"]["CapTableAccess"];
582
+ category: components["schemas"]["ContactCategory"];
583
+ contact_id: components["schemas"]["ContactId"];
584
+ contact_type: components["schemas"]["ContactType"];
585
+ created_at: string;
586
+ email?: string | null;
587
+ entity_id: components["schemas"]["EntityId"];
588
+ mailing_address?: string | null;
589
+ name: string;
590
+ notes?: string | null;
591
+ phone?: string | null;
592
+ status: components["schemas"]["ContactStatus"];
593
+ };
594
+ /**
595
+ * @description Whether a contact record is active.
596
+ * @enum {string}
597
+ */
598
+ ContactStatus: "active" | "inactive";
599
+ /**
600
+ * @description Whether a contact is a person or an organization.
601
+ * @enum {string}
602
+ */
603
+ ContactType: "individual" | "organization";
604
+ /** Format: uuid */
605
+ ContractId: string;
606
+ ContractResponse: {
607
+ contract_id: components["schemas"]["ContractId"];
608
+ counterparty_name: string;
609
+ created_at: string;
610
+ document_id: components["schemas"]["DocumentId"];
611
+ effective_date: string;
612
+ entity_id: components["schemas"]["EntityId"];
613
+ status: components["schemas"]["ContractStatus"];
614
+ template_type: components["schemas"]["ContractTemplateType"];
615
+ };
616
+ /**
617
+ * @description Lifecycle status of a contract.
618
+ * @enum {string}
619
+ */
620
+ ContractStatus: "draft" | "active" | "expired" | "terminated";
621
+ /**
622
+ * @description Template type for generated contracts.
623
+ * @enum {string}
624
+ */
625
+ ContractTemplateType: "consulting_agreement" | "employment_offer" | "contractor_agreement" | "nda" | "safe_agreement" | "custom";
626
+ /** Format: uuid */
627
+ ControlLinkId: string;
628
+ ControlLinkResponse: {
629
+ child_legal_entity_id: components["schemas"]["LegalEntityId"];
630
+ control_link_id: components["schemas"]["ControlLinkId"];
631
+ control_type: components["schemas"]["ControlType"];
632
+ created_at: string;
633
+ parent_legal_entity_id: components["schemas"]["LegalEntityId"];
634
+ /** Format: int32 */
635
+ voting_power_bps?: number | null;
636
+ };
637
+ ControlMapEdge: {
638
+ child_legal_entity_id: components["schemas"]["LegalEntityId"];
639
+ control_type: components["schemas"]["ControlType"];
640
+ parent_legal_entity_id: components["schemas"]["LegalEntityId"];
641
+ /** Format: int32 */
642
+ voting_power_bps?: number | null;
643
+ };
644
+ ControlMapQuery: {
645
+ entity_id: components["schemas"]["EntityId"];
646
+ root_entity_id: components["schemas"]["LegalEntityId"];
647
+ };
648
+ ControlMapResponse: {
649
+ edges: components["schemas"]["ControlMapEdge"][];
650
+ root_entity_id: components["schemas"]["LegalEntityId"];
651
+ traversed_entities: components["schemas"]["LegalEntityId"][];
652
+ };
653
+ /**
654
+ * @description Type of control relationship.
655
+ * @enum {string}
656
+ */
657
+ ControlType: "voting" | "board" | "economic" | "contractual";
658
+ ConveneMeetingRequest: {
659
+ present_seat_ids: components["schemas"]["GovernanceSeatId"][];
660
+ };
661
+ ConversionExecuteResponse: {
662
+ conversion_execution_id: components["schemas"]["ConversionExecutionId"];
663
+ converted_positions: number;
664
+ round_id: components["schemas"]["EquityRoundId"];
665
+ target_positions_touched: number;
666
+ /** Format: int64 */
667
+ total_new_units: number;
668
+ };
669
+ /** Format: uuid */
670
+ ConversionExecutionId: string;
671
+ ConversionPreviewLine: {
672
+ basis: string;
673
+ /** Format: int64 */
674
+ conversion_price_cents: number;
675
+ holder_id: components["schemas"]["HolderId"];
676
+ instrument_id: components["schemas"]["InstrumentId"];
677
+ /** Format: int64 */
678
+ new_units: number;
679
+ /** Format: int64 */
680
+ principal_cents: number;
681
+ source_position_id: components["schemas"]["PositionId"];
682
+ };
683
+ ConversionPreviewResponse: {
684
+ /** Format: int64 */
685
+ anti_dilution_adjustment_units: number;
686
+ entity_id: components["schemas"]["EntityId"];
687
+ lines: components["schemas"]["ConversionPreviewLine"][];
688
+ round_id: components["schemas"]["EquityRoundId"];
689
+ target_instrument_id: components["schemas"]["InstrumentId"];
690
+ /** Format: int64 */
691
+ total_new_units: number;
692
+ };
693
+ ConvertEntityRequest: {
694
+ jurisdiction?: null | components["schemas"]["Jurisdiction"];
695
+ target_type: components["schemas"]["EntityType"];
696
+ };
697
+ CreateAccountRequest: {
698
+ account_code: components["schemas"]["GlAccountCode"];
699
+ entity_id: components["schemas"]["EntityId"];
700
+ };
701
+ CreateAgentRequest: {
702
+ entity_id?: null | components["schemas"]["EntityId"];
703
+ model?: string | null;
704
+ name: string;
705
+ parent_agent_id?: null | components["schemas"]["AgentId"];
706
+ scopes?: components["schemas"]["Scope"][];
707
+ system_prompt?: string | null;
708
+ };
709
+ CreateApiKeyRequest: {
710
+ contact_id?: null | components["schemas"]["ContactId"];
711
+ /** @description Restrict this key to specific entities. `null` = all entities. */
712
+ entity_ids?: components["schemas"]["EntityId"][] | null;
713
+ name: string;
714
+ scopes?: components["schemas"]["Scope"][];
715
+ };
716
+ CreateApprovalArtifactRequest: {
717
+ /** Format: date-time */
718
+ approved_at?: string | null;
719
+ approver_identity: string;
720
+ channel: string;
721
+ entity_id: components["schemas"]["EntityId"];
722
+ /** Format: date-time */
723
+ expires_at?: string | null;
724
+ explicit?: boolean;
725
+ intent_type: string;
726
+ /** Format: int64 */
727
+ max_amount_cents?: number | null;
728
+ scope: string;
729
+ };
730
+ CreateBankAccountRequest: {
731
+ account_type?: null | components["schemas"]["BankAccountType"];
732
+ bank_name: string;
733
+ entity_id: components["schemas"]["EntityId"];
734
+ };
735
+ CreateBranchRequest: {
736
+ from?: components["schemas"]["BranchName"];
737
+ name: components["schemas"]["BranchName"];
738
+ };
739
+ CreateBranchResponse: {
740
+ base_commit: string;
741
+ branch: string;
742
+ };
743
+ CreateContactRequest: {
744
+ cap_table_access?: null | components["schemas"]["CapTableAccess"];
745
+ category: components["schemas"]["ContactCategory"];
746
+ contact_type: components["schemas"]["ContactType"];
747
+ email?: string | null;
748
+ entity_id: components["schemas"]["EntityId"];
749
+ mailing_address?: string | null;
750
+ name: string;
751
+ notes?: string | null;
752
+ phone?: string | null;
753
+ };
754
+ CreateControlLinkRequest: {
755
+ child_legal_entity_id: components["schemas"]["LegalEntityId"];
756
+ control_type: components["schemas"]["ControlType"];
757
+ entity_id: components["schemas"]["EntityId"];
758
+ notes?: string | null;
759
+ parent_legal_entity_id: components["schemas"]["LegalEntityId"];
760
+ /** Format: int32 */
761
+ voting_power_bps?: number | null;
762
+ };
763
+ CreateDeadlineRequest: {
764
+ deadline_type: string;
765
+ description: string;
766
+ /** Format: date */
767
+ due_date: string;
768
+ entity_id: components["schemas"]["EntityId"];
769
+ recurrence?: components["schemas"]["Recurrence"];
770
+ severity?: components["schemas"]["DeadlineSeverity"];
771
+ };
772
+ CreateDistributionRequest: {
773
+ description: string;
774
+ distribution_type?: components["schemas"]["DistributionType"];
775
+ entity_id: components["schemas"]["EntityId"];
776
+ /** Format: int64 */
777
+ total_amount_cents: number;
778
+ };
779
+ CreateDocumentRequestPayload: {
780
+ description: string;
781
+ document_type: string;
782
+ entity_id: components["schemas"]["EntityId"];
783
+ };
784
+ CreateFormationRequest: {
785
+ /** Format: int64 */
786
+ authorized_shares?: number | null;
787
+ company_address?: null | components["schemas"]["Address"];
788
+ entity_type: components["schemas"]["EntityType"];
789
+ /** @description Fiscal year end, e.g. "12-31". Defaults to "12-31". */
790
+ fiscal_year_end?: string | null;
791
+ /** @description Optional formation date for importing pre-formed entities. */
792
+ formation_date?: string | null;
793
+ jurisdiction: components["schemas"]["Jurisdiction"];
794
+ legal_name: string;
795
+ members: components["schemas"]["MemberInput"][];
796
+ par_value?: string | null;
797
+ registered_agent_address?: string | null;
798
+ registered_agent_name?: string | null;
799
+ /** @description Include right of first refusal in bylaws (corp). Default true. */
800
+ right_of_first_refusal?: boolean | null;
801
+ /** @description Whether the company will elect S-Corp tax treatment. */
802
+ s_corp_election?: boolean | null;
803
+ /** @description Include transfer restrictions in bylaws (corp). Default true. */
804
+ transfer_restrictions?: boolean | null;
805
+ };
806
+ CreateFundraisingWorkflowRequest: {
807
+ conversion_target_instrument_id?: null | components["schemas"]["InstrumentId"];
808
+ entity_id: components["schemas"]["EntityId"];
809
+ issuer_legal_entity_id: components["schemas"]["LegalEntityId"];
810
+ metadata?: Record<string, never>;
811
+ name: string;
812
+ /** Format: int64 */
813
+ pre_money_cents?: number | null;
814
+ prepare_intent_id: components["schemas"]["IntentId"];
815
+ /** Format: int64 */
816
+ round_price_cents?: number | null;
817
+ /** Format: int64 */
818
+ target_raise_cents?: number | null;
819
+ };
820
+ CreateGovernanceAuditEventRequest: {
821
+ action: string;
822
+ details?: Record<string, never>;
823
+ entity_id: components["schemas"]["EntityId"];
824
+ event_type: components["schemas"]["GovernanceAuditEventType"];
825
+ evidence_refs?: string[];
826
+ linked_incident_id?: null | components["schemas"]["IncidentId"];
827
+ linked_intent_id?: null | components["schemas"]["IntentId"];
828
+ linked_mode_event_id?: null | components["schemas"]["GovernanceModeEventId"];
829
+ linked_trigger_id?: null | components["schemas"]["GovernanceTriggerId"];
830
+ };
831
+ CreateGovernanceBodyRequest: {
832
+ body_type: components["schemas"]["BodyType"];
833
+ entity_id: components["schemas"]["EntityId"];
834
+ name: string;
835
+ quorum_rule: components["schemas"]["QuorumThreshold"];
836
+ voting_method: components["schemas"]["VotingMethod"];
837
+ };
838
+ CreateHolderRequest: {
839
+ contact_id: components["schemas"]["ContactId"];
840
+ entity_id: components["schemas"]["EntityId"];
841
+ external_reference?: string | null;
842
+ holder_type: components["schemas"]["HolderType"];
843
+ linked_entity_id?: null | components["schemas"]["EntityId"];
844
+ name: string;
845
+ };
846
+ CreateIncidentRequest: {
847
+ description: string;
848
+ entity_id: components["schemas"]["EntityId"];
849
+ severity: components["schemas"]["IncidentSeverity"];
850
+ title: string;
851
+ };
852
+ CreateInstrumentRequest: {
853
+ /** Format: int64 */
854
+ authorized_units?: number | null;
855
+ entity_id: components["schemas"]["EntityId"];
856
+ /** Format: int64 */
857
+ issue_price_cents?: number | null;
858
+ issuer_legal_entity_id: components["schemas"]["LegalEntityId"];
859
+ kind: components["schemas"]["InstrumentKind"];
860
+ symbol: string;
861
+ terms?: Record<string, never>;
862
+ };
863
+ CreateIntentRequest: {
864
+ authority_tier?: null | components["schemas"]["AuthorityTier"];
865
+ description: string;
866
+ entity_id: components["schemas"]["EntityId"];
867
+ intent_type: string;
868
+ metadata?: Record<string, never>;
869
+ };
870
+ CreateInvoiceRequest: {
871
+ /** Format: int64 */
872
+ amount_cents: number;
873
+ customer_name: string;
874
+ description: string;
875
+ /** Format: date */
876
+ due_date: string;
877
+ entity_id: components["schemas"]["EntityId"];
878
+ };
879
+ CreateJournalEntryRequest: {
880
+ description: string;
881
+ /** Format: date */
882
+ effective_date: string;
883
+ entity_id: components["schemas"]["EntityId"];
884
+ lines: components["schemas"]["LedgerLineRequest"][];
885
+ };
886
+ CreateLegacyGrantRequest: {
887
+ entity_id: components["schemas"]["EntityId"];
888
+ grant_type: components["schemas"]["GrantType"];
889
+ recipient_name: string;
890
+ /** Format: int64 */
891
+ shares: number;
892
+ };
893
+ CreateLegacyShareTransferRequest: {
894
+ entity_id: components["schemas"]["EntityId"];
895
+ from_holder: string;
896
+ governing_doc_type?: null | components["schemas"]["GoverningDocType"];
897
+ share_class_id: components["schemas"]["ShareClassId"];
898
+ /** Format: int64 */
899
+ shares: number;
900
+ to_holder: string;
901
+ transfer_type: components["schemas"]["TransferType"];
902
+ transferee_rights?: null | components["schemas"]["TransfereeRights"];
903
+ };
904
+ CreateLegalEntityRequest: {
905
+ entity_id: components["schemas"]["EntityId"];
906
+ linked_entity_id?: null | components["schemas"]["EntityId"];
907
+ name: string;
908
+ role: components["schemas"]["LegalEntityRole"];
909
+ };
910
+ CreateObligationRequest: {
911
+ assignee_id?: null | components["schemas"]["ContactId"];
912
+ assignee_type: components["schemas"]["AssigneeType"];
913
+ description: string;
914
+ /** Format: date */
915
+ due_date?: string | null;
916
+ entity_id: components["schemas"]["EntityId"];
917
+ intent_id?: null | components["schemas"]["IntentId"];
918
+ obligation_type: string;
919
+ };
920
+ CreatePaymentIntentRequest: {
921
+ /** Format: int64 */
922
+ amount_cents: number;
923
+ currency?: string | null;
924
+ description?: string | null;
925
+ entity_id: components["schemas"]["EntityId"];
926
+ };
927
+ CreatePayoutRequest: {
928
+ /** Format: int64 */
929
+ amount_cents: number;
930
+ description?: string | null;
931
+ destination: string;
932
+ entity_id: components["schemas"]["EntityId"];
933
+ };
934
+ CreatePayrollRunRequest: {
935
+ entity_id: components["schemas"]["EntityId"];
936
+ /** Format: date */
937
+ pay_period_end: string;
938
+ /** Format: date */
939
+ pay_period_start: string;
940
+ };
941
+ CreatePendingFormationRequest: {
942
+ company_address?: null | components["schemas"]["Address"];
943
+ entity_type: components["schemas"]["EntityType"];
944
+ fiscal_year_end?: string | null;
945
+ formation_date?: string | null;
946
+ jurisdiction?: null | components["schemas"]["Jurisdiction"];
947
+ legal_name: string;
948
+ registered_agent_address?: string | null;
949
+ registered_agent_name?: string | null;
950
+ right_of_first_refusal?: boolean | null;
951
+ s_corp_election?: boolean | null;
952
+ transfer_restrictions?: boolean | null;
953
+ };
954
+ CreateProxyRequest: {
955
+ description?: string | null;
956
+ name: string;
957
+ /** @description `"self"` for local encrypted secrets, or an external URL. */
958
+ url: string;
959
+ };
960
+ CreateRoundRequest: {
961
+ conversion_target_instrument_id?: null | components["schemas"]["InstrumentId"];
962
+ entity_id: components["schemas"]["EntityId"];
963
+ issuer_legal_entity_id: components["schemas"]["LegalEntityId"];
964
+ metadata?: Record<string, never>;
965
+ name: string;
966
+ /** Format: int64 */
967
+ pre_money_cents?: number | null;
968
+ /** Format: int64 */
969
+ round_price_cents?: number | null;
970
+ /** Format: int64 */
971
+ target_raise_cents?: number | null;
972
+ };
973
+ CreateSafeNoteRequest: {
974
+ conversion_unit_type?: string | null;
975
+ /** Format: double */
976
+ discount_rate?: number | null;
977
+ document_id?: null | components["schemas"]["DocumentId"];
978
+ email?: string | null;
979
+ entity_id: components["schemas"]["EntityId"];
980
+ investor_contact_id?: null | components["schemas"]["ContactId"];
981
+ investor_name: string;
982
+ meeting_id?: null | components["schemas"]["MeetingId"];
983
+ /** Format: int64 */
984
+ principal_amount_cents: number;
985
+ pro_rata_rights?: boolean;
986
+ resolution_id?: null | components["schemas"]["ResolutionId"];
987
+ safe_type?: null | components["schemas"]["SafeType"];
988
+ /** Format: int64 */
989
+ valuation_cap_cents?: number | null;
990
+ };
991
+ CreateSeatRequest: {
992
+ /** Format: date */
993
+ appointed_date?: string | null;
994
+ holder_id: components["schemas"]["ContactId"];
995
+ role: components["schemas"]["SeatRole"];
996
+ /** Format: date */
997
+ term_expiration?: string | null;
998
+ /** Format: int32 */
999
+ voting_power?: number | null;
1000
+ };
1001
+ CreateSpendingLimitRequest: {
1002
+ /** Format: int64 */
1003
+ amount_cents: number;
1004
+ category: string;
1005
+ entity_id: components["schemas"]["EntityId"];
1006
+ period: string;
1007
+ };
1008
+ CreateStripeAccountRequest: {
1009
+ entity_id: components["schemas"]["EntityId"];
1010
+ };
1011
+ CreateTransferWorkflowRequest: {
1012
+ entity_id: components["schemas"]["EntityId"];
1013
+ from_contact_id: components["schemas"]["ContactId"];
1014
+ governing_doc_type: components["schemas"]["GoverningDocType"];
1015
+ prepare_intent_id: components["schemas"]["IntentId"];
1016
+ /** Format: int64 */
1017
+ price_per_share_cents?: number | null;
1018
+ relationship_to_holder?: string | null;
1019
+ share_class_id: components["schemas"]["ShareClassId"];
1020
+ /** Format: int64 */
1021
+ share_count: number;
1022
+ to_contact_id: components["schemas"]["ContactId"];
1023
+ transfer_type: components["schemas"]["TransferType"];
1024
+ transferee_rights: components["schemas"]["TransfereeRights"];
1025
+ };
1026
+ CreateValuationRequest: {
1027
+ dlom?: string | null;
1028
+ /** Format: date */
1029
+ effective_date: string;
1030
+ /** Format: int64 */
1031
+ enterprise_value_cents?: number | null;
1032
+ entity_id: components["schemas"]["EntityId"];
1033
+ /** Format: int64 */
1034
+ fmv_per_share_cents?: number | null;
1035
+ /** Format: int64 */
1036
+ hurdle_amount_cents?: number | null;
1037
+ methodology: components["schemas"]["ValuationMethodology"];
1038
+ provider_contact_id?: null | components["schemas"]["ContactId"];
1039
+ report_date?: string | null;
1040
+ report_document_id?: null | components["schemas"]["DocumentId"];
1041
+ valuation_type: components["schemas"]["ValuationType"];
1042
+ };
1043
+ CreateWorkItemRequest: {
1044
+ asap?: boolean;
1045
+ category: string;
1046
+ created_by?: string | null;
1047
+ created_by_actor?: null | components["schemas"]["WorkItemActorRefRequest"];
1048
+ /** Format: date */
1049
+ deadline?: string | null;
1050
+ description?: string | null;
1051
+ metadata?: unknown;
1052
+ title: string;
1053
+ };
1054
+ /**
1055
+ * @description A cron expression validated to have at least 5 whitespace-separated fields.
1056
+ *
1057
+ * This is a lightweight parse — it doesn't validate each field's range,
1058
+ * but it rejects obviously malformed expressions at the system boundary.
1059
+ * The full matching logic lives in the worker's cron module.
1060
+ */
1061
+ CronExpr: string;
1062
+ /**
1063
+ * @description Supported currencies. Currently USD only.
1064
+ * @enum {string}
1065
+ */
1066
+ Currency: "usd";
1067
+ /** Format: uuid */
1068
+ DeadlineId: string;
1069
+ DeadlineResponse: {
1070
+ completed_at?: string | null;
1071
+ created_at: string;
1072
+ deadline_id: components["schemas"]["DeadlineId"];
1073
+ deadline_type: string;
1074
+ description: string;
1075
+ /** Format: date */
1076
+ due_date: string;
1077
+ entity_id: components["schemas"]["EntityId"];
1078
+ recurrence: components["schemas"]["Recurrence"];
1079
+ severity: components["schemas"]["DeadlineSeverity"];
1080
+ status: components["schemas"]["DeadlineStatus"];
1081
+ };
1082
+ /**
1083
+ * @description Risk severity of missing a deadline.
1084
+ * @enum {string}
1085
+ */
1086
+ DeadlineSeverity: "low" | "medium" | "high" | "critical";
1087
+ /**
1088
+ * @description Status of a deadline.
1089
+ * @enum {string}
1090
+ */
1091
+ DeadlineStatus: "upcoming" | "due" | "completed" | "overdue";
1092
+ DelegationSchedule: {
1093
+ adopted_resolution_id?: null | components["schemas"]["ResolutionId"];
1094
+ allowed_tier1_intent_types?: string[];
1095
+ /** Format: date-time */
1096
+ created_at: string;
1097
+ entity_id: components["schemas"]["EntityId"];
1098
+ /** Format: date-time */
1099
+ last_reauthorized_at: string;
1100
+ /** Format: date */
1101
+ next_mandatory_review_at: string;
1102
+ /** Format: int64 */
1103
+ reauth_full_suspension_at_days: number;
1104
+ /** Format: int64 */
1105
+ reauth_reduced_limits_at_days: number;
1106
+ /** Format: int32 */
1107
+ reauth_reduced_limits_percent: number;
1108
+ /** Format: int64 */
1109
+ tier1_max_amount_cents: number;
1110
+ /** Format: date-time */
1111
+ updated_at: string;
1112
+ /** Format: int32 */
1113
+ version: number;
1114
+ };
1115
+ DelegationScheduleChangeResponse: {
1116
+ amendment: components["schemas"]["ScheduleAmendment"];
1117
+ schedule: components["schemas"]["DelegationSchedule"];
1118
+ };
1119
+ DemoSeedRequest: {
1120
+ name?: string | null;
1121
+ scenario?: string;
1122
+ };
1123
+ DemoSeedResponse: {
1124
+ entities_created: number;
1125
+ entity_id: components["schemas"]["EntityId"];
1126
+ legal_name: string;
1127
+ message: string;
1128
+ scenario: string;
1129
+ workspace_id: components["schemas"]["WorkspaceId"];
1130
+ };
1131
+ DigestSummary: {
1132
+ digest_key: string;
1133
+ generated_at: string;
1134
+ };
1135
+ DigestTriggerResponse: {
1136
+ digest_count: number;
1137
+ message: string;
1138
+ triggered: boolean;
1139
+ };
1140
+ DilutionPreviewQuery: {
1141
+ entity_id: components["schemas"]["EntityId"];
1142
+ round_id: components["schemas"]["EquityRoundId"];
1143
+ };
1144
+ DilutionPreviewResponse: {
1145
+ issuer_legal_entity_id: components["schemas"]["LegalEntityId"];
1146
+ /** Format: int64 */
1147
+ pre_round_outstanding_units: number;
1148
+ /** Format: int32 */
1149
+ projected_dilution_bps: number;
1150
+ /** Format: int64 */
1151
+ projected_new_units: number;
1152
+ /** Format: int64 */
1153
+ projected_post_outstanding_units: number;
1154
+ round_id: components["schemas"]["EquityRoundId"];
1155
+ };
1156
+ DirectorInfo: {
1157
+ address?: null | components["schemas"]["CompanyAddress"];
1158
+ name: string;
1159
+ };
1160
+ DissolveEntityRequest: {
1161
+ /** Format: date */
1162
+ effective_date?: string | null;
1163
+ reason?: string | null;
1164
+ };
1165
+ /** Format: uuid */
1166
+ DistributionId: string;
1167
+ DistributionResponse: {
1168
+ created_at: string;
1169
+ description: string;
1170
+ distribution_id: components["schemas"]["DistributionId"];
1171
+ distribution_type: components["schemas"]["DistributionType"];
1172
+ entity_id: components["schemas"]["EntityId"];
1173
+ status: components["schemas"]["DistributionStatus"];
1174
+ /** Format: int64 */
1175
+ total_amount_cents: number;
1176
+ };
1177
+ /**
1178
+ * @description Status of a distribution.
1179
+ * @enum {string}
1180
+ */
1181
+ DistributionStatus: "pending" | "approved" | "distributed";
1182
+ /**
1183
+ * @description Type of distribution.
1184
+ * @enum {string}
1185
+ */
1186
+ DistributionType: "dividend" | "return" | "liquidation";
1187
+ DocumentCopyRequest: {
1188
+ entity_id: components["schemas"]["EntityId"];
1189
+ recipient_email?: string | null;
1190
+ };
1191
+ DocumentCopyResponse: {
1192
+ created_at: string;
1193
+ document_id: components["schemas"]["DocumentId"];
1194
+ recipient_email?: string | null;
1195
+ request_id: string;
1196
+ status: string;
1197
+ title: string;
1198
+ };
1199
+ /** Format: uuid */
1200
+ DocumentId: string;
1201
+ DocumentOptions: {
1202
+ dating_format?: string;
1203
+ right_of_first_refusal?: boolean;
1204
+ s_corp_election?: boolean;
1205
+ transfer_restrictions?: boolean;
1206
+ };
1207
+ /** Format: uuid */
1208
+ DocumentRequestId: string;
1209
+ DocumentRequestResponse: {
1210
+ created_at: string;
1211
+ description: string;
1212
+ document_type: string;
1213
+ entity_id: components["schemas"]["EntityId"];
1214
+ fulfilled_at?: string | null;
1215
+ not_applicable_at?: string | null;
1216
+ obligation_id: components["schemas"]["ObligationId"];
1217
+ request_id: components["schemas"]["DocumentRequestId"];
1218
+ status: components["schemas"]["DocumentRequestStatus"];
1219
+ };
1220
+ /**
1221
+ * @description Status of a request for a document from a stakeholder.
1222
+ * @enum {string}
1223
+ */
1224
+ DocumentRequestStatus: "requested" | "provided" | "not_applicable" | "waived";
1225
+ DocumentResponse: {
1226
+ content: Record<string, never>;
1227
+ content_hash: string;
1228
+ created_at: string;
1229
+ document_id: components["schemas"]["DocumentId"];
1230
+ document_type: components["schemas"]["DocumentType"];
1231
+ entity_id: components["schemas"]["EntityId"];
1232
+ signatures: components["schemas"]["SignatureSummary"][];
1233
+ status: components["schemas"]["DocumentStatus"];
1234
+ title: string;
1235
+ /** Format: int32 */
1236
+ version: number;
1237
+ };
1238
+ /**
1239
+ * @description Status of a document in the signing workflow.
1240
+ * @enum {string}
1241
+ */
1242
+ DocumentStatus: "draft" | "signed" | "amended" | "filed";
1243
+ DocumentSummary: {
1244
+ created_at: string;
1245
+ document_id: components["schemas"]["DocumentId"];
1246
+ document_type: components["schemas"]["DocumentType"];
1247
+ signature_count: number;
1248
+ status: components["schemas"]["DocumentStatus"];
1249
+ title: string;
1250
+ };
1251
+ /**
1252
+ * @description Type of legal document.
1253
+ * @enum {string}
1254
+ */
1255
+ DocumentType: "articles_of_incorporation" | "articles_of_organization" | "bylaws" | "incorporator_action" | "initial_board_consent" | "operating_agreement" | "initial_written_consent" | "ss4_application" | "meeting_notice" | "resolution" | "consulting_agreement" | "employment_offer_letter" | "contractor_services_agreement" | "mutual_nondisclosure_agreement" | "safe_agreement" | "four_oh_nine_a_valuation_report" | "stock_transfer_agreement" | "transfer_board_consent" | "financing_board_consent" | "equity_issuance_approval" | "subscription_agreement" | "investor_rights_agreement" | "restricted_stock_purchase_agreement" | "ip_assignment_agreement" | "contract";
1256
+ /** Format: uuid */
1257
+ EntityId: string;
1258
+ /**
1259
+ * @description The legal structure of a business entity.
1260
+ * @enum {string}
1261
+ */
1262
+ EntityType: "c_corp" | "llc";
1263
+ /** Format: uuid */
1264
+ EquityRoundId: string;
1265
+ /** @enum {string} */
1266
+ EquityRoundStatus: "draft" | "open" | "board_approved" | "accepted" | "closed" | "cancelled";
1267
+ /** Format: uuid */
1268
+ EquityRuleSetId: string;
1269
+ /** @enum {string} */
1270
+ EscalationStatus: "open" | "resolved";
1271
+ EvaluateGovernanceRequest: {
1272
+ entity_id: components["schemas"]["EntityId"];
1273
+ intent_type: string;
1274
+ metadata?: Record<string, never>;
1275
+ };
1276
+ ExecuteConversionRequest: {
1277
+ entity_id: components["schemas"]["EntityId"];
1278
+ intent_id: components["schemas"]["IntentId"];
1279
+ round_id: components["schemas"]["EquityRoundId"];
1280
+ source_reference?: string | null;
1281
+ };
1282
+ ExecutePaymentRequest: {
1283
+ /** Format: int64 */
1284
+ amount_cents: number;
1285
+ description: string;
1286
+ entity_id: components["schemas"]["EntityId"];
1287
+ payment_method?: components["schemas"]["PaymentMethod"];
1288
+ recipient: string;
1289
+ };
1290
+ ExecuteServiceAgreementRequest: {
1291
+ contract_id?: null | components["schemas"]["ContractId"];
1292
+ document_id?: null | components["schemas"]["DocumentId"];
1293
+ notes?: string | null;
1294
+ };
1295
+ /** Format: uuid */
1296
+ ExecutionId: string;
1297
+ ExecutionResponse: {
1298
+ agent_id: string;
1299
+ completed_at?: string | null;
1300
+ container_id?: string | null;
1301
+ execution_id: components["schemas"]["ExecutionId"];
1302
+ reason?: string | null;
1303
+ started_at?: string | null;
1304
+ status: string;
1305
+ };
1306
+ FileTaxDocumentRequest: {
1307
+ document_type: string;
1308
+ entity_id: components["schemas"]["EntityId"];
1309
+ /** Format: int32 */
1310
+ tax_year: number;
1311
+ };
1312
+ FilingAttestationRequest: {
1313
+ consent_text?: string;
1314
+ notes?: string | null;
1315
+ signer_email: string;
1316
+ signer_name: string;
1317
+ signer_role: string;
1318
+ };
1319
+ FinalizeAgendaItemRequest: {
1320
+ entity_id: components["schemas"]["EntityId"];
1321
+ status: components["schemas"]["AgendaItemStatus"];
1322
+ };
1323
+ FinalizePendingFormationRequest: {
1324
+ /** Format: int64 */
1325
+ authorized_shares?: number | null;
1326
+ /** Format: int32 */
1327
+ board_size?: number | null;
1328
+ company_address?: null | components["schemas"]["Address"];
1329
+ fiscal_year_end?: string | null;
1330
+ formation_date?: string | null;
1331
+ incorporator_address?: string | null;
1332
+ incorporator_name?: string | null;
1333
+ par_value?: string | null;
1334
+ principal_name?: string | null;
1335
+ registered_agent_address?: string | null;
1336
+ registered_agent_name?: string | null;
1337
+ right_of_first_refusal?: boolean | null;
1338
+ s_corp_election?: boolean | null;
1339
+ transfer_restrictions?: boolean | null;
1340
+ };
1341
+ FinalizeWorkflowRequest: {
1342
+ entity_id: components["schemas"]["EntityId"];
1343
+ phase?: string | null;
1344
+ };
1345
+ FinancialStatementResponse: {
1346
+ entity_id: components["schemas"]["EntityId"];
1347
+ /** Format: int64 */
1348
+ net_income_cents: number;
1349
+ period_end: string;
1350
+ period_start: string;
1351
+ statement_type: string;
1352
+ /** Format: int64 */
1353
+ total_assets_cents: number;
1354
+ /** Format: int64 */
1355
+ total_equity_cents: number;
1356
+ /** Format: int64 */
1357
+ total_liabilities_cents: number;
1358
+ };
1359
+ FiscalYearEnd: {
1360
+ /** Format: int32 */
1361
+ day: number;
1362
+ /** Format: int32 */
1363
+ month: number;
1364
+ };
1365
+ FormationGatesResponse: {
1366
+ attestation_recorded: boolean;
1367
+ designated_attestor_email?: string | null;
1368
+ designated_attestor_name: string;
1369
+ designated_attestor_role: string;
1370
+ entity_id: components["schemas"]["EntityId"];
1371
+ filing_submission_blockers: string[];
1372
+ registered_agent_consent_evidence_count: number;
1373
+ requires_natural_person_attestation: boolean;
1374
+ requires_registered_agent_consent_evidence: boolean;
1375
+ service_agreement_contract_id?: null | components["schemas"]["ContractId"];
1376
+ service_agreement_document_id?: null | components["schemas"]["DocumentId"];
1377
+ service_agreement_executed: boolean;
1378
+ service_agreement_executed_at?: string | null;
1379
+ service_agreement_notes?: string | null;
1380
+ service_agreement_required_for_tier1_autonomy: boolean;
1381
+ };
1382
+ FormationResponse: {
1383
+ document_ids: components["schemas"]["DocumentId"][];
1384
+ entity_id: components["schemas"]["EntityId"];
1385
+ formation_id: components["schemas"]["EntityId"];
1386
+ formation_status: components["schemas"]["FormationStatus"];
1387
+ next_action?: string | null;
1388
+ };
1389
+ /**
1390
+ * @description High-level state of a forming entity.
1391
+ * @enum {string}
1392
+ */
1393
+ FormationState: "forming" | "active";
1394
+ /**
1395
+ * @description Detailed formation workflow status with valid state transitions.
1396
+ * @enum {string}
1397
+ */
1398
+ FormationStatus: "pending" | "documents_generated" | "documents_signed" | "filing_submitted" | "filed" | "ein_applied" | "active" | "rejected" | "dissolved";
1399
+ FormationStatusResponse: {
1400
+ entity_id: components["schemas"]["EntityId"];
1401
+ entity_type: components["schemas"]["EntityType"];
1402
+ formation_date?: string | null;
1403
+ formation_state: components["schemas"]["FormationState"];
1404
+ formation_status: components["schemas"]["FormationStatus"];
1405
+ jurisdiction: components["schemas"]["Jurisdiction"];
1406
+ legal_name: string;
1407
+ next_action?: string | null;
1408
+ };
1409
+ FormationWithCapTableResponse: {
1410
+ document_ids: components["schemas"]["DocumentId"][];
1411
+ entity_id: components["schemas"]["EntityId"];
1412
+ formation_id: components["schemas"]["EntityId"];
1413
+ formation_status: components["schemas"]["FormationStatus"];
1414
+ holders: components["schemas"]["HolderSummary"][];
1415
+ instrument_id?: null | components["schemas"]["InstrumentId"];
1416
+ legal_entity_id?: null | components["schemas"]["LegalEntityId"];
1417
+ next_action?: string | null;
1418
+ };
1419
+ FounderInfo: {
1420
+ address?: null | components["schemas"]["CompanyAddress"];
1421
+ email?: string | null;
1422
+ ip_contribution?: string | null;
1423
+ name: string;
1424
+ /** Format: int64 */
1425
+ shares?: number | null;
1426
+ vesting?: null | components["schemas"]["VestingSchedule"];
1427
+ };
1428
+ FounderSummary: {
1429
+ address?: null | components["schemas"]["Address"];
1430
+ email?: string | null;
1431
+ name: string;
1432
+ /** Format: double */
1433
+ ownership_pct?: number | null;
1434
+ role?: null | components["schemas"]["MemberRole"];
1435
+ };
1436
+ /** Format: uuid */
1437
+ FundraisingWorkflowId: string;
1438
+ FundraisingWorkflowResponse: {
1439
+ accept_intent_id?: null | components["schemas"]["IntentId"];
1440
+ active_packet_id?: null | components["schemas"]["PacketId"];
1441
+ board_approval_meeting_id?: null | components["schemas"]["MeetingId"];
1442
+ board_approval_resolution_id?: null | components["schemas"]["ResolutionId"];
1443
+ board_packet_documents: string[];
1444
+ close_intent_id?: null | components["schemas"]["IntentId"];
1445
+ closing_packet_documents: string[];
1446
+ created_at: string;
1447
+ execution_status: string;
1448
+ fundraising_workflow_id: components["schemas"]["FundraisingWorkflowId"];
1449
+ last_packet_hash?: string | null;
1450
+ prepare_intent_id: components["schemas"]["IntentId"];
1451
+ round_id: components["schemas"]["EquityRoundId"];
1452
+ round_status: components["schemas"]["EquityRoundStatus"];
1453
+ rule_set_id?: null | components["schemas"]["EquityRuleSetId"];
1454
+ updated_at: string;
1455
+ };
1456
+ GenerateContractRequest: {
1457
+ counterparty_name: string;
1458
+ effective_date: string;
1459
+ entity_id: components["schemas"]["EntityId"];
1460
+ parameters?: Record<string, never>;
1461
+ template_type: components["schemas"]["ContractTemplateType"];
1462
+ };
1463
+ GenerateGovernanceDocBundleRequest: {
1464
+ template_version?: string | null;
1465
+ };
1466
+ GenerateGovernanceDocBundleResponse: {
1467
+ current: components["schemas"]["GovernanceDocBundleCurrent"];
1468
+ manifest: components["schemas"]["GovernanceDocBundleManifest"];
1469
+ summary: components["schemas"]["GovernanceDocBundleSummary"];
1470
+ };
1471
+ GenerateWorkflowDocsRequest: {
1472
+ documents?: string[];
1473
+ entity_id: components["schemas"]["EntityId"];
1474
+ };
1475
+ GeneratedGovernanceDocument: {
1476
+ bytes: number;
1477
+ path: string;
1478
+ sha256: string;
1479
+ source_path: string;
1480
+ };
1481
+ /**
1482
+ * @description Standard GL account codes with integer discriminants matching the code number.
1483
+ * @enum {string}
1484
+ */
1485
+ GlAccountCode: "Cash" | "AccountsReceivable" | "AccountsPayable" | "AccruedExpenses" | "FounderCapital" | "Revenue" | "OperatingExpenses" | "Cogs";
1486
+ GovernanceAuditCheckpoint: {
1487
+ checkpoint_id: components["schemas"]["GovernanceAuditCheckpointId"];
1488
+ /** Format: date-time */
1489
+ created_at: string;
1490
+ entity_id: components["schemas"]["EntityId"];
1491
+ latest_entry_hash: string;
1492
+ latest_entry_id: components["schemas"]["GovernanceAuditEntryId"];
1493
+ /** Format: int64 */
1494
+ total_entries: number;
1495
+ };
1496
+ /** Format: uuid */
1497
+ GovernanceAuditCheckpointId: string;
1498
+ GovernanceAuditEntry: {
1499
+ action: string;
1500
+ audit_entry_id: components["schemas"]["GovernanceAuditEntryId"];
1501
+ /** Format: date-time */
1502
+ created_at: string;
1503
+ details?: Record<string, never>;
1504
+ entity_id: components["schemas"]["EntityId"];
1505
+ entry_hash: string;
1506
+ event_type: components["schemas"]["GovernanceAuditEventType"];
1507
+ evidence_refs?: string[];
1508
+ linked_incident_id?: null | components["schemas"]["IncidentId"];
1509
+ linked_intent_id?: null | components["schemas"]["IntentId"];
1510
+ linked_mode_event_id?: null | components["schemas"]["GovernanceModeEventId"];
1511
+ linked_trigger_id?: null | components["schemas"]["GovernanceTriggerId"];
1512
+ previous_entry_hash?: string | null;
1513
+ };
1514
+ /** Format: uuid */
1515
+ GovernanceAuditEntryId: string;
1516
+ /** @enum {string} */
1517
+ GovernanceAuditEventType: "mode_changed" | "lockdown_trigger_applied" | "manual_event" | "checkpoint_written" | "chain_verified" | "chain_verification_failed";
1518
+ /** Format: uuid */
1519
+ GovernanceAuditVerificationId: string;
1520
+ GovernanceAuditVerificationReport: {
1521
+ anomalies?: string[];
1522
+ /** Format: date-time */
1523
+ created_at: string;
1524
+ entity_id: components["schemas"]["EntityId"];
1525
+ incident_id?: null | components["schemas"]["IncidentId"];
1526
+ latest_entry_hash?: string | null;
1527
+ ok: boolean;
1528
+ /** Format: int64 */
1529
+ total_entries: number;
1530
+ trigger_id?: null | components["schemas"]["GovernanceTriggerId"];
1531
+ triggered_lockdown: boolean;
1532
+ verification_id: components["schemas"]["GovernanceAuditVerificationId"];
1533
+ };
1534
+ /** Format: uuid */
1535
+ GovernanceBodyId: string;
1536
+ GovernanceBodyResponse: {
1537
+ body_id: components["schemas"]["GovernanceBodyId"];
1538
+ body_type: components["schemas"]["BodyType"];
1539
+ created_at: string;
1540
+ entity_id: components["schemas"]["EntityId"];
1541
+ name: string;
1542
+ quorum_rule: components["schemas"]["QuorumThreshold"];
1543
+ status: components["schemas"]["BodyStatus"];
1544
+ voting_method: components["schemas"]["VotingMethod"];
1545
+ };
1546
+ GovernanceDocBundleCurrent: {
1547
+ bundle_id: components["schemas"]["GovernanceDocBundleId"];
1548
+ entity_id: components["schemas"]["EntityId"];
1549
+ generated_at: string;
1550
+ manifest_path: string;
1551
+ template_version: string;
1552
+ };
1553
+ /** Format: uuid */
1554
+ GovernanceDocBundleId: string;
1555
+ GovernanceDocBundleManifest: {
1556
+ bundle_id: components["schemas"]["GovernanceDocBundleId"];
1557
+ documents: components["schemas"]["GeneratedGovernanceDocument"][];
1558
+ entity_id: components["schemas"]["EntityId"];
1559
+ entity_type: string;
1560
+ generated_at: string;
1561
+ /** Format: int32 */
1562
+ profile_version: number;
1563
+ source_root: string;
1564
+ template_version: string;
1565
+ warnings?: string[];
1566
+ };
1567
+ GovernanceDocBundleSummary: {
1568
+ bundle_id: components["schemas"]["GovernanceDocBundleId"];
1569
+ document_count: number;
1570
+ entity_id: components["schemas"]["EntityId"];
1571
+ entity_type: string;
1572
+ generated_at: string;
1573
+ /** Format: int32 */
1574
+ profile_version: number;
1575
+ template_version: string;
1576
+ };
1577
+ GovernanceIncident: {
1578
+ /** Format: date-time */
1579
+ created_at: string;
1580
+ description: string;
1581
+ entity_id: components["schemas"]["EntityId"];
1582
+ incident_id: components["schemas"]["IncidentId"];
1583
+ /** Format: date-time */
1584
+ resolved_at?: string | null;
1585
+ severity: components["schemas"]["IncidentSeverity"];
1586
+ status: components["schemas"]["IncidentStatus"];
1587
+ title: string;
1588
+ };
1589
+ /**
1590
+ * @description Governance mode for policy enforcement.
1591
+ * @enum {string}
1592
+ */
1593
+ GovernanceMode: "normal" | "principal_unavailable" | "incident_lockdown";
1594
+ GovernanceModeChangeEvent: {
1595
+ /** Format: date-time */
1596
+ created_at: string;
1597
+ entity_id: components["schemas"]["EntityId"];
1598
+ evidence_refs?: string[];
1599
+ from_mode: components["schemas"]["GovernanceMode"];
1600
+ incident_ids?: components["schemas"]["IncidentId"][];
1601
+ mode_event_id: components["schemas"]["GovernanceModeEventId"];
1602
+ reason?: string | null;
1603
+ to_mode: components["schemas"]["GovernanceMode"];
1604
+ trigger_id?: null | components["schemas"]["GovernanceTriggerId"];
1605
+ updated_by?: null | components["schemas"]["ContactId"];
1606
+ };
1607
+ /** Format: uuid */
1608
+ GovernanceModeEventId: string;
1609
+ GovernanceModeResponse: {
1610
+ created_at: string;
1611
+ entity_id: components["schemas"]["EntityId"];
1612
+ mode: components["schemas"]["GovernanceMode"];
1613
+ reason?: string | null;
1614
+ updated_at: string;
1615
+ };
1616
+ GovernanceProfile: {
1617
+ adopted_by: string;
1618
+ /** Format: int32 */
1619
+ board_size?: number | null;
1620
+ company_address?: null | components["schemas"]["CompanyAddress"];
1621
+ /** Format: date-time */
1622
+ created_at: string;
1623
+ directors?: components["schemas"]["DirectorInfo"][];
1624
+ document_options?: null | components["schemas"]["DocumentOptions"];
1625
+ /** Format: date */
1626
+ effective_date: string;
1627
+ entity_id: components["schemas"]["EntityId"];
1628
+ entity_type: components["schemas"]["EntityType"];
1629
+ fiscal_year_end?: null | components["schemas"]["FiscalYearEnd"];
1630
+ founders?: components["schemas"]["FounderInfo"][];
1631
+ incomplete_profile?: boolean;
1632
+ incorporator_address?: string | null;
1633
+ incorporator_name?: string | null;
1634
+ jurisdiction: string;
1635
+ /** Format: date */
1636
+ last_reviewed: string;
1637
+ legal_name: string;
1638
+ /** Format: date */
1639
+ next_mandatory_review: string;
1640
+ officers?: components["schemas"]["OfficerInfo"][];
1641
+ principal_name?: string | null;
1642
+ principal_title?: string | null;
1643
+ registered_agent_address?: string | null;
1644
+ registered_agent_name?: string | null;
1645
+ stock_details?: null | components["schemas"]["StockDetails"];
1646
+ /** Format: date-time */
1647
+ updated_at: string;
1648
+ /** Format: int32 */
1649
+ version: number;
1650
+ };
1651
+ /** Format: uuid */
1652
+ GovernanceSeatId: string;
1653
+ GovernanceSeatResponse: {
1654
+ /** Format: date */
1655
+ appointed_date?: string | null;
1656
+ body_id: components["schemas"]["GovernanceBodyId"];
1657
+ created_at: string;
1658
+ holder_id: components["schemas"]["ContactId"];
1659
+ role: components["schemas"]["SeatRole"];
1660
+ seat_id: components["schemas"]["GovernanceSeatId"];
1661
+ status: components["schemas"]["SeatStatus"];
1662
+ /** Format: date */
1663
+ term_expiration?: string | null;
1664
+ /** Format: int32 */
1665
+ voting_power: number;
1666
+ };
1667
+ GovernanceTriggerEvent: {
1668
+ /** Format: date-time */
1669
+ created_at: string;
1670
+ description: string;
1671
+ entity_id: components["schemas"]["EntityId"];
1672
+ evidence_refs?: string[];
1673
+ idempotency_key_hash?: string | null;
1674
+ incident_id: components["schemas"]["IncidentId"];
1675
+ linked_escalation_id?: null | components["schemas"]["ComplianceEscalationId"];
1676
+ linked_intent_id?: null | components["schemas"]["IntentId"];
1677
+ mode_event_id: components["schemas"]["GovernanceModeEventId"];
1678
+ severity: components["schemas"]["IncidentSeverity"];
1679
+ source: components["schemas"]["GovernanceTriggerSource"];
1680
+ title: string;
1681
+ trigger_id: components["schemas"]["GovernanceTriggerId"];
1682
+ trigger_type: components["schemas"]["GovernanceTriggerType"];
1683
+ };
1684
+ /** Format: uuid */
1685
+ GovernanceTriggerId: string;
1686
+ /** @enum {string} */
1687
+ GovernanceTriggerSource: "compliance_scanner" | "execution_gate" | "external_ingestion";
1688
+ /** @enum {string} */
1689
+ GovernanceTriggerType: "external_signal" | "policy_evidence_mismatch" | "compliance_deadline_missed_d_plus_1" | "audit_chain_verification_failed";
1690
+ /**
1691
+ * @description The type of governing document for a share transfer.
1692
+ * @enum {string}
1693
+ */
1694
+ GoverningDocType: "bylaws" | "operating_agreement" | "shareholder_agreement" | "other";
1695
+ /**
1696
+ * @description The type of equity grant.
1697
+ * @enum {string}
1698
+ */
1699
+ GrantType: "common_stock" | "preferred_stock" | "membership_unit" | "stock_option" | "iso" | "nso" | "rsa" | "svu";
1700
+ /** Format: uuid */
1701
+ HolderId: string;
1702
+ HolderResponse: {
1703
+ contact_id: components["schemas"]["ContactId"];
1704
+ created_at: string;
1705
+ holder_id: components["schemas"]["HolderId"];
1706
+ holder_type: components["schemas"]["HolderType"];
1707
+ linked_entity_id?: null | components["schemas"]["EntityId"];
1708
+ name: string;
1709
+ };
1710
+ /** @description Summary of a holder created during cap table setup. */
1711
+ HolderSummary: {
1712
+ holder_id: components["schemas"]["HolderId"];
1713
+ name: string;
1714
+ /** Format: double */
1715
+ ownership_pct: number;
1716
+ /** Format: int64 */
1717
+ shares: number;
1718
+ };
1719
+ /**
1720
+ * @description Type of holder represented in the cap table.
1721
+ * @enum {string}
1722
+ */
1723
+ HolderType: "individual" | "organization" | "fund" | "nonprofit" | "trust" | "other";
1724
+ /** @enum {string} */
1725
+ HttpMethod: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "HEAD" | "OPTIONS";
1726
+ /** Format: uuid */
1727
+ IncidentId: string;
1728
+ IncidentResponse: {
1729
+ created_at: string;
1730
+ description: string;
1731
+ entity_id: components["schemas"]["EntityId"];
1732
+ incident_id: components["schemas"]["IncidentId"];
1733
+ resolved_at?: string | null;
1734
+ severity: components["schemas"]["IncidentSeverity"];
1735
+ status: components["schemas"]["IncidentStatus"];
1736
+ title: string;
1737
+ };
1738
+ /** @enum {string} */
1739
+ IncidentSeverity: "low" | "medium" | "high" | "critical";
1740
+ /** @enum {string} */
1741
+ IncidentStatus: "open" | "resolved";
1742
+ /** Format: uuid */
1743
+ InstrumentId: string;
1744
+ /**
1745
+ * @description Instrument kind in the ownership model.
1746
+ * @enum {string}
1747
+ */
1748
+ InstrumentKind: "common_equity" | "preferred_equity" | "membership_unit" | "option_grant" | "safe" | "convertible_note" | "warrant";
1749
+ InstrumentResponse: {
1750
+ /** Format: int64 */
1751
+ authorized_units?: number | null;
1752
+ created_at: string;
1753
+ instrument_id: components["schemas"]["InstrumentId"];
1754
+ /** Format: int64 */
1755
+ issue_price_cents?: number | null;
1756
+ issuer_legal_entity_id: components["schemas"]["LegalEntityId"];
1757
+ kind: components["schemas"]["InstrumentKind"];
1758
+ status: components["schemas"]["InstrumentStatus"];
1759
+ symbol: string;
1760
+ };
1761
+ /**
1762
+ * @description Lifecycle status of the instrument.
1763
+ * @enum {string}
1764
+ */
1765
+ InstrumentStatus: "active" | "closed" | "cancelled";
1766
+ /** Format: uuid */
1767
+ IntentId: string;
1768
+ IntentResponse: {
1769
+ authority_tier: components["schemas"]["AuthorityTier"];
1770
+ authorized_at?: string | null;
1771
+ bound_approval_artifact_id?: null | components["schemas"]["ApprovalArtifactId"];
1772
+ bound_document_request_ids: components["schemas"]["DocumentRequestId"][];
1773
+ cancelled_at?: string | null;
1774
+ created_at: string;
1775
+ description: string;
1776
+ entity_id: components["schemas"]["EntityId"];
1777
+ evaluated_at?: string | null;
1778
+ executed_at?: string | null;
1779
+ failed_at?: string | null;
1780
+ failure_reason?: string | null;
1781
+ intent_id: components["schemas"]["IntentId"];
1782
+ intent_type: string;
1783
+ policy_decision?: null | components["schemas"]["PolicyDecision"];
1784
+ status: components["schemas"]["IntentStatus"];
1785
+ };
1786
+ /**
1787
+ * @description Lifecycle status of an execution intent.
1788
+ * @enum {string}
1789
+ */
1790
+ IntentStatus: "pending" | "evaluated" | "authorized" | "executed" | "failed" | "cancelled";
1791
+ InternalChannelResponse: {
1792
+ schedule?: string | null;
1793
+ type: string;
1794
+ };
1795
+ InternalCronAgentResponse: {
1796
+ agent_id: string;
1797
+ channels: components["schemas"]["InternalChannelResponse"][];
1798
+ status: string;
1799
+ workspace_id: string;
1800
+ };
1801
+ InternalLockdownTriggerRequest: {
1802
+ description: string;
1803
+ evidence_refs?: string[];
1804
+ idempotency_key: string;
1805
+ linked_escalation_id?: null | components["schemas"]["ComplianceEscalationId"];
1806
+ linked_intent_id?: null | components["schemas"]["IntentId"];
1807
+ severity: components["schemas"]["IncidentSeverity"];
1808
+ title: string;
1809
+ trigger_type: components["schemas"]["GovernanceTriggerType"];
1810
+ };
1811
+ InternalLockdownTriggerResponse: {
1812
+ idempotent_replay: boolean;
1813
+ incident_id: components["schemas"]["IncidentId"];
1814
+ mode: components["schemas"]["GovernanceMode"];
1815
+ mode_event_id: components["schemas"]["GovernanceModeEventId"];
1816
+ trigger_id: components["schemas"]["GovernanceTriggerId"];
1817
+ };
1818
+ InterpolateRequest: {
1819
+ execution_id: string;
1820
+ template: string;
1821
+ };
1822
+ InterpolateResponse: {
1823
+ result: string;
1824
+ };
1825
+ /**
1826
+ * @description Classification of a member/investor.
1827
+ * @enum {string}
1828
+ */
1829
+ InvestorType: "natural_person" | "agent" | "entity";
1830
+ /** Format: uuid */
1831
+ InvoiceId: string;
1832
+ InvoiceResponse: {
1833
+ /** Format: int64 */
1834
+ amount_cents: number;
1835
+ created_at: string;
1836
+ customer_name: string;
1837
+ description: string;
1838
+ /** Format: date */
1839
+ due_date: string;
1840
+ entity_id: components["schemas"]["EntityId"];
1841
+ invoice_id: components["schemas"]["InvoiceId"];
1842
+ status: components["schemas"]["InvoiceStatus"];
1843
+ };
1844
+ /**
1845
+ * @description Lifecycle status of an invoice.
1846
+ * @enum {string}
1847
+ */
1848
+ InvoiceStatus: "draft" | "sent" | "paid" | "voided";
1849
+ IssueStagedRoundRequest: {
1850
+ entity_id: components["schemas"]["EntityId"];
1851
+ meeting_id?: null | components["schemas"]["MeetingId"];
1852
+ resolution_id?: null | components["schemas"]["ResolutionId"];
1853
+ };
1854
+ IssueStagedRoundResponse: {
1855
+ agenda_item_id?: null | components["schemas"]["AgendaItemId"];
1856
+ meeting_id?: null | components["schemas"]["MeetingId"];
1857
+ positions: components["schemas"]["PositionResponse"][];
1858
+ round: components["schemas"]["RoundResponse"];
1859
+ };
1860
+ /** Format: uuid */
1861
+ JournalEntryId: string;
1862
+ JournalEntryResponse: {
1863
+ created_at: string;
1864
+ description: string;
1865
+ /** Format: date */
1866
+ effective_date: string;
1867
+ entity_id: components["schemas"]["EntityId"];
1868
+ journal_entry_id: components["schemas"]["JournalEntryId"];
1869
+ status: components["schemas"]["JournalEntryStatus"];
1870
+ /** Format: int64 */
1871
+ total_credits_cents: number;
1872
+ /** Format: int64 */
1873
+ total_debits_cents: number;
1874
+ };
1875
+ /**
1876
+ * @description Status of a journal entry.
1877
+ * @enum {string}
1878
+ */
1879
+ JournalEntryStatus: "draft" | "posted" | "voided";
1880
+ /**
1881
+ * @description A validated jurisdiction (e.g., "Delaware", "US-DE").
1882
+ *
1883
+ * Guarantees: non-empty, at most 200 characters, and matches a supported US
1884
+ * state or DC jurisdiction name/code.
1885
+ */
1886
+ Jurisdiction: string;
1887
+ JwksResponse: {
1888
+ keys: Record<string, never>[];
1889
+ };
1890
+ KillResponse: {
1891
+ execution_id: components["schemas"]["ExecutionId"];
1892
+ status: string;
1893
+ };
1894
+ LedgerLineRequest: {
1895
+ account_id: components["schemas"]["AccountId"];
1896
+ /** Format: int64 */
1897
+ amount_cents: number;
1898
+ memo?: string | null;
1899
+ side: components["schemas"]["Side"];
1900
+ };
1901
+ /** Format: uuid */
1902
+ LegalEntityId: string;
1903
+ LegalEntityResponse: {
1904
+ created_at: string;
1905
+ legal_entity_id: components["schemas"]["LegalEntityId"];
1906
+ linked_entity_id?: null | components["schemas"]["EntityId"];
1907
+ name: string;
1908
+ role: components["schemas"]["LegalEntityRole"];
1909
+ workspace_id: components["schemas"]["WorkspaceId"];
1910
+ };
1911
+ /**
1912
+ * @description Role this legal entity plays in the ownership/control graph.
1913
+ * @enum {string}
1914
+ */
1915
+ LegalEntityRole: "operating" | "control" | "investment" | "nonprofit" | "spv" | "other";
1916
+ /** @description MCP server that runs inside the agent container. */
1917
+ MCPServerSpec: {
1918
+ args?: string[];
1919
+ command: components["schemas"]["NonEmpty"];
1920
+ env?: {
1921
+ [key: string]: string;
1922
+ };
1923
+ name: components["schemas"]["NonEmpty"];
1924
+ transport?: components["schemas"]["Transport"];
1925
+ };
1926
+ /** Format: uuid */
1927
+ MeetingId: string;
1928
+ MeetingQuery: {
1929
+ entity_id: components["schemas"]["EntityId"];
1930
+ };
1931
+ MeetingResponse: {
1932
+ agenda_item_ids: components["schemas"]["AgendaItemId"][];
1933
+ body_id: components["schemas"]["GovernanceBodyId"];
1934
+ created_at: string;
1935
+ location: string;
1936
+ meeting_id: components["schemas"]["MeetingId"];
1937
+ meeting_type: components["schemas"]["MeetingType"];
1938
+ quorum_met: components["schemas"]["QuorumStatus"];
1939
+ /** Format: date */
1940
+ scheduled_date?: string | null;
1941
+ status: components["schemas"]["MeetingStatus"];
1942
+ title: string;
1943
+ };
1944
+ /**
1945
+ * @description Lifecycle status of a meeting.
1946
+ * @enum {string}
1947
+ */
1948
+ MeetingStatus: "draft" | "noticed" | "convened" | "adjourned" | "cancelled";
1949
+ /**
1950
+ * @description Type of meeting.
1951
+ * @enum {string}
1952
+ */
1953
+ MeetingType: "board_meeting" | "shareholder_meeting" | "written_consent" | "member_meeting";
1954
+ /** @description A member/founder as provided in the formation request. */
1955
+ MemberInput: {
1956
+ address?: null | components["schemas"]["Address"];
1957
+ agent_id?: null | components["schemas"]["AgentId"];
1958
+ email?: string | null;
1959
+ entity_id?: null | components["schemas"]["EntityId"];
1960
+ investor_type: components["schemas"]["InvestorType"];
1961
+ /** @description Description of IP being contributed to the company. */
1962
+ ip_description?: string | null;
1963
+ /** @description Whether this member is the sole incorporator (corporations only). */
1964
+ is_incorporator?: boolean | null;
1965
+ /** Format: int64 */
1966
+ membership_units?: number | null;
1967
+ name: string;
1968
+ officer_title?: null | components["schemas"]["OfficerTitle"];
1969
+ /** Format: double */
1970
+ ownership_pct?: number | null;
1971
+ role?: null | components["schemas"]["MemberRole"];
1972
+ share_class?: string | null;
1973
+ /** Format: int64 */
1974
+ share_count?: number | null;
1975
+ /**
1976
+ * Format: int64
1977
+ * @description Explicit number of shares being purchased at formation.
1978
+ */
1979
+ shares_purchased?: number | null;
1980
+ vesting?: null | components["schemas"]["VestingSchedule"];
1981
+ };
1982
+ /**
1983
+ * @description Role a member holds in the entity.
1984
+ * @enum {string}
1985
+ */
1986
+ MemberRole: "director" | "officer" | "manager" | "member" | "chair";
1987
+ MergeBranchRequest: {
1988
+ into?: components["schemas"]["BranchName"];
1989
+ squash?: boolean;
1990
+ };
1991
+ MergeBranchResponse: {
1992
+ commit?: string | null;
1993
+ merged: boolean;
1994
+ strategy: string;
1995
+ };
1996
+ /** Format: uuid */
1997
+ MessageId: string;
1998
+ MessageResponse: {
1999
+ agent_id: components["schemas"]["AgentId"];
2000
+ execution_id?: null | components["schemas"]["ExecutionId"];
2001
+ message: string;
2002
+ message_id: components["schemas"]["MessageId"];
2003
+ status: string;
2004
+ };
2005
+ MintAgentTokenRequest: {
2006
+ agent_id: components["schemas"]["AgentId"];
2007
+ /** Format: int64 */
2008
+ ttl_seconds?: number | null;
2009
+ workspace_id: components["schemas"]["WorkspaceId"];
2010
+ };
2011
+ MintAgentTokenResponse: {
2012
+ access_token: string;
2013
+ /** Format: int64 */
2014
+ expires_in: number;
2015
+ scopes: components["schemas"]["Scope"][];
2016
+ token_type: string;
2017
+ };
2018
+ /** @enum {string} */
2019
+ NetworkEgress: "restricted" | "open";
2020
+ /**
2021
+ * @description A `String` that is guaranteed non-empty and non-whitespace-only.
2022
+ *
2023
+ * This is a *parsed* type: the only way to obtain one is through
2024
+ * `NonEmpty::parse()` or serde deserialization, both of which reject
2025
+ * blank strings. Downstream code never needs to re-check for emptiness.
2026
+ */
2027
+ NonEmpty: string;
2028
+ NotificationPrefsResponse: {
2029
+ contact_id: components["schemas"]["ContactId"];
2030
+ email_enabled: boolean;
2031
+ sms_enabled: boolean;
2032
+ updated_at: string;
2033
+ webhook_enabled: boolean;
2034
+ };
2035
+ /** Format: uuid */
2036
+ ObligationId: string;
2037
+ ObligationResponse: {
2038
+ assignee_id?: null | components["schemas"]["ContactId"];
2039
+ assignee_type: components["schemas"]["AssigneeType"];
2040
+ created_at: string;
2041
+ description: string;
2042
+ /** Format: date */
2043
+ due_date?: string | null;
2044
+ entity_id: components["schemas"]["EntityId"];
2045
+ expired_at?: string | null;
2046
+ fulfilled_at?: string | null;
2047
+ intent_id?: null | components["schemas"]["IntentId"];
2048
+ obligation_id: components["schemas"]["ObligationId"];
2049
+ obligation_type: string;
2050
+ status: components["schemas"]["ObligationStatus"];
2051
+ waived_at?: string | null;
2052
+ };
2053
+ /**
2054
+ * @description Lifecycle status of a compliance or operational obligation.
2055
+ * @enum {string}
2056
+ */
2057
+ ObligationStatus: "required" | "in_progress" | "fulfilled" | "waived" | "expired";
2058
+ /**
2059
+ * @description An extensible obligation type represented as a string.
2060
+ *
2061
+ * Obligation types are not a fixed enum because they vary by jurisdiction,
2062
+ * entity type, and operational context.
2063
+ */
2064
+ ObligationType: string;
2065
+ ObligationsSummaryResponse: {
2066
+ expired: number;
2067
+ fulfilled: number;
2068
+ pending: number;
2069
+ total: number;
2070
+ waived: number;
2071
+ };
2072
+ OfficerInfo: {
2073
+ name: string;
2074
+ title: string;
2075
+ };
2076
+ /**
2077
+ * @description Officer title for a corporate officer.
2078
+ * @enum {string}
2079
+ */
2080
+ OfficerTitle: "ceo" | "cfo" | "cto" | "coo" | "secretary" | "treasurer" | "president" | "vp" | "other";
2081
+ /** Format: uuid */
2082
+ PacketId: string;
2083
+ PacketItem: {
2084
+ document_path: string;
2085
+ item_id: string;
2086
+ required: boolean;
2087
+ title: string;
2088
+ };
2089
+ /** Format: uuid */
2090
+ PacketSignatureId: string;
2091
+ PacketSignatureResponse: {
2092
+ channel: string;
2093
+ signature_id: components["schemas"]["PacketSignatureId"];
2094
+ signed_at: string;
2095
+ signer_identity: string;
2096
+ };
2097
+ PayInstructionsResponse: {
2098
+ /** Format: int64 */
2099
+ amount_cents: number;
2100
+ currency: string;
2101
+ instructions: string;
2102
+ invoice_id: components["schemas"]["InvoiceId"];
2103
+ payment_method: string;
2104
+ };
2105
+ /** Format: uuid */
2106
+ PaymentId: string;
2107
+ PaymentIntentResponse: {
2108
+ /** Format: int64 */
2109
+ amount_cents: number;
2110
+ client_secret: string;
2111
+ created_at: string;
2112
+ currency: string;
2113
+ entity_id: components["schemas"]["EntityId"];
2114
+ payment_intent_id: string;
2115
+ status: string;
2116
+ };
2117
+ /**
2118
+ * @description How a payment is made or received.
2119
+ * @enum {string}
2120
+ */
2121
+ PaymentMethod: "bank_transfer" | "card" | "check" | "wire" | "ach";
2122
+ PaymentOfferResponse: {
2123
+ /** Format: int64 */
2124
+ amount_cents: number;
2125
+ entity_id: components["schemas"]["EntityId"];
2126
+ invoice_id: components["schemas"]["InvoiceId"];
2127
+ payment_url: string;
2128
+ status: components["schemas"]["InvoiceStatus"];
2129
+ };
2130
+ PaymentResponse: {
2131
+ /** Format: int64 */
2132
+ amount_cents: number;
2133
+ created_at: string;
2134
+ description: string;
2135
+ entity_id: components["schemas"]["EntityId"];
2136
+ payment_id: components["schemas"]["PaymentId"];
2137
+ payment_method: components["schemas"]["PaymentMethod"];
2138
+ recipient: string;
2139
+ status: components["schemas"]["PaymentStatus"];
2140
+ };
2141
+ /**
2142
+ * @description Lifecycle status of a payment.
2143
+ * @enum {string}
2144
+ */
2145
+ PaymentStatus: "submitted" | "processing" | "completed" | "failed";
2146
+ PayoutResponse: {
2147
+ /** Format: int64 */
2148
+ amount_cents: number;
2149
+ created_at: string;
2150
+ destination: string;
2151
+ entity_id: components["schemas"]["EntityId"];
2152
+ payout_id: string;
2153
+ status: string;
2154
+ };
2155
+ /** Format: uuid */
2156
+ PayrollRunId: string;
2157
+ PayrollRunResponse: {
2158
+ created_at: string;
2159
+ entity_id: components["schemas"]["EntityId"];
2160
+ /** Format: date */
2161
+ pay_period_end: string;
2162
+ /** Format: date */
2163
+ pay_period_start: string;
2164
+ payroll_run_id: components["schemas"]["PayrollRunId"];
2165
+ status: components["schemas"]["PayrollStatus"];
2166
+ };
2167
+ /**
2168
+ * @description Status of a payroll run.
2169
+ * @enum {string}
2170
+ */
2171
+ PayrollStatus: "pending" | "processing" | "completed";
2172
+ PendingFormationResponse: {
2173
+ entity_id: components["schemas"]["EntityId"];
2174
+ entity_type: components["schemas"]["EntityType"];
2175
+ formation_status: components["schemas"]["FormationStatus"];
2176
+ jurisdiction: components["schemas"]["Jurisdiction"];
2177
+ legal_name: string;
2178
+ };
2179
+ PendingSecuritiesFile: {
2180
+ round_id: components["schemas"]["EquityRoundId"];
2181
+ securities: components["schemas"]["PendingSecurity"][];
2182
+ };
2183
+ PendingSecurity: {
2184
+ grant_type?: string | null;
2185
+ holder_id: components["schemas"]["HolderId"];
2186
+ instrument_id: components["schemas"]["InstrumentId"];
2187
+ /** Format: int64 */
2188
+ principal_cents?: number;
2189
+ /** Format: int64 */
2190
+ quantity: number;
2191
+ recipient_name: string;
2192
+ };
2193
+ PolicyConflict: {
2194
+ higher_source: components["schemas"]["AuthoritySource"];
2195
+ lower_source: components["schemas"]["AuthoritySource"];
2196
+ reason: string;
2197
+ };
2198
+ PolicyDecision: {
2199
+ allowed: boolean;
2200
+ blockers: string[];
2201
+ clause_refs: string[];
2202
+ effective_source?: null | components["schemas"]["AuthoritySource"];
2203
+ escalation_reasons: string[];
2204
+ policy_mapped: boolean;
2205
+ precedence_conflicts?: components["schemas"]["PolicyConflict"][];
2206
+ precedence_trace?: components["schemas"]["PolicyPrecedenceTrace"][];
2207
+ requires_approval: boolean;
2208
+ tier: components["schemas"]["AuthorityTier"];
2209
+ };
2210
+ PolicyPrecedenceTrace: {
2211
+ outcome: string;
2212
+ reason?: string | null;
2213
+ source: components["schemas"]["AuthoritySource"];
2214
+ };
2215
+ /** Format: uuid */
2216
+ PositionId: string;
2217
+ PositionResponse: {
2218
+ holder_id: components["schemas"]["HolderId"];
2219
+ instrument_id: components["schemas"]["InstrumentId"];
2220
+ issuer_legal_entity_id: components["schemas"]["LegalEntityId"];
2221
+ position_id: components["schemas"]["PositionId"];
2222
+ /** Format: int64 */
2223
+ principal_cents: number;
2224
+ /** Format: int64 */
2225
+ quantity_units: number;
2226
+ status: components["schemas"]["PositionStatus"];
2227
+ updated_at: string;
2228
+ };
2229
+ /**
2230
+ * @description Lifecycle status for a position.
2231
+ * @enum {string}
2232
+ */
2233
+ PositionStatus: "active" | "closed";
2234
+ PrepareWorkflowExecutionRequest: {
2235
+ approval_artifact_id: components["schemas"]["ApprovalArtifactId"];
2236
+ document_request_ids?: components["schemas"]["DocumentRequestId"][];
2237
+ entity_id: components["schemas"]["EntityId"];
2238
+ intent_id: components["schemas"]["IntentId"];
2239
+ phase?: string | null;
2240
+ };
2241
+ PreviewConversionRequest: {
2242
+ entity_id: components["schemas"]["EntityId"];
2243
+ round_id: components["schemas"]["EquityRoundId"];
2244
+ source_reference?: string | null;
2245
+ };
2246
+ PreviewDocumentQuery: {
2247
+ document_id: string;
2248
+ entity_id: components["schemas"]["EntityId"];
2249
+ };
2250
+ ProvisionWorkspaceRequest: {
2251
+ name: string;
2252
+ owner_email?: string | null;
2253
+ };
2254
+ ProvisionWorkspaceResponse: {
2255
+ api_key: string;
2256
+ api_key_id: components["schemas"]["ApiKeyId"];
2257
+ name: string;
2258
+ workspace_id: components["schemas"]["WorkspaceId"];
2259
+ };
2260
+ ProxyResponse: {
2261
+ created_at: string;
2262
+ description?: string | null;
2263
+ name: string;
2264
+ secret_count: number;
2265
+ url: string;
2266
+ };
2267
+ /**
2268
+ * @description Whether a quorum was met for a meeting.
2269
+ *
2270
+ * Replaces `Option<bool>` for clearer semantics.
2271
+ * Backward-compatible deserialization from `Option<bool>` via `From`.
2272
+ * @enum {string}
2273
+ */
2274
+ QuorumStatus: "unknown" | "met" | "not_met";
2275
+ /**
2276
+ * @description The threshold required for a vote to pass.
2277
+ * @enum {string}
2278
+ */
2279
+ QuorumThreshold: "majority" | "supermajority" | "unanimous";
2280
+ ReauthorizeDelegationScheduleRequest: {
2281
+ adopted_resolution_id: components["schemas"]["ResolutionId"];
2282
+ entity_id: components["schemas"]["EntityId"];
2283
+ meeting_id: components["schemas"]["MeetingId"];
2284
+ rationale?: string | null;
2285
+ };
2286
+ /** Format: uuid */
2287
+ ReceiptId: string;
2288
+ ReceiptResponse: {
2289
+ created_at: string;
2290
+ executed_at?: string | null;
2291
+ idempotency_key: string;
2292
+ intent_id: components["schemas"]["IntentId"];
2293
+ receipt_id: components["schemas"]["ReceiptId"];
2294
+ request_hash: string;
2295
+ response_hash?: string | null;
2296
+ status: components["schemas"]["ReceiptStatus"];
2297
+ };
2298
+ /**
2299
+ * @description Status of an execution receipt.
2300
+ * @enum {string}
2301
+ */
2302
+ ReceiptStatus: "pending" | "executed" | "failed";
2303
+ ReconcileLedgerRequest: {
2304
+ /** Format: date */
2305
+ as_of_date?: string | null;
2306
+ /** Format: date */
2307
+ end_date?: string | null;
2308
+ entity_id: components["schemas"]["EntityId"];
2309
+ /** Format: date */
2310
+ start_date?: string | null;
2311
+ };
2312
+ /** Format: uuid */
2313
+ ReconciliationId: string;
2314
+ ReconciliationResponse: {
2315
+ /** Format: date */
2316
+ as_of_date: string;
2317
+ created_at: string;
2318
+ /** Format: int64 */
2319
+ difference_cents: number;
2320
+ entity_id: components["schemas"]["EntityId"];
2321
+ reconciliation_id: components["schemas"]["ReconciliationId"];
2322
+ status: components["schemas"]["ReconciliationStatus"];
2323
+ /** Format: int64 */
2324
+ total_credits_cents: number;
2325
+ /** Format: int64 */
2326
+ total_debits_cents: number;
2327
+ };
2328
+ /**
2329
+ * @description Status of a reconciliation.
2330
+ * @enum {string}
2331
+ */
2332
+ ReconciliationStatus: "balanced" | "discrepancy";
2333
+ RecordFundraisingAcceptanceRequest: {
2334
+ accepted_by_contact_id?: null | components["schemas"]["ContactId"];
2335
+ entity_id: components["schemas"]["EntityId"];
2336
+ intent_id: components["schemas"]["IntentId"];
2337
+ };
2338
+ RecordFundraisingBoardApprovalRequest: {
2339
+ entity_id: components["schemas"]["EntityId"];
2340
+ meeting_id: components["schemas"]["MeetingId"];
2341
+ resolution_id: components["schemas"]["ResolutionId"];
2342
+ };
2343
+ RecordFundraisingCloseRequest: {
2344
+ entity_id: components["schemas"]["EntityId"];
2345
+ intent_id: components["schemas"]["IntentId"];
2346
+ };
2347
+ RecordTransferBoardApprovalRequest: {
2348
+ entity_id: components["schemas"]["EntityId"];
2349
+ meeting_id: components["schemas"]["MeetingId"];
2350
+ resolution_id: components["schemas"]["ResolutionId"];
2351
+ };
2352
+ RecordTransferExecutionRequest: {
2353
+ entity_id: components["schemas"]["EntityId"];
2354
+ intent_id: components["schemas"]["IntentId"];
2355
+ };
2356
+ RecordTransferReviewRequest: {
2357
+ approved: boolean;
2358
+ entity_id: components["schemas"]["EntityId"];
2359
+ notes: string;
2360
+ reviewer: string;
2361
+ };
2362
+ RecordTransferRofrRequest: {
2363
+ entity_id: components["schemas"]["EntityId"];
2364
+ offered: boolean;
2365
+ waived: boolean;
2366
+ };
2367
+ RecordWorkflowSignatureRequest: {
2368
+ channel?: string | null;
2369
+ entity_id: components["schemas"]["EntityId"];
2370
+ signer_identity: string;
2371
+ };
2372
+ /**
2373
+ * @description Recurrence pattern for a deadline.
2374
+ * @enum {string}
2375
+ */
2376
+ Recurrence: "one_time" | "monthly" | "quarterly" | "annual";
2377
+ ReferenceHandleRecord: {
2378
+ created_at: string;
2379
+ entity_id?: null | components["schemas"]["EntityId"];
2380
+ handle: string;
2381
+ kind: components["schemas"]["ReferenceKind"];
2382
+ label: string;
2383
+ resource_id: string;
2384
+ updated_at: string;
2385
+ };
2386
+ /** @enum {string} */
2387
+ ReferenceKind: "entity" | "contact" | "share_transfer" | "invoice" | "bank_account" | "payment" | "payroll_run" | "distribution" | "reconciliation" | "tax_filing" | "deadline" | "classification" | "body" | "meeting" | "seat" | "agenda_item" | "resolution" | "document" | "work_item" | "agent" | "valuation" | "safe_note" | "instrument" | "share_class" | "round";
2388
+ RegisteredAgentConsentEvidenceRequest: {
2389
+ evidence_type?: string | null;
2390
+ evidence_uri: string;
2391
+ notes?: string | null;
2392
+ };
2393
+ /** Format: uuid */
2394
+ ResolutionId: string;
2395
+ ResolutionResponse: {
2396
+ agenda_item_id: components["schemas"]["AgendaItemId"];
2397
+ created_at: string;
2398
+ document_id?: null | components["schemas"]["DocumentId"];
2399
+ /** Format: date */
2400
+ effective_date?: string | null;
2401
+ meeting_id: components["schemas"]["MeetingId"];
2402
+ passed: boolean;
2403
+ /** Format: int32 */
2404
+ recused_count: number;
2405
+ resolution_id: components["schemas"]["ResolutionId"];
2406
+ resolution_text: string;
2407
+ resolution_type: components["schemas"]["ResolutionType"];
2408
+ /** Format: int32 */
2409
+ votes_abstain: number;
2410
+ /** Format: int32 */
2411
+ votes_against: number;
2412
+ /** Format: int32 */
2413
+ votes_for: number;
2414
+ };
2415
+ /**
2416
+ * @description Type of resolution.
2417
+ * @enum {string}
2418
+ */
2419
+ ResolutionType: "ordinary" | "special" | "unanimous_written_consent";
2420
+ ResolveEscalationWithEvidenceRequest: {
2421
+ entity_id: components["schemas"]["EntityId"];
2422
+ evidence_type?: string | null;
2423
+ filing_reference?: string | null;
2424
+ notes?: string | null;
2425
+ packet_id?: null | components["schemas"]["PacketId"];
2426
+ resolve_incident?: boolean;
2427
+ resolve_obligation?: boolean;
2428
+ };
2429
+ ResolveEscalationWithEvidenceResponse: {
2430
+ escalation: components["schemas"]["ComplianceEscalationResponse"];
2431
+ evidence_link_id: components["schemas"]["ComplianceEvidenceLinkId"];
2432
+ incident_resolved: boolean;
2433
+ obligation_resolved: boolean;
2434
+ };
2435
+ ResolveRequest: {
2436
+ token: string;
2437
+ };
2438
+ ResolveResponse: {
2439
+ value: string;
2440
+ };
2441
+ ResolveSecretsRequest: {
2442
+ /** @description Which secret keys to resolve. If empty, resolve all. */
2443
+ keys?: string[];
2444
+ proxy_name: string;
2445
+ workspace_id: components["schemas"]["WorkspaceId"];
2446
+ };
2447
+ ResolveSecretsResponse: {
2448
+ proxy_name: string;
2449
+ url: string;
2450
+ values: {
2451
+ [key: string]: string;
2452
+ };
2453
+ };
2454
+ /**
2455
+ * @description Risk level for contractor classification.
2456
+ * @enum {string}
2457
+ */
2458
+ RiskLevel: "low" | "medium" | "high";
2459
+ RoundResponse: {
2460
+ accepted_at?: string | null;
2461
+ accepted_by_contact_id?: null | components["schemas"]["ContactId"];
2462
+ board_approval_meeting_id?: null | components["schemas"]["MeetingId"];
2463
+ board_approval_resolution_id?: null | components["schemas"]["ResolutionId"];
2464
+ board_approved_at?: string | null;
2465
+ conversion_target_instrument_id?: null | components["schemas"]["InstrumentId"];
2466
+ created_at: string;
2467
+ issuer_legal_entity_id: components["schemas"]["LegalEntityId"];
2468
+ name: string;
2469
+ /** Format: int64 */
2470
+ pre_money_cents?: number | null;
2471
+ round_id: components["schemas"]["EquityRoundId"];
2472
+ /** Format: int64 */
2473
+ round_price_cents?: number | null;
2474
+ rule_set_id?: null | components["schemas"]["EquityRuleSetId"];
2475
+ status: components["schemas"]["EquityRoundStatus"];
2476
+ /** Format: int64 */
2477
+ target_raise_cents?: number | null;
2478
+ };
2479
+ RuleSetResponse: {
2480
+ anti_dilution_method: components["schemas"]["AntiDilutionMethod"];
2481
+ conversion_precedence: components["schemas"]["InstrumentKind"][];
2482
+ rule_set_id: components["schemas"]["EquityRuleSetId"];
2483
+ };
2484
+ /** Format: uuid */
2485
+ SafeNoteId: string;
2486
+ SafeNoteResponse: {
2487
+ /** Format: int64 */
2488
+ conversion_price_cents?: number | null;
2489
+ /** Format: int64 */
2490
+ conversion_shares?: number | null;
2491
+ conversion_unit_type: string;
2492
+ converted_at?: string | null;
2493
+ created_at: string;
2494
+ /** Format: double */
2495
+ discount_rate?: number | null;
2496
+ document_id?: null | components["schemas"]["DocumentId"];
2497
+ entity_id: components["schemas"]["EntityId"];
2498
+ investor_contact_id?: null | components["schemas"]["ContactId"];
2499
+ investor_name: string;
2500
+ issued_at: string;
2501
+ meeting_id?: null | components["schemas"]["MeetingId"];
2502
+ /** Format: int64 */
2503
+ principal_amount_cents: number;
2504
+ pro_rata_rights: boolean;
2505
+ resolution_id?: null | components["schemas"]["ResolutionId"];
2506
+ safe_note_id: components["schemas"]["SafeNoteId"];
2507
+ safe_type: components["schemas"]["SafeType"];
2508
+ status: components["schemas"]["SafeStatus"];
2509
+ /** Format: int64 */
2510
+ valuation_cap_cents?: number | null;
2511
+ };
2512
+ /**
2513
+ * @description Lifecycle status of a SAFE note.
2514
+ * @enum {string}
2515
+ */
2516
+ SafeStatus: "issued" | "converted" | "cancelled";
2517
+ /**
2518
+ * @description Type of SAFE note.
2519
+ * @enum {string}
2520
+ */
2521
+ SafeType: "post_money" | "pre_money" | "mfn";
2522
+ /**
2523
+ * @description Per-agent sandbox (container) configuration.
2524
+ *
2525
+ * Numeric resource limits are validated positive — a container with
2526
+ * zero memory or zero CPU cannot start, so we reject at parse time.
2527
+ */
2528
+ SandboxConfig: {
2529
+ /** Format: double */
2530
+ cpu_limit?: number;
2531
+ /** Format: int64 */
2532
+ disk_mb?: number;
2533
+ egress_allowlist?: string[];
2534
+ enable_code_execution?: boolean;
2535
+ /** Format: int64 */
2536
+ memory_mb?: number;
2537
+ network_egress?: components["schemas"]["NetworkEgress"];
2538
+ packages?: string[];
2539
+ runtimes?: string[];
2540
+ /** Format: int64 */
2541
+ timeout_seconds?: number;
2542
+ };
2543
+ ScanComplianceRequest: {
2544
+ entity_id: components["schemas"]["EntityId"];
2545
+ };
2546
+ ScanExpiredResponse: {
2547
+ expired: number;
2548
+ scanned: number;
2549
+ };
2550
+ ScheduleAmendment: {
2551
+ added_tier1_intent_types: string[];
2552
+ adopted_resolution_id?: null | components["schemas"]["ResolutionId"];
2553
+ authority_expansion: boolean;
2554
+ /** Format: date-time */
2555
+ created_at: string;
2556
+ entity_id: components["schemas"]["EntityId"];
2557
+ /** Format: int32 */
2558
+ from_version: number;
2559
+ /** Format: int64 */
2560
+ new_tier1_max_amount_cents: number;
2561
+ /** Format: int64 */
2562
+ previous_tier1_max_amount_cents: number;
2563
+ rationale?: string | null;
2564
+ removed_tier1_intent_types: string[];
2565
+ schedule_amendment_id: components["schemas"]["ScheduleAmendmentId"];
2566
+ /** Format: int32 */
2567
+ to_version: number;
2568
+ };
2569
+ /** Format: uuid */
2570
+ ScheduleAmendmentId: string;
2571
+ ScheduleMeetingRequest: {
2572
+ agenda_item_titles?: string[];
2573
+ body_id: components["schemas"]["GovernanceBodyId"];
2574
+ entity_id: components["schemas"]["EntityId"];
2575
+ location?: string | null;
2576
+ meeting_type: components["schemas"]["MeetingType"];
2577
+ /** Format: int32 */
2578
+ notice_days?: number | null;
2579
+ /** Format: date */
2580
+ scheduled_date?: string | null;
2581
+ title: string;
2582
+ };
2583
+ /**
2584
+ * @description A single capability scope that can be granted to an API key or token.
2585
+ * @enum {string}
2586
+ */
2587
+ Scope: "formation_create" | "formation_read" | "formation_sign" | "equity_read" | "equity_write" | "equity_transfer" | "governance_read" | "governance_write" | "governance_vote" | "treasury_read" | "treasury_write" | "treasury_approve" | "contacts_read" | "contacts_write" | "execution_read" | "execution_write" | "branch_create" | "branch_merge" | "branch_delete" | "admin" | "internal_worker_read" | "internal_worker_write" | "secrets_manage" | "all";
2588
+ /**
2589
+ * @description Role of a seat in a governance body.
2590
+ * @enum {string}
2591
+ */
2592
+ SeatRole: "chair" | "member" | "officer" | "observer";
2593
+ /**
2594
+ * @description Status of a governance seat.
2595
+ * @enum {string}
2596
+ */
2597
+ SeatStatus: "active" | "resigned" | "expired";
2598
+ SecretNamesResponse: {
2599
+ names: string[];
2600
+ proxy_name: string;
2601
+ };
2602
+ SeedChartOfAccountsRequest: {
2603
+ entity_id: components["schemas"]["EntityId"];
2604
+ template?: string;
2605
+ };
2606
+ SeedChartOfAccountsResponse: {
2607
+ accounts_created: number;
2608
+ entity_id: components["schemas"]["EntityId"];
2609
+ template: string;
2610
+ };
2611
+ SendMessageRequest: {
2612
+ message: string;
2613
+ metadata?: Record<string, never>;
2614
+ };
2615
+ ServiceTokenResponse: {
2616
+ api_key_id: components["schemas"]["ApiKeyId"];
2617
+ /** Format: int64 */
2618
+ expires_in: number;
2619
+ token: string;
2620
+ token_type: string;
2621
+ };
2622
+ SetGovernanceModeRequest: {
2623
+ entity_id: components["schemas"]["EntityId"];
2624
+ evidence_refs?: string[];
2625
+ incident_ids?: components["schemas"]["IncidentId"][];
2626
+ mode: components["schemas"]["GovernanceMode"];
2627
+ reason?: string | null;
2628
+ };
2629
+ SetSecretsRequest: {
2630
+ /** @description Key-value pairs. Values are plaintext — the server encrypts before storing. */
2631
+ secrets: {
2632
+ [key: string]: string;
2633
+ };
2634
+ };
2635
+ /** Format: uuid */
2636
+ ShareClassId: string;
2637
+ /**
2638
+ * @description Debit or credit side of a ledger entry.
2639
+ * @enum {string}
2640
+ */
2641
+ Side: "debit" | "credit";
2642
+ SignDocumentRequest: {
2643
+ consent_text?: string;
2644
+ signature_svg?: string | null;
2645
+ signature_text: string;
2646
+ signer_email: string;
2647
+ signer_name: string;
2648
+ signer_role: string;
2649
+ };
2650
+ SignDocumentResponse: {
2651
+ document_id: components["schemas"]["DocumentId"];
2652
+ document_status: components["schemas"]["DocumentStatus"];
2653
+ signature_id: components["schemas"]["SignatureId"];
2654
+ signed_at: string;
2655
+ };
2656
+ /** Format: uuid */
2657
+ SignatureId: string;
2658
+ SignatureSummary: {
2659
+ signature_id: components["schemas"]["SignatureId"];
2660
+ signed_at: string;
2661
+ signer_name: string;
2662
+ signer_role: string;
2663
+ };
2664
+ SignerTokenResponse: {
2665
+ expires_at: string;
2666
+ obligation_id: components["schemas"]["ObligationId"];
2667
+ token: string;
2668
+ };
2669
+ /** @description Contract details included in signing resolve response. */
2670
+ SigningContractDetails: {
2671
+ counterparty_name: string;
2672
+ effective_date: string;
2673
+ parameters: unknown;
2674
+ rendered_text?: string | null;
2675
+ template_label?: string | null;
2676
+ template_type: string;
2677
+ };
2678
+ SigningLinkResponse: {
2679
+ document_id: components["schemas"]["DocumentId"];
2680
+ signing_url: string;
2681
+ token: string;
2682
+ };
2683
+ /** @description Response for the public resolve endpoint. */
2684
+ SigningResolveResponse: {
2685
+ contract?: null | components["schemas"]["SigningContractDetails"];
2686
+ document_id: components["schemas"]["DocumentId"];
2687
+ document_status: string;
2688
+ document_title: string;
2689
+ entity_id: components["schemas"]["EntityId"];
2690
+ /** @description Entity legal name for display. */
2691
+ entity_name?: string | null;
2692
+ /** @description Public PDF preview URL for the signing page. */
2693
+ pdf_url?: string | null;
2694
+ /** @description Plain-text preview fallback when a PDF is unavailable. */
2695
+ preview_text?: string | null;
2696
+ signatures: components["schemas"]["SignatureSummary"][];
2697
+ };
2698
+ /** Format: uuid */
2699
+ SpendingLimitId: string;
2700
+ SpendingLimitResponse: {
2701
+ /** Format: int64 */
2702
+ amount_cents: number;
2703
+ category: string;
2704
+ created_at: string;
2705
+ entity_id: components["schemas"]["EntityId"];
2706
+ period: string;
2707
+ spending_limit_id: components["schemas"]["SpendingLimitId"];
2708
+ };
2709
+ StartStagedRoundRequest: {
2710
+ entity_id: components["schemas"]["EntityId"];
2711
+ issuer_legal_entity_id: components["schemas"]["LegalEntityId"];
2712
+ metadata?: Record<string, never>;
2713
+ name: string;
2714
+ /** Format: int64 */
2715
+ pre_money_cents?: number | null;
2716
+ /** Format: int64 */
2717
+ round_price_cents?: number | null;
2718
+ /** Format: int64 */
2719
+ target_raise_cents?: number | null;
2720
+ };
2721
+ StartWorkflowSignaturesRequest: {
2722
+ entity_id: components["schemas"]["EntityId"];
2723
+ };
2724
+ StockDetails: {
2725
+ /** Format: int64 */
2726
+ authorized_shares: number;
2727
+ /** Format: int64 */
2728
+ par_value_cents: number;
2729
+ share_class?: string;
2730
+ };
2731
+ StripeAccountResponse: {
2732
+ created_at: string;
2733
+ entity_id: components["schemas"]["EntityId"];
2734
+ status: string;
2735
+ stripe_account_id: string;
2736
+ };
2737
+ SubmitPaymentRequest: {
2738
+ /** Format: int64 */
2739
+ amount_cents: number;
2740
+ description: string;
2741
+ entity_id: components["schemas"]["EntityId"];
2742
+ payment_method?: components["schemas"]["PaymentMethod"];
2743
+ recipient: string;
2744
+ };
2745
+ SubmitTransferReviewRequest: {
2746
+ entity_id: components["schemas"]["EntityId"];
2747
+ };
2748
+ SubmitValuationForApprovalRequest: {
2749
+ entity_id: components["schemas"]["EntityId"];
2750
+ };
2751
+ SyncReferenceItem: {
2752
+ label: string;
2753
+ resource_id: string;
2754
+ };
2755
+ SyncReferencesRequest: {
2756
+ entity_id?: null | components["schemas"]["EntityId"];
2757
+ items: components["schemas"]["SyncReferenceItem"][];
2758
+ kind: components["schemas"]["ReferenceKind"];
2759
+ };
2760
+ SyncReferencesResponse: {
2761
+ references: components["schemas"]["ReferenceHandleRecord"][];
2762
+ };
2763
+ SystemHealth: {
2764
+ git_storage: string;
2765
+ status: string;
2766
+ /** Format: int64 */
2767
+ uptime_seconds: number;
2768
+ version: string;
2769
+ workspace_count: number;
2770
+ };
2771
+ /** Format: uuid */
2772
+ TaxFilingId: string;
2773
+ TaxFilingResponse: {
2774
+ created_at: string;
2775
+ document_id: components["schemas"]["DocumentId"];
2776
+ document_type: string;
2777
+ entity_id: components["schemas"]["EntityId"];
2778
+ filing_id: components["schemas"]["TaxFilingId"];
2779
+ status: components["schemas"]["TaxFilingStatus"];
2780
+ /** Format: int32 */
2781
+ tax_year: number;
2782
+ };
2783
+ /**
2784
+ * @description Status of a tax filing.
2785
+ * @enum {string}
2786
+ */
2787
+ TaxFilingStatus: "pending" | "filed" | "accepted" | "rejected";
2788
+ TokenExchangeRequest: {
2789
+ api_key: string;
2790
+ /** Format: int64 */
2791
+ ttl_seconds?: number;
2792
+ };
2793
+ TokenExchangeResponse: {
2794
+ access_token: string;
2795
+ /** Format: int64 */
2796
+ expires_in: number;
2797
+ token_type: string;
2798
+ };
2799
+ /**
2800
+ * @description HTTP tool that the agent can call.
2801
+ *
2802
+ * `name` and `url` are [`NonEmpty`] — deserialization of blank values
2803
+ * fails with a clear error rather than producing a broken tool.
2804
+ */
2805
+ ToolSpec: {
2806
+ body_schema?: Record<string, never>;
2807
+ description?: string | null;
2808
+ headers?: {
2809
+ [key: string]: string;
2810
+ };
2811
+ method?: components["schemas"]["HttpMethod"];
2812
+ name: components["schemas"]["NonEmpty"];
2813
+ parameters?: Record<string, never>;
2814
+ url: components["schemas"]["NonEmpty"];
2815
+ };
2816
+ TransactionPacketResponse: {
2817
+ created_at: string;
2818
+ entity_id: components["schemas"]["EntityId"];
2819
+ finalized_at?: string | null;
2820
+ intent_id: components["schemas"]["IntentId"];
2821
+ items: components["schemas"]["PacketItem"][];
2822
+ manifest_hash: string;
2823
+ packet_id: components["schemas"]["PacketId"];
2824
+ required_signers: string[];
2825
+ signatures: components["schemas"]["PacketSignatureResponse"][];
2826
+ status: components["schemas"]["TransactionPacketStatus"];
2827
+ workflow_id: string;
2828
+ workflow_type: components["schemas"]["WorkflowType"];
2829
+ };
2830
+ /** @enum {string} */
2831
+ TransactionPacketStatus: "drafted" | "ready_for_signature" | "fully_signed" | "executable" | "executed" | "failed";
2832
+ /** Format: uuid */
2833
+ TransferId: string;
2834
+ /**
2835
+ * @description Lifecycle status of a share transfer.
2836
+ * @enum {string}
2837
+ */
2838
+ TransferStatus: "draft" | "pending_bylaws_review" | "pending_rofr" | "pending_board_approval" | "approved" | "executed" | "denied" | "cancelled";
2839
+ /**
2840
+ * @description Type of share transfer.
2841
+ * @enum {string}
2842
+ */
2843
+ TransferType: "gift" | "trust_transfer" | "secondary_sale" | "estate" | "other";
2844
+ /** Format: uuid */
2845
+ TransferWorkflowId: string;
2846
+ TransferWorkflowResponse: {
2847
+ active_packet_id?: null | components["schemas"]["PacketId"];
2848
+ board_approval_meeting_id?: null | components["schemas"]["MeetingId"];
2849
+ board_approval_resolution_id?: null | components["schemas"]["ResolutionId"];
2850
+ created_at: string;
2851
+ execute_intent_id?: null | components["schemas"]["IntentId"];
2852
+ execution_status: string;
2853
+ generated_documents: string[];
2854
+ last_packet_hash?: string | null;
2855
+ prepare_intent_id: components["schemas"]["IntentId"];
2856
+ transfer_id: components["schemas"]["TransferId"];
2857
+ transfer_status: components["schemas"]["TransferStatus"];
2858
+ transfer_workflow_id: components["schemas"]["TransferWorkflowId"];
2859
+ updated_at: string;
2860
+ };
2861
+ /**
2862
+ * @description Rights granted to the transferee.
2863
+ * @enum {string}
2864
+ */
2865
+ TransfereeRights: "full_member" | "economic_only" | "limited";
2866
+ /** @enum {string} */
2867
+ Transport: "stdio" | "http";
2868
+ UpdateAgentRequest: {
2869
+ budget?: null | components["schemas"]["BudgetConfig"];
2870
+ channels?: components["schemas"]["ChannelConfig"][] | null;
2871
+ mcp_servers?: components["schemas"]["MCPServerSpec"][] | null;
2872
+ model?: string | null;
2873
+ name?: string | null;
2874
+ parent_agent_id?: null | components["schemas"]["AgentId"];
2875
+ sandbox?: null | components["schemas"]["SandboxConfig"];
2876
+ scopes?: components["schemas"]["Scope"][] | null;
2877
+ status?: null | components["schemas"]["AgentStatus"];
2878
+ system_prompt?: string | null;
2879
+ tools?: components["schemas"]["ToolSpec"][] | null;
2880
+ webhook_url?: string | null;
2881
+ };
2882
+ UpdateContactRequest: {
2883
+ cap_table_access?: null | components["schemas"]["CapTableAccess"];
2884
+ category?: null | components["schemas"]["ContactCategory"];
2885
+ email?: string | null;
2886
+ entity_id: components["schemas"]["EntityId"];
2887
+ mailing_address?: string | null;
2888
+ name?: string | null;
2889
+ notes?: string | null;
2890
+ phone?: string | null;
2891
+ };
2892
+ UpdateGovernanceProfileRequest: {
2893
+ adopted_by: string;
2894
+ /** Format: int32 */
2895
+ board_size?: number | null;
2896
+ company_address?: null | components["schemas"]["CompanyAddress"];
2897
+ directors?: components["schemas"]["DirectorInfo"][] | null;
2898
+ document_options?: null | components["schemas"]["DocumentOptions"];
2899
+ /** Format: date */
2900
+ effective_date: string;
2901
+ fiscal_year_end?: null | components["schemas"]["FiscalYearEnd"];
2902
+ founders?: components["schemas"]["FounderInfo"][] | null;
2903
+ incomplete_profile?: boolean | null;
2904
+ incorporator_address?: string | null;
2905
+ incorporator_name?: string | null;
2906
+ jurisdiction: string;
2907
+ /** Format: date */
2908
+ last_reviewed: string;
2909
+ legal_name: string;
2910
+ /** Format: date */
2911
+ next_mandatory_review: string;
2912
+ officers?: components["schemas"]["OfficerInfo"][] | null;
2913
+ principal_name?: string | null;
2914
+ principal_title?: string | null;
2915
+ registered_agent_address?: string | null;
2916
+ registered_agent_name?: string | null;
2917
+ stock_details?: null | components["schemas"]["StockDetails"];
2918
+ };
2919
+ UpdateNotificationPrefsRequest: {
2920
+ email_enabled?: boolean | null;
2921
+ entity_id: components["schemas"]["EntityId"];
2922
+ sms_enabled?: boolean | null;
2923
+ webhook_enabled?: boolean | null;
2924
+ };
2925
+ /** Format: uuid */
2926
+ ValuationId: string;
2927
+ /**
2928
+ * @description Methodology used for a valuation.
2929
+ * @enum {string}
2930
+ */
2931
+ ValuationMethodology: "income" | "market" | "asset" | "backsolve" | "hybrid" | "other";
2932
+ ValuationResponse: {
2933
+ agenda_item_id?: null | components["schemas"]["AgendaItemId"];
2934
+ board_approval_resolution_id?: null | components["schemas"]["ResolutionId"];
2935
+ created_at: string;
2936
+ /** Format: date */
2937
+ effective_date: string;
2938
+ /** Format: int64 */
2939
+ enterprise_value_cents?: number | null;
2940
+ entity_id: components["schemas"]["EntityId"];
2941
+ /** Format: date */
2942
+ expiration_date?: string | null;
2943
+ /** Format: int64 */
2944
+ fmv_per_share_cents?: number | null;
2945
+ /** Format: int64 */
2946
+ hurdle_amount_cents?: number | null;
2947
+ meeting_id?: null | components["schemas"]["MeetingId"];
2948
+ methodology: components["schemas"]["ValuationMethodology"];
2949
+ provider_contact_id?: null | components["schemas"]["ContactId"];
2950
+ report_document_id?: null | components["schemas"]["DocumentId"];
2951
+ status: components["schemas"]["ValuationStatus"];
2952
+ valuation_id: components["schemas"]["ValuationId"];
2953
+ valuation_type: components["schemas"]["ValuationType"];
2954
+ };
2955
+ /**
2956
+ * @description Lifecycle status of a valuation.
2957
+ * @enum {string}
2958
+ */
2959
+ ValuationStatus: "draft" | "pending_approval" | "approved" | "expired" | "superseded";
2960
+ /**
2961
+ * @description Type of 409A or equivalent valuation.
2962
+ * @enum {string}
2963
+ */
2964
+ ValuationType: "four_oh_nine_a" | "llc_profits_interest" | "fair_market_value" | "gift" | "estate" | "other";
2965
+ VerifyGovernanceAuditChainRequest: {
2966
+ entity_id: components["schemas"]["EntityId"];
2967
+ };
2968
+ /** @description Vesting schedule for founder shares. */
2969
+ VestingSchedule: {
2970
+ /** @description Acceleration type: "single_trigger", "double_trigger", or none. */
2971
+ acceleration?: string | null;
2972
+ /**
2973
+ * Format: int32
2974
+ * @description Cliff period in months (e.g. 12).
2975
+ */
2976
+ cliff_months: number;
2977
+ /**
2978
+ * Format: int32
2979
+ * @description Total vesting period in months (e.g. 48).
2980
+ */
2981
+ total_months: number;
2982
+ };
2983
+ /** Format: uuid */
2984
+ VoteId: string;
2985
+ VoteResponse: {
2986
+ agenda_item_id: components["schemas"]["AgendaItemId"];
2987
+ cast_at: string;
2988
+ signature_hash: string;
2989
+ vote_id: components["schemas"]["VoteId"];
2990
+ vote_value: components["schemas"]["VoteValue"];
2991
+ voter_id: components["schemas"]["ContactId"];
2992
+ /** Format: int32 */
2993
+ voting_power_applied: number;
2994
+ };
2995
+ /**
2996
+ * @description How a participant voted.
2997
+ * @enum {string}
2998
+ */
2999
+ VoteValue: "for" | "against" | "abstain" | "recusal";
3000
+ /**
3001
+ * @description How votes are counted.
3002
+ * @enum {string}
3003
+ */
3004
+ VotingMethod: "per_capita" | "per_unit";
3005
+ WorkItemActorRefRequest: {
3006
+ actor_id: string;
3007
+ actor_type: components["schemas"]["WorkItemActorTypeValue"];
3008
+ };
3009
+ WorkItemActorResponse: {
3010
+ actor_id: string;
3011
+ actor_type: components["schemas"]["WorkItemActorTypeValue"];
3012
+ label: string;
3013
+ };
3014
+ /** @enum {string} */
3015
+ WorkItemActorTypeValue: "contact" | "agent";
3016
+ /** Format: uuid */
3017
+ WorkItemId: string;
3018
+ WorkItemResponse: {
3019
+ asap: boolean;
3020
+ category: string;
3021
+ /** Format: int64 */
3022
+ claim_ttl_seconds?: number | null;
3023
+ claimed_at?: string | null;
3024
+ claimed_by?: string | null;
3025
+ claimed_by_actor?: null | components["schemas"]["WorkItemActorResponse"];
3026
+ completed_at?: string | null;
3027
+ completed_by?: string | null;
3028
+ completed_by_actor?: null | components["schemas"]["WorkItemActorResponse"];
3029
+ created_at: string;
3030
+ created_by?: string | null;
3031
+ created_by_actor?: null | components["schemas"]["WorkItemActorResponse"];
3032
+ /** Format: date */
3033
+ deadline?: string | null;
3034
+ description: string;
3035
+ effective_status: components["schemas"]["WorkItemStatus"];
3036
+ entity_id: components["schemas"]["EntityId"];
3037
+ metadata: unknown;
3038
+ result?: string | null;
3039
+ status: components["schemas"]["WorkItemStatus"];
3040
+ title: string;
3041
+ work_item_id: components["schemas"]["WorkItemId"];
3042
+ };
3043
+ /** @enum {string} */
3044
+ WorkItemStatus: "open" | "claimed" | "completed" | "cancelled";
3045
+ WorkerWorkspaceQuery: {
3046
+ workspace_id: components["schemas"]["WorkspaceId"];
3047
+ };
3048
+ WorkflowStatusResponse: {
3049
+ active_packet_id?: null | components["schemas"]["PacketId"];
3050
+ execution_status: string;
3051
+ fundraising_workflow?: null | components["schemas"]["FundraisingWorkflowResponse"];
3052
+ packet?: null | components["schemas"]["TransactionPacketResponse"];
3053
+ transfer_workflow?: null | components["schemas"]["TransferWorkflowResponse"];
3054
+ workflow_id: string;
3055
+ workflow_type: components["schemas"]["WorkflowType"];
3056
+ };
3057
+ /** @enum {string} */
3058
+ WorkflowType: "transfer" | "fundraising";
3059
+ WorkspaceClaimRequest: {
3060
+ claim_token: string;
3061
+ };
3062
+ WorkspaceClaimResponse: {
3063
+ claimed: boolean;
3064
+ workspace_id: components["schemas"]["WorkspaceId"];
3065
+ };
3066
+ WorkspaceContactSummary: {
3067
+ contact_id: string;
3068
+ entity_id: string;
3069
+ };
3070
+ WorkspaceEntitySummary: {
3071
+ entity_id: components["schemas"]["EntityId"];
3072
+ };
3073
+ /** Format: uuid */
3074
+ WorkspaceId: string;
3075
+ WorkspaceLinkRequest: {
3076
+ external_id: string;
3077
+ provider: string;
3078
+ };
3079
+ WorkspaceLinkResponse: {
3080
+ linked: boolean;
3081
+ provider: string;
3082
+ workspace_id: components["schemas"]["WorkspaceId"];
3083
+ };
3084
+ WorkspaceStatusResponse: {
3085
+ entity_count: number;
3086
+ name: string;
3087
+ status: string;
3088
+ workspace_id: components["schemas"]["WorkspaceId"];
3089
+ };
3090
+ WorkspaceSummary: {
3091
+ entity_count: number;
3092
+ name: string;
3093
+ workspace_id: components["schemas"]["WorkspaceId"];
3094
+ };
3095
+ WriteGovernanceAuditCheckpointRequest: {
3096
+ entity_id: components["schemas"]["EntityId"];
3097
+ };
3098
+ WrittenConsentRequest: {
3099
+ body_id: components["schemas"]["GovernanceBodyId"];
3100
+ description: string;
3101
+ entity_id: components["schemas"]["EntityId"];
3102
+ title: string;
3103
+ };
3104
+ WrittenConsentResponse: {
3105
+ body_id: components["schemas"]["GovernanceBodyId"];
3106
+ consent_type: string;
3107
+ created_at: string;
3108
+ meeting_id: components["schemas"]["MeetingId"];
3109
+ status: components["schemas"]["MeetingStatus"];
3110
+ title: string;
3111
+ };
3112
+ };
3113
+ responses: never;
3114
+ parameters: never;
3115
+ requestBodies: never;
3116
+ headers: never;
3117
+ pathItems: never;
3118
+ };
3119
+
3120
+ /**
3121
+ * Convenience re-exports of key generated OpenAPI schema types.
3122
+ * Regenerate source with: npm run generate:types
3123
+ */
3124
+
3125
+ type WorkspaceStatusResponse = components["schemas"]["WorkspaceStatusResponse"];
3126
+ type FormationResponse = components["schemas"]["FormationResponse"];
3127
+ type FormationWithCapTableResponse = components["schemas"]["FormationWithCapTableResponse"];
3128
+ type PendingFormationResponse = components["schemas"]["PendingFormationResponse"];
3129
+ type AddFounderResponse = components["schemas"]["AddFounderResponse"];
3130
+ type GovernanceBodyResponse = components["schemas"]["GovernanceBodyResponse"];
3131
+ type GovernanceSeatResponse = components["schemas"]["GovernanceSeatResponse"];
3132
+ type MeetingResponse = components["schemas"]["MeetingResponse"];
3133
+ type ResolutionResponse = components["schemas"]["ResolutionResponse"];
3134
+ type AgendaItemResponse = components["schemas"]["AgendaItemResponse"];
3135
+ type VoteResponse = components["schemas"]["VoteResponse"];
3136
+ type WrittenConsentResponse = components["schemas"]["WrittenConsentResponse"];
3137
+ type ObligationResponse = components["schemas"]["ObligationResponse"];
3138
+ type DocumentResponse = components["schemas"]["DocumentResponse"];
3139
+ type DigestSummary = components["schemas"]["DigestSummary"];
3140
+ type DigestTriggerResponse = components["schemas"]["DigestTriggerResponse"];
3141
+ interface NextStepItem {
3142
+ category: string;
3143
+ title: string;
3144
+ description?: string;
3145
+ command: string;
3146
+ urgency: string;
3147
+ }
3148
+ interface NextStepsSummary {
3149
+ critical: number;
3150
+ high: number;
3151
+ medium: number;
3152
+ low: number;
3153
+ }
3154
+ interface NextStepsResponse {
3155
+ top: NextStepItem | null;
3156
+ backlog: NextStepItem[];
3157
+ summary: NextStepsSummary;
3158
+ }
3159
+
3160
+ declare class CorpAPIClient {
3161
+ readonly apiUrl: string;
3162
+ readonly apiKey: string;
3163
+ readonly workspaceId: string;
3164
+ constructor(apiUrl: string, apiKey: string, workspaceId: string);
3165
+ private headers;
3166
+ private request;
3167
+ private throwIfError;
3168
+ private get;
3169
+ private post;
3170
+ private postWithParams;
3171
+ private patch;
3172
+ private del;
3173
+ /** Public generic GET for declarative/registry-driven commands. */
3174
+ fetchJSON(path: string, params?: Record<string, string>): Promise<unknown>;
3175
+ getStatus(): Promise<WorkspaceStatusResponse>;
3176
+ getObligations(tier?: string): Promise<ApiRecord>;
3177
+ listDigests(): Promise<DigestSummary[]>;
3178
+ triggerDigest(): Promise<DigestTriggerResponse>;
3179
+ getDigest(key: string): Promise<DigestSummary>;
3180
+ syncReferences(kind: string, items: Array<{
3181
+ resource_id: string;
3182
+ label: string;
3183
+ }>, entityId?: string): Promise<{
3184
+ references: ApiRecord[];
3185
+ }>;
3186
+ listEntities(): Promise<ApiRecord[]>;
3187
+ listContacts(entityId: string): Promise<ApiRecord[]>;
3188
+ getContact(id: string, entityId: string): Promise<ApiRecord>;
3189
+ getContactProfile(id: string, entityId: string): Promise<ApiRecord>;
3190
+ createContact(data: ApiRecord): Promise<ApiRecord>;
3191
+ updateContact(id: string, data: ApiRecord): Promise<ApiRecord>;
3192
+ getNotificationPrefs(contactId: string): Promise<ApiRecord>;
3193
+ updateNotificationPrefs(contactId: string, prefs: ApiRecord): Promise<ApiRecord>;
3194
+ getCapTable(entityId: string): Promise<ApiRecord>;
3195
+ getSafeNotes(entityId: string): Promise<ApiRecord[]>;
3196
+ createSafeNote(data: ApiRecord): Promise<ApiRecord>;
3197
+ listShareTransfers(entityId: string): Promise<ApiRecord[]>;
3198
+ getShareTransfers(entityId: string): Promise<ApiRecord[]>;
3199
+ getValuations(entityId: string): Promise<ApiRecord[]>;
3200
+ getCurrent409a(entityId: string): Promise<ApiRecord>;
3201
+ createValuation(data: ApiRecord): Promise<ApiRecord>;
3202
+ createInstrument(data: ApiRecord): Promise<ApiRecord>;
3203
+ submitValuationForApproval(valuationId: string, entityId: string): Promise<ApiRecord>;
3204
+ approveValuation(valuationId: string, entityId: string, resolutionId?: string): Promise<ApiRecord>;
3205
+ transferShares(data: ApiRecord): Promise<ApiRecord>;
3206
+ calculateDistribution(data: ApiRecord): Promise<ApiRecord>;
3207
+ createEquityRound(data: CreateEquityRoundRequest): Promise<EquityRoundResponse>;
3208
+ applyEquityRoundTerms(roundId: string, data: ApplyEquityRoundTermsRequest): Promise<ApiRecord>;
3209
+ boardApproveEquityRound(roundId: string, data: BoardApproveEquityRoundRequest): Promise<EquityRoundResponse>;
3210
+ acceptEquityRound(roundId: string, data: AcceptEquityRoundRequest): Promise<EquityRoundResponse>;
3211
+ previewRoundConversion(data: PreviewRoundConversionRequest): Promise<ApiRecord>;
3212
+ executeRoundConversion(data: ExecuteRoundConversionRequest): Promise<ApiRecord>;
3213
+ listEquityRounds(entityId: string): Promise<ApiRecord[]>;
3214
+ startEquityRound(data: ApiRecord): Promise<ApiRecord>;
3215
+ addRoundSecurity(roundId: string, data: ApiRecord): Promise<ApiRecord>;
3216
+ issueRound(roundId: string, data: ApiRecord): Promise<ApiRecord>;
3217
+ createExecutionIntent(data: CreateExecutionIntentRequest): Promise<IntentResponse>;
3218
+ evaluateIntent(intentId: string, entityId: string): Promise<ApiRecord>;
3219
+ authorizeIntent(intentId: string, entityId: string): Promise<ApiRecord>;
3220
+ listGovernanceBodies(entityId: string): Promise<GovernanceBodyResponse[]>;
3221
+ getGovernanceSeats(bodyId: string, entityId: string): Promise<GovernanceSeatResponse[]>;
3222
+ listMeetings(bodyId: string, entityId: string): Promise<MeetingResponse[]>;
3223
+ getMeetingResolutions(meetingId: string, entityId: string): Promise<ResolutionResponse[]>;
3224
+ scheduleMeeting(data: ApiRecord): Promise<MeetingResponse>;
3225
+ conveneMeeting(meetingId: string, entityId: string, data: ApiRecord): Promise<MeetingResponse>;
3226
+ castVote(entityId: string, meetingId: string, itemId: string, data: ApiRecord): Promise<VoteResponse>;
3227
+ sendNotice(meetingId: string, entityId: string): Promise<MeetingResponse>;
3228
+ adjournMeeting(meetingId: string, entityId: string): Promise<MeetingResponse>;
3229
+ reopenMeeting(meetingId: string, entityId: string): Promise<MeetingResponse>;
3230
+ cancelMeeting(meetingId: string, entityId: string): Promise<MeetingResponse>;
3231
+ finalizeAgendaItem(meetingId: string, itemId: string, data: ApiRecord): Promise<AgendaItemResponse>;
3232
+ computeResolution(meetingId: string, itemId: string, entityId: string, data: ApiRecord): Promise<ResolutionResponse>;
3233
+ attachResolutionDocument(meetingId: string, resolutionId: string, data: ApiRecord): Promise<ResolutionResponse>;
3234
+ writtenConsent(data: ApiRecord): Promise<WrittenConsentResponse>;
3235
+ getGovernanceMode(entityId: string): Promise<ApiRecord>;
3236
+ setGovernanceMode(data: ApiRecord): Promise<ApiRecord>;
3237
+ resignSeat(seatId: string, entityId: string): Promise<ApiRecord>;
3238
+ createGovernanceIncident(data: ApiRecord): Promise<ApiRecord>;
3239
+ listGovernanceIncidents(entityId: string): Promise<ApiRecord[]>;
3240
+ resolveGovernanceIncident(incidentId: string, data: ApiRecord): Promise<ApiRecord>;
3241
+ getGovernanceProfile(entityId: string): Promise<ApiRecord>;
3242
+ listAgendaItems(meetingId: string, entityId: string): Promise<AgendaItemResponse[]>;
3243
+ listVotes(meetingId: string, itemId: string, entityId: string): Promise<VoteResponse[]>;
3244
+ getEntityDocuments(entityId: string): Promise<DocumentResponse[]>;
3245
+ getDocument(documentId: string, entityId: string): Promise<DocumentResponse>;
3246
+ signDocument(documentId: string, entityId: string, data: ApiRecord): Promise<ApiRecord>;
3247
+ generateContract(data: ApiRecord): Promise<ApiRecord>;
3248
+ getSigningLink(documentId: string, entityId: string): Promise<ApiRecord>;
3249
+ validatePreviewPdf(entityId: string, documentId: string): Promise<ApiRecord>;
3250
+ getPreviewPdfUrl(entityId: string, documentId: string): string;
3251
+ listInvoices(entityId: string): Promise<ApiRecord[]>;
3252
+ listBankAccounts(entityId: string): Promise<ApiRecord[]>;
3253
+ listPayments(entityId: string): Promise<ApiRecord[]>;
3254
+ listPayrollRuns(entityId: string): Promise<ApiRecord[]>;
3255
+ listDistributions(entityId: string): Promise<ApiRecord[]>;
3256
+ listReconciliations(entityId: string): Promise<ApiRecord[]>;
3257
+ createInvoice(data: ApiRecord): Promise<ApiRecord>;
3258
+ runPayroll(data: ApiRecord): Promise<ApiRecord>;
3259
+ submitPayment(data: ApiRecord): Promise<ApiRecord>;
3260
+ openBankAccount(data: ApiRecord): Promise<ApiRecord>;
3261
+ activateBankAccount(bankAccountId: string, entityId: string): Promise<ApiRecord>;
3262
+ classifyContractor(data: ApiRecord): Promise<ApiRecord>;
3263
+ reconcileLedger(data: ApiRecord): Promise<ApiRecord>;
3264
+ getFinancialStatements(entityId: string, params?: Record<string, string>): Promise<ApiRecord>;
3265
+ getDilutionPreview(entityId: string, roundId: string): Promise<ApiRecord>;
3266
+ getControlMap(entityId: string, rootEntityId: string): Promise<ApiRecord>;
3267
+ listTaxFilings(entityId: string): Promise<ApiRecord[]>;
3268
+ listDeadlines(entityId: string): Promise<ApiRecord[]>;
3269
+ listContractorClassifications(entityId: string): Promise<ApiRecord[]>;
3270
+ fileTaxDocument(data: ApiRecord): Promise<ApiRecord>;
3271
+ trackDeadline(data: ApiRecord): Promise<ApiRecord>;
3272
+ getBillingStatus(): Promise<ApiRecord>;
3273
+ getBillingPlans(): Promise<ApiRecord[]>;
3274
+ createBillingPortal(): Promise<ApiRecord>;
3275
+ createBillingCheckout(planId: string, entityId?: string): Promise<ApiRecord>;
3276
+ getFormation(id: string): Promise<FormationResponse>;
3277
+ getFormationDocuments(id: string): Promise<DocumentResponse[]>;
3278
+ createFormation(data: ApiRecord): Promise<FormationResponse>;
3279
+ createFormationWithCapTable(data: ApiRecord): Promise<FormationWithCapTableResponse>;
3280
+ createPendingEntity(data: ApiRecord): Promise<PendingFormationResponse>;
3281
+ addFounder(entityId: string, data: ApiRecord): Promise<AddFounderResponse>;
3282
+ finalizeFormation(entityId: string, data?: ApiRecord): Promise<FormationWithCapTableResponse>;
3283
+ markFormationDocumentsSigned(entityId: string): Promise<ApiRecord>;
3284
+ getFormationGates(entityId: string): Promise<ApiRecord>;
3285
+ recordFilingAttestation(entityId: string, data: ApiRecord): Promise<ApiRecord>;
3286
+ addRegisteredAgentConsentEvidence(entityId: string, data: ApiRecord): Promise<ApiRecord>;
3287
+ submitFiling(entityId: string): Promise<ApiRecord>;
3288
+ confirmFiling(entityId: string, data: ApiRecord): Promise<ApiRecord>;
3289
+ applyEin(entityId: string): Promise<ApiRecord>;
3290
+ confirmEin(entityId: string, data: ApiRecord): Promise<ApiRecord>;
3291
+ getHumanObligations(): Promise<ObligationResponse[]>;
3292
+ getSignerToken(obligationId: string): Promise<ApiRecord>;
3293
+ getEntityNextSteps(entityId: string): Promise<NextStepsResponse>;
3294
+ getWorkspaceNextSteps(): Promise<NextStepsResponse>;
3295
+ seedDemo(data: ApiRecord): Promise<ApiRecord>;
3296
+ convertEntity(entityId: string, data: ApiRecord): Promise<ApiRecord>;
3297
+ dissolveEntity(entityId: string, data: ApiRecord): Promise<ApiRecord>;
3298
+ listAgents(): Promise<ApiRecord[]>;
3299
+ getAgent(id: string): Promise<ApiRecord>;
3300
+ createAgent(data: ApiRecord): Promise<ApiRecord>;
3301
+ updateAgent(id: string, data: ApiRecord): Promise<ApiRecord>;
3302
+ deleteAgent(id: string): Promise<ApiRecord>;
3303
+ sendAgentMessage(id: string, message: string): Promise<ApiRecord>;
3304
+ addAgentSkill(id: string, data: ApiRecord): Promise<ApiRecord>;
3305
+ listSupportedModels(): Promise<ApiRecord[]>;
3306
+ getAgentExecution(agentId: string, executionId: string): Promise<ApiRecord>;
3307
+ getAgentExecutionResult(agentId: string, executionId: string): Promise<ApiRecord>;
3308
+ getAgentExecutionLogs(agentId: string, executionId: string): Promise<ApiRecord>;
3309
+ killAgentExecution(agentId: string, executionId: string): Promise<ApiRecord>;
3310
+ createGovernanceBody(data: ApiRecord): Promise<ApiRecord>;
3311
+ createGovernanceSeat(bodyId: string, entityId: string, data: ApiRecord): Promise<ApiRecord>;
3312
+ listWorkItems(entityId: string, params?: Record<string, string>): Promise<ApiRecord[]>;
3313
+ getWorkItem(entityId: string, workItemId: string): Promise<ApiRecord>;
3314
+ createWorkItem(entityId: string, data: ApiRecord): Promise<ApiRecord>;
3315
+ claimWorkItem(entityId: string, workItemId: string, data: ApiRecord): Promise<ApiRecord>;
3316
+ completeWorkItem(entityId: string, workItemId: string, data: ApiRecord): Promise<ApiRecord>;
3317
+ releaseWorkItem(entityId: string, workItemId: string): Promise<ApiRecord>;
3318
+ cancelWorkItem(entityId: string, workItemId: string): Promise<ApiRecord>;
3319
+ listApiKeys(): Promise<ApiRecord[]>;
3320
+ createApiKey(data: ApiRecord): Promise<ApiRecord>;
3321
+ revokeApiKey(keyId: string): Promise<void>;
3322
+ rotateApiKey(keyId: string): Promise<ApiRecord>;
3323
+ assignObligation(obligationId: string, contactId: string): Promise<ApiRecord>;
3324
+ getConfig(): Promise<ApiRecord>;
3325
+ listServiceCatalog(): Promise<ApiRecord[]>;
3326
+ createServiceRequest(data: ApiRecord): Promise<ApiRecord>;
3327
+ getServiceRequest(id: string, entityId: string): Promise<ApiRecord>;
3328
+ listServiceRequests(entityId: string): Promise<ApiRecord[]>;
3329
+ beginServiceCheckout(id: string, data: ApiRecord): Promise<ApiRecord>;
3330
+ fulfillServiceRequest(id: string, data: ApiRecord): Promise<ApiRecord>;
3331
+ cancelServiceRequest(id: string, data: ApiRecord): Promise<ApiRecord>;
3332
+ submitFeedback(message: string, category?: string, email?: string): Promise<{
3333
+ feedback_id: string;
3334
+ submitted_at: string;
3335
+ }>;
3336
+ createLink(externalId: string, provider: string): Promise<ApiRecord>;
3337
+ }
3338
+
3339
+ /**
3340
+ * Browser-compatible reference matching and tracking core.
3341
+ *
3342
+ * Pure functions for matching, ranking, and describing resource references,
3343
+ * plus the pluggable ReferenceTracker class that works in any JS runtime.
3344
+ */
3345
+ type ResourceKind = "entity" | "contact" | "share_transfer" | "invoice" | "bank_account" | "payment" | "payroll_run" | "distribution" | "reconciliation" | "tax_filing" | "deadline" | "classification" | "body" | "meeting" | "seat" | "agenda_item" | "resolution" | "document" | "work_item" | "agent" | "valuation" | "safe_note" | "instrument" | "share_class" | "round" | "service_request";
3346
+ type MatchRecord = {
3347
+ id: string;
3348
+ label: string;
3349
+ tokens: Set<string>;
3350
+ raw: Record<string, unknown>;
3351
+ };
3352
+ type ReferenceMatch = {
3353
+ kind: ResourceKind;
3354
+ id: string;
3355
+ short_id: string;
3356
+ label: string;
3357
+ alias?: string;
3358
+ raw: Record<string, unknown>;
3359
+ };
3360
+ declare const RESOURCE_KINDS: readonly ["entity", "contact", "share_transfer", "invoice", "bank_account", "payment", "payroll_run", "distribution", "reconciliation", "tax_filing", "deadline", "classification", "body", "meeting", "seat", "agenda_item", "resolution", "document", "work_item", "agent", "valuation", "safe_note", "instrument", "share_class", "round", "service_request"];
3361
+ declare function shortId(value: string | undefined): string;
3362
+ declare function slugify(value: string | undefined): string;
3363
+ declare function isValidResourceKind(kind: string): kind is ResourceKind;
3364
+ declare function describeReferenceRecord(kind: ResourceKind, record: Record<string, unknown>): MatchRecord | null;
3365
+ declare function getReferenceId(kind: ResourceKind, record: Record<string, unknown>): string | undefined;
3366
+ declare function getReferenceLabel(kind: ResourceKind, record: Record<string, unknown>): string | undefined;
3367
+ declare function getReferenceAlias(kind: ResourceKind, record: Record<string, unknown>): string | undefined;
3368
+ declare function matchRank(record: MatchRecord, normalizedQuery: string): number;
3369
+ interface ReferenceStorage {
3370
+ getLastReference(kind: ResourceKind, entityId?: string): string | undefined;
3371
+ setLastReference(kind: ResourceKind, id: string, entityId?: string): void;
3372
+ getActiveEntityId(): string | undefined;
3373
+ }
3374
+ declare class ReferenceTracker {
3375
+ private storage;
3376
+ constructor(storage: ReferenceStorage);
3377
+ /** Remember a reference for @last reuse. */
3378
+ remember(kind: ResourceKind, id: string, entityId?: string): void;
3379
+ /** Resolve @last / @last:kind references. */
3380
+ resolveLastReference(ref: string, kind: ResourceKind, entityId?: string): {
3381
+ isLast: boolean;
3382
+ kind?: ResourceKind;
3383
+ id?: string;
3384
+ };
3385
+ /** Find the single best match for a query against a list of records. */
3386
+ findBestMatch(kind: ResourceKind, query: string, records: Record<string, unknown>[]): ReferenceMatch | null;
3387
+ /** Find all matching records ranked by relevance. */
3388
+ findMatches(kind: ResourceKind, query: string, records: Record<string, unknown>[]): ReferenceMatch[];
3389
+ }
3390
+
3391
+ /**
3392
+ * A single step executed inside a multi-step workflow.
3393
+ */
3394
+ interface WorkflowStep {
3395
+ name: string;
3396
+ status: "ok" | "skipped" | "failed";
3397
+ data?: Record<string, unknown>;
3398
+ detail?: string;
3399
+ }
3400
+ /**
3401
+ * Structured result returned by every workflow function.
3402
+ * The caller (CLI, web, tests) decides how to render it.
3403
+ */
3404
+ interface WorkflowResult {
3405
+ success: boolean;
3406
+ data?: Record<string, unknown>;
3407
+ error?: string;
3408
+ steps: WorkflowStep[];
3409
+ }
3410
+
3411
+ interface IssueEquityArgs {
3412
+ entityId: string;
3413
+ grantType: string;
3414
+ shares: number;
3415
+ recipientName: string;
3416
+ recipientEmail?: string;
3417
+ /** Pre-resolved instrument ID (already resolved by the caller). */
3418
+ instrumentId?: string;
3419
+ /** Pre-resolved meeting ID. */
3420
+ meetingId?: string;
3421
+ /** Pre-resolved resolution ID. */
3422
+ resolutionId?: string;
3423
+ }
3424
+ declare function issueEquity(client: CorpAPIClient, args: IssueEquityArgs): Promise<WorkflowResult>;
3425
+
3426
+ interface IssueSafeArgs {
3427
+ entityId: string;
3428
+ investorName: string;
3429
+ amountCents: number;
3430
+ valuationCapCents: number;
3431
+ safeType?: string;
3432
+ email?: string;
3433
+ /** Pre-resolved meeting ID. */
3434
+ meetingId?: string;
3435
+ /** Pre-resolved resolution ID. */
3436
+ resolutionId?: string;
3437
+ }
3438
+ declare function issueSafe(client: CorpAPIClient, args: IssueSafeArgs): Promise<WorkflowResult>;
3439
+
3440
+ interface WrittenConsentArgs {
3441
+ entityId: string;
3442
+ /** Pre-resolved governance body ID. */
3443
+ bodyId: string;
3444
+ title: string;
3445
+ description: string;
3446
+ }
3447
+ declare function writtenConsent(client: CorpAPIClient, args: WrittenConsentArgs): Promise<WorkflowResult>;
3448
+
3449
+ type CapTableInstrument = {
3450
+ instrument_id: string;
3451
+ kind: string;
3452
+ symbol: string;
3453
+ status?: string;
3454
+ };
3455
+
3456
+ declare function normalizedGrantType(grantType: string): string;
3457
+ declare function expectedInstrumentKinds(grantType: string): string[];
3458
+ declare function grantRequiresCurrent409a(grantType: string, instrumentKind?: string): boolean;
3459
+ declare function entityHasActiveBoard(client: CorpAPIClient, entityId: string): Promise<boolean>;
3460
+ declare function ensureIssuancePreflight(client: CorpAPIClient, entityId: string, grantType: string, instrument?: CapTableInstrument, meetingId?: string, resolutionId?: string): Promise<void>;
3461
+
3462
+ export { type ApiRecord, CorpAPIClient, type MatchRecord, type NextStepItem, type NextStepsResponse, type NextStepsSummary, RESOURCE_KINDS, type ReferenceMatch, type ReferenceStorage, ReferenceTracker, type ResourceKind, type WorkflowResult, type WorkflowStep, describeReferenceRecord, ensureIssuancePreflight, entityHasActiveBoard, expectedInstrumentKinds, getReferenceAlias, getReferenceId, getReferenceLabel, grantRequiresCurrent409a, isValidResourceKind, issueEquity, issueSafe, matchRank, normalizedGrantType, shortId, slugify, writtenConsent };