@appsolutely-io/waypoint 0.0.0-stage → 0.1.1-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +260 -2
- package/dist/block-reply-DN4RiLL0.d.cts +169 -0
- package/dist/block-reply-Dtof9ild.d.ts +169 -0
- package/dist/blocks-25YOJ5SS.cjs +1 -0
- package/dist/blocks-UJ7GUJHD.js +1 -0
- package/dist/chunk-3KV7TDDR.cjs +3 -0
- package/dist/chunk-4BWV3SEL.cjs +1 -0
- package/dist/chunk-4ZGW4HM4.cjs +1 -0
- package/dist/chunk-5TBO732O.js +1 -0
- package/dist/chunk-6OZSKCPT.cjs +1 -0
- package/dist/chunk-C3VS33WJ.js +1 -0
- package/dist/chunk-D2EGPBCX.cjs +1 -0
- package/dist/chunk-FBADWFRR.cjs +1 -0
- package/dist/chunk-FQSWQLRW.js +1 -0
- package/dist/chunk-GT6PI4CT.cjs +1 -0
- package/dist/chunk-II26UWZM.cjs +1 -0
- package/dist/chunk-JFMVVGGB.js +1 -0
- package/dist/chunk-K73VV7KA.js +1 -0
- package/dist/chunk-L4PFFRDE.js +3 -0
- package/dist/chunk-LLPGVQUT.cjs +1 -0
- package/dist/chunk-M3UENQ6L.cjs +1 -0
- package/dist/chunk-M63QOANE.js +1 -0
- package/dist/chunk-MEKDQDSV.js +1 -0
- package/dist/chunk-OEPKPDLD.js +1 -0
- package/dist/chunk-OWT55N6J.js +3 -0
- package/dist/chunk-PFR2J5BV.js +1 -0
- package/dist/chunk-Q6BD2YL3.cjs +1 -0
- package/dist/chunk-Q7BULGQG.cjs +1 -0
- package/dist/chunk-QS3MKZOY.cjs +3 -0
- package/dist/chunk-RHBDQGD4.js +1 -0
- package/dist/chunk-RZZDQWC2.js +1 -0
- package/dist/chunk-S73WZWDP.js +1 -0
- package/dist/chunk-SD2KAIVE.js +1 -0
- package/dist/chunk-T5XF2R74.js +1 -0
- package/dist/chunk-TCFCSGQ3.js +1 -0
- package/dist/chunk-TGL3DR2K.js +1 -0
- package/dist/chunk-TODYQ3SG.cjs +1 -0
- package/dist/chunk-TVSQHTK2.cjs +1 -0
- package/dist/chunk-UYR3UEIW.cjs +1 -0
- package/dist/chunk-VGGJGRNK.cjs +1 -0
- package/dist/chunk-W6Y7H56X.js +1 -0
- package/dist/chunk-XSHOLIC7.cjs +1 -0
- package/dist/chunk-XWDB2LS3.cjs +1 -0
- package/dist/cli.js +3 -0
- package/dist/confirmation-view-CICNJJIO.js +1 -0
- package/dist/confirmation-view-OMWHUYVC.cjs +1 -0
- package/dist/conformance.cjs +1 -0
- package/dist/conformance.d.cts +10 -0
- package/dist/conformance.d.ts +10 -0
- package/dist/conformance.js +1 -0
- package/dist/flow-parser.cjs +1 -0
- package/dist/flow-parser.d.cts +3 -0
- package/dist/flow-parser.d.ts +3 -0
- package/dist/flow-parser.js +1 -0
- package/dist/flows-panel-AIULKYOS.cjs +1 -0
- package/dist/flows-panel-YEJ36RTY.js +1 -0
- package/dist/form-extras-QYE32TUY.cjs +1 -0
- package/dist/form-extras-SBBOMJS2.js +1 -0
- package/dist/form-fill-C32AHxSr.d.cts +653 -0
- package/dist/form-fill-Dp3ut1_Y.d.ts +653 -0
- package/dist/form-session.cjs +1 -0
- package/dist/form-session.d.cts +7 -0
- package/dist/form-session.d.ts +7 -0
- package/dist/form-session.js +1 -0
- package/dist/frame-decoder.cjs +3 -0
- package/dist/frame-decoder.d.cts +5 -0
- package/dist/frame-decoder.d.ts +5 -0
- package/dist/frame-decoder.js +3 -0
- package/dist/generated-C9tbjwK0.d.cts +797 -0
- package/dist/generated-C9tbjwK0.d.ts +797 -0
- package/dist/hooks/index.cjs +1 -0
- package/dist/hooks/index.d.cts +48 -0
- package/dist/hooks/index.d.ts +48 -0
- package/dist/hooks/index.js +1 -0
- package/dist/i18n-DPNfYTMG.d.cts +148 -0
- package/dist/i18n-DPNfYTMG.d.ts +148 -0
- package/dist/index-B5idIFTx.d.cts +34 -0
- package/dist/index-DPzoKXCK.d.ts +34 -0
- package/dist/index.cjs +3 -0
- package/dist/index.d.cts +38 -0
- package/dist/index.d.ts +38 -0
- package/dist/index.js +3 -0
- package/dist/intent-BQPPows1.d.cts +154 -0
- package/dist/intent-BuvqEU3Q.d.ts +154 -0
- package/dist/intent.cjs +1 -0
- package/dist/intent.d.cts +2 -0
- package/dist/intent.d.ts +2 -0
- package/dist/intent.js +1 -0
- package/dist/markdown-BSRKJFFE.cjs +17 -0
- package/dist/markdown-ETLB66BK.js +17 -0
- package/dist/message-actions-3HGE6VTS.js +1 -0
- package/dist/message-actions-F6SPLTT7.cjs +1 -0
- package/dist/messages/en/index.cjs +1 -0
- package/dist/messages/en/index.d.cts +3 -0
- package/dist/messages/en/index.d.ts +3 -0
- package/dist/messages/en/index.js +1 -0
- package/dist/messages/index.cjs +1 -0
- package/dist/messages/index.d.cts +14 -0
- package/dist/messages/index.d.ts +14 -0
- package/dist/messages/index.js +1 -0
- package/dist/messages/zh-Hans/index.cjs +1 -0
- package/dist/messages/zh-Hans/index.d.cts +3 -0
- package/dist/messages/zh-Hans/index.d.ts +3 -0
- package/dist/messages/zh-Hans/index.js +1 -0
- package/dist/on-demand.cjs +1 -0
- package/dist/on-demand.d.cts +56 -0
- package/dist/on-demand.d.ts +56 -0
- package/dist/on-demand.js +1 -0
- package/dist/problem-messages-THONMXFZ.cjs +1 -0
- package/dist/problem-messages-Z5QGO6RE.js +1 -0
- package/dist/react/index.cjs +1 -0
- package/dist/react/index.d.cts +419 -0
- package/dist/react/index.d.ts +419 -0
- package/dist/react/index.js +1 -0
- package/dist/reads-Bk84x_rt.d.ts +38 -0
- package/dist/reads-DlpCt8dE.d.cts +38 -0
- package/dist/recovery-panel-OWY2CWOH.cjs +3 -0
- package/dist/recovery-panel-VOKVDDZD.js +3 -0
- package/dist/reply-controls-5CWIAKIG.js +1 -0
- package/dist/reply-controls-CPWB4VBK.cjs +1 -0
- package/dist/run-XBABOEXK.js +1 -0
- package/dist/schema.json +2900 -0
- package/dist/skin-antd/index.cjs +1 -0
- package/dist/skin-antd/index.d.cts +30 -0
- package/dist/skin-antd/index.d.ts +30 -0
- package/dist/skin-antd/index.js +1 -0
- package/dist/skin-default/index.cjs +1 -0
- package/dist/skin-default/index.d.cts +42 -0
- package/dist/skin-default/index.d.ts +42 -0
- package/dist/skin-default/index.js +1 -0
- package/dist/step-name-3hQ6CCGr.d.cts +19 -0
- package/dist/step-name-BdkYnb5g.d.ts +19 -0
- package/dist/storage-commit.cjs +1 -0
- package/dist/storage-commit.d.cts +17 -0
- package/dist/storage-commit.d.ts +17 -0
- package/dist/storage-commit.js +1 -0
- package/dist/stream-reads.cjs +1 -0
- package/dist/stream-reads.d.cts +22 -0
- package/dist/stream-reads.d.ts +22 -0
- package/dist/stream-reads.js +1 -0
- package/dist/styles.css +796 -0
- package/dist/testing/index.cjs +1 -0
- package/dist/testing/index.d.cts +57 -0
- package/dist/testing/index.d.ts +57 -0
- package/dist/testing/index.js +1 -0
- package/docs/examples/message-versions.tsx +74 -0
- package/docs/form-fill-protocol.md +83 -0
- package/docs/message-versions.md +64 -0
- package/docs/plan-protocol.md +83 -0
- package/docs/reply-protocol.md +75 -0
- package/etc/hooks.api.md +2385 -0
- package/etc/index.api.md +2159 -0
- package/etc/messages-en.api.md +13 -0
- package/etc/messages-zh-Hans.api.md +13 -0
- package/etc/messages.api.md +183 -0
- package/etc/react.api.md +2968 -0
- package/etc/skin-antd.api.md +2989 -0
- package/etc/skin-default.api.md +61 -0
- package/etc/testing.api.md +3034 -0
- package/package.json +168 -4
|
@@ -0,0 +1,797 @@
|
|
|
1
|
+
type WaypointProtocol = Problem | Negotiation | NegotiationOfferWire | Negotiated | CanonicalRequest | ReadTemplate | Step | ImmediateDraft | ImmediatePlan | TimedPlan | Plan | PlanState | Outcome | ConfirmationItem | ConfirmationSchedule | ConfirmationRecord | PlanRecord | RecoveryPhase | IntentKind | WinnerKind | IntentCause | IntentWinner | RecoveryView | IntentTarget | IntentRequest | PlanIntentReply | ExecutionAcceptance | ReplyDecline | CardAnswer | BlockMarkdown | BlockCard | BlockDetails | BlockList | BlockTable | BlockForm | BlockChoice | BlockButtons | BlockDiff | BlockPlan | BlockRouteLink | BlockNotice | ExtensionBlock | Block | Message | Source | Conversation | ReplyMessage | ReplyConfirm | ReplyForm | ReplyAction | ReplyToolResult | ReplyPlanValues | Reply | ReplyStop | ManifestEntry | ToolCall | FrameMessageStart | FrameTextDelta | FrameBlock | FramePlanDraft | FramePlanFinal | FramePlanStep | FrameToolCall | FramePlanningRead | FrameMessageEnd | FrameStale | FrameProblem | Frame | FlowParameter | Flow | CreateConversation | PlanCommand | RunFlow | PatchFlow | FormSubject | FormValidation | FormFillValue | FormFillField | FormFillRequest | BlockFormFill | ReplyFormFill | LeaveAcknowledgment | DecisionVersions | KeptFact | FinalHistory;
|
|
2
|
+
type Plan = ImmediateDraft | ImmediatePlan | TimedPlan;
|
|
3
|
+
type PlanState = 'proposed' | 'awaiting-confirmation' | 'running' | 'undoing' | 'completed' | 'submitted' | 'undone' | 'needs-attention' | 'cancelled';
|
|
4
|
+
type WinnerKind = 'stop' | 'cancel-initial' | 'cancel-review' | 'leave' | 'keep';
|
|
5
|
+
type IntentCause = 'user' | 'connection-lost' | 'renewal-refused' | 'step-failed' | 'step-up-failed' | 'identity-lost' | 'attribution-missing' | 'plan-changed' | 'adapter-configuration';
|
|
6
|
+
type RecoveryPhase = 'proposal' | 'initial-review' | 'forward-active' | 'readback' | 'completed' | 'cancelled' | 'left-known' | 'left-unconfirmed' | 'left-reopened';
|
|
7
|
+
type IntentKind = 'stop' | 'cancel-initial' | 'cancel-review' | 'leave' | 'keep';
|
|
8
|
+
/**
|
|
9
|
+
* The answer the host applied to a card, as it was sent without its protocol; only with answered. A host may leave out a form's values.
|
|
10
|
+
*/
|
|
11
|
+
type CardAnswer = {
|
|
12
|
+
kind: 'action';
|
|
13
|
+
clientReplyId: string;
|
|
14
|
+
blockId: string;
|
|
15
|
+
actionId: string;
|
|
16
|
+
} | {
|
|
17
|
+
kind: 'form';
|
|
18
|
+
clientReplyId: string;
|
|
19
|
+
blockId: string;
|
|
20
|
+
values?: {};
|
|
21
|
+
};
|
|
22
|
+
type Block = BlockMarkdown | BlockCard | BlockDetails | BlockList | BlockTable | BlockForm | BlockChoice | BlockButtons | BlockDiff | BlockPlan | BlockRouteLink | BlockNotice | BlockFormFill | ExtensionBlock;
|
|
23
|
+
type Conversation = {
|
|
24
|
+
[k: string]: unknown;
|
|
25
|
+
} & {
|
|
26
|
+
protocol: string;
|
|
27
|
+
id: string;
|
|
28
|
+
title: string;
|
|
29
|
+
messages: Message[];
|
|
30
|
+
replyOverdueAt?: number | null;
|
|
31
|
+
replyStatus?: 'expected' | 'unavailable' | 'failed' | 'complete';
|
|
32
|
+
mode?: 'form-fill';
|
|
33
|
+
subject?: FormSubject;
|
|
34
|
+
parentConversationId?: string;
|
|
35
|
+
field?: string;
|
|
36
|
+
};
|
|
37
|
+
type FormSubject = {
|
|
38
|
+
[k: string]: unknown;
|
|
39
|
+
} & {
|
|
40
|
+
key: string;
|
|
41
|
+
resource: string;
|
|
42
|
+
label: string;
|
|
43
|
+
route: string;
|
|
44
|
+
state: 'pending' | 'bound' | 'unlinked';
|
|
45
|
+
record?: string;
|
|
46
|
+
};
|
|
47
|
+
type Reply = ReplyMessage | ReplyConfirm | ReplyForm | ReplyAction | ReplyToolResult | ReplyPlanValues | ReplyFormFill | ReplyStop;
|
|
48
|
+
type Frame = FrameMessageStart | FrameTextDelta | FrameBlock | FramePlanDraft | FramePlanFinal | FramePlanStep | FrameToolCall | FramePlanningRead | FrameMessageEnd | FrameStale | FrameProblem;
|
|
49
|
+
type Flow = {
|
|
50
|
+
[k: string]: unknown;
|
|
51
|
+
} & {
|
|
52
|
+
format: '1.0';
|
|
53
|
+
id: string;
|
|
54
|
+
title: string;
|
|
55
|
+
kind: 'structured' | 'prompt';
|
|
56
|
+
parameters: FlowParameter[];
|
|
57
|
+
steps?: {
|
|
58
|
+
operation: string;
|
|
59
|
+
arguments: {};
|
|
60
|
+
}[];
|
|
61
|
+
tags: string[];
|
|
62
|
+
body: string;
|
|
63
|
+
};
|
|
64
|
+
type CreateConversation = {
|
|
65
|
+
[k: string]: unknown;
|
|
66
|
+
} & {
|
|
67
|
+
protocol: string;
|
|
68
|
+
title: string;
|
|
69
|
+
mode?: 'form-fill';
|
|
70
|
+
subject?: FormSubject;
|
|
71
|
+
parentConversationId?: string;
|
|
72
|
+
field?: string;
|
|
73
|
+
clientCreationId?: string;
|
|
74
|
+
};
|
|
75
|
+
interface Problem {
|
|
76
|
+
code: 'update-required' | 'in-doubt' | 'replaced' | 'retryable' | 'refused' | 'closed' | 'full' | 'declined' | 'unavailable' | 'sign-in' | 'rate-limited' | 'step-up-cancelled' | 'mismatch' | 'invalid-read' | 'invalid-plan' | 'needs-attention' | 'stopped' | 'plan-changed' | 'agreement-expired';
|
|
77
|
+
id: string;
|
|
78
|
+
retryAfter?: number;
|
|
79
|
+
/**
|
|
80
|
+
* Why a confirmation was refused; only with code refused.
|
|
81
|
+
*/
|
|
82
|
+
confirmation?: {
|
|
83
|
+
reason: 'expired' | 'used' | 'stale' | 'mismatch' | 'missing';
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
interface Negotiation {
|
|
87
|
+
protocol: string;
|
|
88
|
+
supported: string[];
|
|
89
|
+
offer?: NegotiationOfferWire;
|
|
90
|
+
}
|
|
91
|
+
interface NegotiationOfferWire {
|
|
92
|
+
capabilities: string[];
|
|
93
|
+
}
|
|
94
|
+
interface Negotiated {
|
|
95
|
+
protocol: string;
|
|
96
|
+
capabilities: string[];
|
|
97
|
+
agreementId?: string;
|
|
98
|
+
}
|
|
99
|
+
interface CanonicalRequest {
|
|
100
|
+
method: 'POST' | 'PUT' | 'PATCH' | 'GET';
|
|
101
|
+
path: string;
|
|
102
|
+
body: string;
|
|
103
|
+
headers: {
|
|
104
|
+
[k: string]: string;
|
|
105
|
+
};
|
|
106
|
+
digest: string;
|
|
107
|
+
}
|
|
108
|
+
interface ReadTemplate {
|
|
109
|
+
method: 'GET';
|
|
110
|
+
path: string;
|
|
111
|
+
rows: string[];
|
|
112
|
+
fields: string[];
|
|
113
|
+
}
|
|
114
|
+
interface Step {
|
|
115
|
+
id: string;
|
|
116
|
+
operation: string;
|
|
117
|
+
resource: string;
|
|
118
|
+
rows: string[];
|
|
119
|
+
fields: string[];
|
|
120
|
+
view: string;
|
|
121
|
+
tier: 'low' | 'sensitive';
|
|
122
|
+
undo: string;
|
|
123
|
+
stepUp: boolean;
|
|
124
|
+
request?: CanonicalRequest;
|
|
125
|
+
before?: {};
|
|
126
|
+
after?: {};
|
|
127
|
+
planningRead?: ReadTemplate;
|
|
128
|
+
}
|
|
129
|
+
interface ImmediateDraft {
|
|
130
|
+
kind: 'immediate';
|
|
131
|
+
stage: 'draft';
|
|
132
|
+
id: string;
|
|
133
|
+
steps: (Step & {
|
|
134
|
+
[k: string]: unknown;
|
|
135
|
+
})[];
|
|
136
|
+
}
|
|
137
|
+
interface ImmediatePlan {
|
|
138
|
+
kind: 'immediate';
|
|
139
|
+
stage: 'final';
|
|
140
|
+
id: string;
|
|
141
|
+
digest: string;
|
|
142
|
+
steps: (Step & {
|
|
143
|
+
[k: string]: unknown;
|
|
144
|
+
})[];
|
|
145
|
+
stepUpCount: number;
|
|
146
|
+
}
|
|
147
|
+
interface TimedPlan {
|
|
148
|
+
kind: 'timed';
|
|
149
|
+
id: string;
|
|
150
|
+
values: {
|
|
151
|
+
[k: string]: {
|
|
152
|
+
[k: string]: unknown;
|
|
153
|
+
};
|
|
154
|
+
};
|
|
155
|
+
start: string | null;
|
|
156
|
+
end: string | null;
|
|
157
|
+
}
|
|
158
|
+
interface Outcome {
|
|
159
|
+
stepId: string;
|
|
160
|
+
status: number;
|
|
161
|
+
attributed: boolean;
|
|
162
|
+
version?: string;
|
|
163
|
+
/**
|
|
164
|
+
* The host's plain words for why the step failed, shown to the user; only for a failed step. Optional.
|
|
165
|
+
*/
|
|
166
|
+
reason?: string;
|
|
167
|
+
/**
|
|
168
|
+
* Whether the failed step can be tried again. Optional.
|
|
169
|
+
*/
|
|
170
|
+
retryable?: boolean;
|
|
171
|
+
}
|
|
172
|
+
interface ConfirmationItem {
|
|
173
|
+
label: string;
|
|
174
|
+
before?: string;
|
|
175
|
+
after?: string;
|
|
176
|
+
note?: string;
|
|
177
|
+
}
|
|
178
|
+
interface ConfirmationSchedule {
|
|
179
|
+
start: string | null;
|
|
180
|
+
end: string | null;
|
|
181
|
+
startText: string;
|
|
182
|
+
endText: string;
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* What the host will apply, issued and worded by the host; confirmed only by sending its single-use token.
|
|
186
|
+
*/
|
|
187
|
+
interface ConfirmationRecord {
|
|
188
|
+
token: string;
|
|
189
|
+
expiresAt: string;
|
|
190
|
+
planId: string;
|
|
191
|
+
conversationId: string;
|
|
192
|
+
revision: number;
|
|
193
|
+
heading: string;
|
|
194
|
+
/**
|
|
195
|
+
* @maxItems 1000
|
|
196
|
+
*/
|
|
197
|
+
items: ConfirmationItem[];
|
|
198
|
+
schedule?: ConfirmationSchedule;
|
|
199
|
+
irreversible: boolean;
|
|
200
|
+
undo: string;
|
|
201
|
+
verificationCount: number;
|
|
202
|
+
actionLabel?: string;
|
|
203
|
+
}
|
|
204
|
+
interface PlanRecord {
|
|
205
|
+
protocol: string;
|
|
206
|
+
id: string;
|
|
207
|
+
state: PlanState;
|
|
208
|
+
plan: Plan;
|
|
209
|
+
outcomes: Outcome[];
|
|
210
|
+
undoPlanId?: string;
|
|
211
|
+
reason?: string;
|
|
212
|
+
recovery?: RecoveryView;
|
|
213
|
+
confirmation?: ConfirmationRecord;
|
|
214
|
+
}
|
|
215
|
+
interface RecoveryView {
|
|
216
|
+
profile: 'plan-recovery-v1' | (string & {});
|
|
217
|
+
phase: RecoveryPhase | (string & {});
|
|
218
|
+
generation: string;
|
|
219
|
+
round: number;
|
|
220
|
+
revision: number;
|
|
221
|
+
conversationId: string;
|
|
222
|
+
reviewId?: string;
|
|
223
|
+
executionId?: string;
|
|
224
|
+
slots: {
|
|
225
|
+
stop: number;
|
|
226
|
+
'cancel-initial': number;
|
|
227
|
+
'cancel-review': number;
|
|
228
|
+
leave: number;
|
|
229
|
+
keep: number;
|
|
230
|
+
};
|
|
231
|
+
winner?: IntentWinner;
|
|
232
|
+
steps?: {
|
|
233
|
+
stepId: string;
|
|
234
|
+
truth: 'done' | 'not-done' | 'unknown';
|
|
235
|
+
}[];
|
|
236
|
+
versions: DecisionVersions;
|
|
237
|
+
decisionKey?: string;
|
|
238
|
+
evidenceDigest?: string;
|
|
239
|
+
unknownCount?: number;
|
|
240
|
+
remaining?: number;
|
|
241
|
+
sealed?: boolean;
|
|
242
|
+
/**
|
|
243
|
+
* @maxItems 256
|
|
244
|
+
*/
|
|
245
|
+
contradictedAfterSeal?: string[];
|
|
246
|
+
}
|
|
247
|
+
interface IntentWinner {
|
|
248
|
+
kind: WinnerKind;
|
|
249
|
+
cause: IntentCause;
|
|
250
|
+
}
|
|
251
|
+
interface DecisionVersions {
|
|
252
|
+
evidence: number;
|
|
253
|
+
winner: number;
|
|
254
|
+
decisionResolution: number;
|
|
255
|
+
}
|
|
256
|
+
interface IntentTarget {
|
|
257
|
+
type: 'generation' | 'review' | 'execution';
|
|
258
|
+
id: string;
|
|
259
|
+
}
|
|
260
|
+
interface IntentRequest {
|
|
261
|
+
kind: IntentKind;
|
|
262
|
+
planId: string;
|
|
263
|
+
target: IntentTarget;
|
|
264
|
+
capturedRound: number;
|
|
265
|
+
expectedSlotVersion: number;
|
|
266
|
+
correlation: string;
|
|
267
|
+
cause: IntentCause;
|
|
268
|
+
payload?: string;
|
|
269
|
+
acknowledgment?: LeaveAcknowledgment;
|
|
270
|
+
review?: 'forward-only' | 'end-retention';
|
|
271
|
+
}
|
|
272
|
+
interface LeaveAcknowledgment {
|
|
273
|
+
sourceDecisionKey: string;
|
|
274
|
+
evidenceVersion: number;
|
|
275
|
+
winnerVersion: number;
|
|
276
|
+
decisionResolutionVersion: number;
|
|
277
|
+
evidenceDigest: string;
|
|
278
|
+
unknownCount: number;
|
|
279
|
+
}
|
|
280
|
+
interface PlanIntentReply {
|
|
281
|
+
planId: string;
|
|
282
|
+
kind: IntentKind;
|
|
283
|
+
capturedRound: number;
|
|
284
|
+
correlation: string;
|
|
285
|
+
effectiveRound: number;
|
|
286
|
+
slotVersion: number;
|
|
287
|
+
resolvedTarget?: string;
|
|
288
|
+
requestedTargetApplied?: boolean;
|
|
289
|
+
replacement?: IntentTarget;
|
|
290
|
+
result: 'applied' | 'replaced' | 'already-closed' | 'already-stopped' | 'defeated' | 'superseded' | 'needs-review' | 'conflict' | 'unavailable' | 'invalid-target' | 'refused' | 'kept' | 'already-kept' | 'sealed';
|
|
291
|
+
keys: string[];
|
|
292
|
+
winner?: IntentWinner;
|
|
293
|
+
phase: RecoveryPhase;
|
|
294
|
+
safetyApplied?: boolean;
|
|
295
|
+
dispositionApplied?: boolean;
|
|
296
|
+
forwardClosed?: boolean;
|
|
297
|
+
count?: number;
|
|
298
|
+
requestKey?: 'requestAlreadyStopped' | 'requestTargetStopped';
|
|
299
|
+
savedDisposition?: {
|
|
300
|
+
phase: 'left-known' | 'left-unconfirmed';
|
|
301
|
+
count: number;
|
|
302
|
+
};
|
|
303
|
+
finalHistory?: FinalHistory;
|
|
304
|
+
}
|
|
305
|
+
interface FinalHistory {
|
|
306
|
+
winner: IntentWinner;
|
|
307
|
+
keptFact: KeptFact;
|
|
308
|
+
relation?: 'keptElsewhere' | 'leaveCompletedByKeep' | 'leaveCoveredByKeep';
|
|
309
|
+
requestedTargetApplied?: boolean;
|
|
310
|
+
/**
|
|
311
|
+
* @maxItems 256
|
|
312
|
+
*/
|
|
313
|
+
contradictedAfterSeal?: string[];
|
|
314
|
+
}
|
|
315
|
+
interface KeptFact {
|
|
316
|
+
keepEffect: 'forward-closed' | 'decision-closed' | 'retention-ended' | 'leave-completed';
|
|
317
|
+
actorCause: IntentCause;
|
|
318
|
+
round: number;
|
|
319
|
+
}
|
|
320
|
+
interface ExecutionAcceptance {
|
|
321
|
+
planId: string;
|
|
322
|
+
executionId: string;
|
|
323
|
+
fence: number;
|
|
324
|
+
}
|
|
325
|
+
interface ReplyDecline {
|
|
326
|
+
kind: 'decline';
|
|
327
|
+
planId: string;
|
|
328
|
+
clientReplyId: string;
|
|
329
|
+
}
|
|
330
|
+
interface BlockMarkdown {
|
|
331
|
+
type: 'markdown';
|
|
332
|
+
id: string;
|
|
333
|
+
fallback: string;
|
|
334
|
+
body: {
|
|
335
|
+
text: string;
|
|
336
|
+
};
|
|
337
|
+
/**
|
|
338
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
339
|
+
*/
|
|
340
|
+
answered?: boolean;
|
|
341
|
+
answer?: CardAnswer;
|
|
342
|
+
}
|
|
343
|
+
interface BlockCard {
|
|
344
|
+
type: 'card';
|
|
345
|
+
id: string;
|
|
346
|
+
fallback: string;
|
|
347
|
+
body: {
|
|
348
|
+
title: string;
|
|
349
|
+
blocks: Block[];
|
|
350
|
+
};
|
|
351
|
+
/**
|
|
352
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
353
|
+
*/
|
|
354
|
+
answered?: boolean;
|
|
355
|
+
answer?: CardAnswer;
|
|
356
|
+
}
|
|
357
|
+
/**
|
|
358
|
+
* Supporting detail behind a disclosure: closed until the user opens it, so the answer comes first.
|
|
359
|
+
*/
|
|
360
|
+
interface BlockDetails {
|
|
361
|
+
/**
|
|
362
|
+
* The block's type: `details`.
|
|
363
|
+
*/
|
|
364
|
+
type: 'details';
|
|
365
|
+
/**
|
|
366
|
+
* The block's id, unique in its message.
|
|
367
|
+
*/
|
|
368
|
+
id: string;
|
|
369
|
+
/**
|
|
370
|
+
* Plain text shown by a client that does not know the type.
|
|
371
|
+
*/
|
|
372
|
+
fallback: string;
|
|
373
|
+
/**
|
|
374
|
+
* The disclosure's words and what it holds.
|
|
375
|
+
*/
|
|
376
|
+
body: {
|
|
377
|
+
/**
|
|
378
|
+
* The words on the closed disclosure.
|
|
379
|
+
*/
|
|
380
|
+
summary: string;
|
|
381
|
+
/**
|
|
382
|
+
* The supporting detail, shown when the disclosure is open.
|
|
383
|
+
*/
|
|
384
|
+
blocks: Block[];
|
|
385
|
+
};
|
|
386
|
+
/**
|
|
387
|
+
* Whether the host holds an answer to a card nested in this block, named in `answer`. An answer marks the message's own block, so a details block that holds a form or buttons is the one marked (see the README's Card answers).
|
|
388
|
+
*/
|
|
389
|
+
answered?: boolean;
|
|
390
|
+
answer?: CardAnswer;
|
|
391
|
+
}
|
|
392
|
+
interface BlockList {
|
|
393
|
+
type: 'list';
|
|
394
|
+
id: string;
|
|
395
|
+
fallback: string;
|
|
396
|
+
body: {
|
|
397
|
+
items: string[];
|
|
398
|
+
};
|
|
399
|
+
/**
|
|
400
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
401
|
+
*/
|
|
402
|
+
answered?: boolean;
|
|
403
|
+
answer?: CardAnswer;
|
|
404
|
+
}
|
|
405
|
+
interface BlockTable {
|
|
406
|
+
type: 'table';
|
|
407
|
+
id: string;
|
|
408
|
+
fallback: string;
|
|
409
|
+
body: {
|
|
410
|
+
columns: string[];
|
|
411
|
+
rows: unknown[][];
|
|
412
|
+
};
|
|
413
|
+
/**
|
|
414
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
415
|
+
*/
|
|
416
|
+
answered?: boolean;
|
|
417
|
+
answer?: CardAnswer;
|
|
418
|
+
}
|
|
419
|
+
interface BlockForm {
|
|
420
|
+
type: 'form';
|
|
421
|
+
id: string;
|
|
422
|
+
fallback: string;
|
|
423
|
+
body: {
|
|
424
|
+
fields: {
|
|
425
|
+
name: string;
|
|
426
|
+
label: string;
|
|
427
|
+
required?: boolean;
|
|
428
|
+
/**
|
|
429
|
+
* What the host already knows for the field: the form starts with it, and the user may change it. Optional.
|
|
430
|
+
*/
|
|
431
|
+
value?: string;
|
|
432
|
+
}[];
|
|
433
|
+
};
|
|
434
|
+
/**
|
|
435
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
436
|
+
*/
|
|
437
|
+
answered?: boolean;
|
|
438
|
+
answer?: CardAnswer;
|
|
439
|
+
}
|
|
440
|
+
interface BlockChoice {
|
|
441
|
+
type: 'choice';
|
|
442
|
+
id: string;
|
|
443
|
+
fallback: string;
|
|
444
|
+
body: {
|
|
445
|
+
mode: 'single' | 'multi' | 'text';
|
|
446
|
+
options: string[];
|
|
447
|
+
};
|
|
448
|
+
/**
|
|
449
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
450
|
+
*/
|
|
451
|
+
answered?: boolean;
|
|
452
|
+
answer?: CardAnswer;
|
|
453
|
+
}
|
|
454
|
+
interface BlockButtons {
|
|
455
|
+
type: 'buttons';
|
|
456
|
+
id: string;
|
|
457
|
+
fallback: string;
|
|
458
|
+
body: {
|
|
459
|
+
actions: {
|
|
460
|
+
id: string;
|
|
461
|
+
label: string;
|
|
462
|
+
}[];
|
|
463
|
+
};
|
|
464
|
+
/**
|
|
465
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
466
|
+
*/
|
|
467
|
+
answered?: boolean;
|
|
468
|
+
answer?: CardAnswer;
|
|
469
|
+
}
|
|
470
|
+
interface BlockDiff {
|
|
471
|
+
type: 'diff';
|
|
472
|
+
id: string;
|
|
473
|
+
fallback: string;
|
|
474
|
+
body: {
|
|
475
|
+
before: unknown;
|
|
476
|
+
after: unknown;
|
|
477
|
+
};
|
|
478
|
+
/**
|
|
479
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
480
|
+
*/
|
|
481
|
+
answered?: boolean;
|
|
482
|
+
answer?: CardAnswer;
|
|
483
|
+
}
|
|
484
|
+
interface BlockPlan {
|
|
485
|
+
type: 'plan';
|
|
486
|
+
id: string;
|
|
487
|
+
fallback: string;
|
|
488
|
+
body: {
|
|
489
|
+
planId: string;
|
|
490
|
+
};
|
|
491
|
+
/**
|
|
492
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
493
|
+
*/
|
|
494
|
+
answered?: boolean;
|
|
495
|
+
answer?: CardAnswer;
|
|
496
|
+
}
|
|
497
|
+
interface BlockRouteLink {
|
|
498
|
+
type: 'route-link';
|
|
499
|
+
id: string;
|
|
500
|
+
fallback: string;
|
|
501
|
+
body: {
|
|
502
|
+
label: string;
|
|
503
|
+
route: string;
|
|
504
|
+
};
|
|
505
|
+
/**
|
|
506
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
507
|
+
*/
|
|
508
|
+
answered?: boolean;
|
|
509
|
+
answer?: CardAnswer;
|
|
510
|
+
}
|
|
511
|
+
interface BlockNotice {
|
|
512
|
+
type: 'notice';
|
|
513
|
+
id: string;
|
|
514
|
+
fallback: string;
|
|
515
|
+
body: {
|
|
516
|
+
text: string;
|
|
517
|
+
tone?: 'info' | 'warning' | 'error';
|
|
518
|
+
};
|
|
519
|
+
/**
|
|
520
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
521
|
+
*/
|
|
522
|
+
answered?: boolean;
|
|
523
|
+
answer?: CardAnswer;
|
|
524
|
+
}
|
|
525
|
+
interface BlockFormFill {
|
|
526
|
+
type: 'form.fill';
|
|
527
|
+
id: string;
|
|
528
|
+
fallback: string;
|
|
529
|
+
body: {
|
|
530
|
+
requestId: string;
|
|
531
|
+
values: {
|
|
532
|
+
[k: string]: FormFillValue;
|
|
533
|
+
};
|
|
534
|
+
};
|
|
535
|
+
/**
|
|
536
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
537
|
+
*/
|
|
538
|
+
answered?: boolean;
|
|
539
|
+
answer?: CardAnswer;
|
|
540
|
+
}
|
|
541
|
+
interface FormFillValue {
|
|
542
|
+
label?: string;
|
|
543
|
+
value: unknown;
|
|
544
|
+
validation: FormValidation;
|
|
545
|
+
}
|
|
546
|
+
interface FormValidation {
|
|
547
|
+
status: 'valid' | 'invalid';
|
|
548
|
+
messages: string[];
|
|
549
|
+
guidance?: string;
|
|
550
|
+
}
|
|
551
|
+
interface ExtensionBlock {
|
|
552
|
+
type: string;
|
|
553
|
+
id: string;
|
|
554
|
+
fallback: string;
|
|
555
|
+
body: unknown;
|
|
556
|
+
/**
|
|
557
|
+
* Whether the host holds an answer to this card; it holds one at most (see the README's Card answers).
|
|
558
|
+
*/
|
|
559
|
+
answered?: boolean;
|
|
560
|
+
answer?: CardAnswer;
|
|
561
|
+
}
|
|
562
|
+
interface Message {
|
|
563
|
+
id: string;
|
|
564
|
+
clientMessageId?: string;
|
|
565
|
+
role: 'user' | 'assistant';
|
|
566
|
+
content: string;
|
|
567
|
+
blocks: Block[];
|
|
568
|
+
createdAt: number;
|
|
569
|
+
status?: 'writing' | 'completed' | 'failed' | 'unavailable' | 'stopped';
|
|
570
|
+
versionIndex?: number;
|
|
571
|
+
versionCount?: number;
|
|
572
|
+
/**
|
|
573
|
+
* What the reply drew on. `[n]` in its content cites the n-th source. Optional.
|
|
574
|
+
*
|
|
575
|
+
* @maxItems 50
|
|
576
|
+
*/
|
|
577
|
+
sources?: Source[];
|
|
578
|
+
}
|
|
579
|
+
interface Source {
|
|
580
|
+
id: string;
|
|
581
|
+
title: string;
|
|
582
|
+
url: string;
|
|
583
|
+
}
|
|
584
|
+
interface ReplyMessage {
|
|
585
|
+
kind: 'message';
|
|
586
|
+
protocol: string;
|
|
587
|
+
clientReplyId: string;
|
|
588
|
+
content: string;
|
|
589
|
+
clientMessageId: string;
|
|
590
|
+
}
|
|
591
|
+
interface ReplyConfirm {
|
|
592
|
+
kind: 'confirm';
|
|
593
|
+
protocol: string;
|
|
594
|
+
clientReplyId: string;
|
|
595
|
+
planId: string;
|
|
596
|
+
digest?: string;
|
|
597
|
+
confirmationToken: string;
|
|
598
|
+
}
|
|
599
|
+
interface ReplyForm {
|
|
600
|
+
kind: 'form';
|
|
601
|
+
protocol: string;
|
|
602
|
+
clientReplyId: string;
|
|
603
|
+
blockId: string;
|
|
604
|
+
values: {};
|
|
605
|
+
}
|
|
606
|
+
interface ReplyAction {
|
|
607
|
+
kind: 'action';
|
|
608
|
+
protocol: string;
|
|
609
|
+
clientReplyId: string;
|
|
610
|
+
blockId: string;
|
|
611
|
+
actionId: string;
|
|
612
|
+
}
|
|
613
|
+
interface ReplyToolResult {
|
|
614
|
+
kind: 'tool-result';
|
|
615
|
+
protocol: string;
|
|
616
|
+
clientReplyId: string;
|
|
617
|
+
callId: string;
|
|
618
|
+
result: unknown;
|
|
619
|
+
problem?: Problem;
|
|
620
|
+
}
|
|
621
|
+
interface ReplyPlanValues {
|
|
622
|
+
kind: 'plan.values';
|
|
623
|
+
protocol: string;
|
|
624
|
+
clientReplyId: string;
|
|
625
|
+
planId: string;
|
|
626
|
+
steps: {
|
|
627
|
+
stepId: string;
|
|
628
|
+
rows: {};
|
|
629
|
+
versions: {
|
|
630
|
+
[k: string]: string;
|
|
631
|
+
};
|
|
632
|
+
}[];
|
|
633
|
+
}
|
|
634
|
+
interface ReplyFormFill {
|
|
635
|
+
kind: 'form-fill';
|
|
636
|
+
protocol: string;
|
|
637
|
+
clientReplyId: string;
|
|
638
|
+
request: FormFillRequest;
|
|
639
|
+
}
|
|
640
|
+
interface FormFillRequest {
|
|
641
|
+
requestId: string;
|
|
642
|
+
text: string;
|
|
643
|
+
references: string[];
|
|
644
|
+
attachments: string[];
|
|
645
|
+
field?: string;
|
|
646
|
+
/**
|
|
647
|
+
* @minItems 1
|
|
648
|
+
*/
|
|
649
|
+
fields: [FormFillField, ...FormFillField[]];
|
|
650
|
+
}
|
|
651
|
+
interface FormFillField {
|
|
652
|
+
name: string;
|
|
653
|
+
label: string;
|
|
654
|
+
tier: 'low';
|
|
655
|
+
value: unknown;
|
|
656
|
+
}
|
|
657
|
+
/**
|
|
658
|
+
* Asks the host to stop writing a reply. Sent only under the negotiated `reply-stop` capability.
|
|
659
|
+
*/
|
|
660
|
+
interface ReplyStop {
|
|
661
|
+
kind: 'stop';
|
|
662
|
+
protocol: string;
|
|
663
|
+
clientReplyId: string;
|
|
664
|
+
messageId: string;
|
|
665
|
+
/**
|
|
666
|
+
* The version of the message the stop is for, numbered as the message's `versionIndex` (1 for a message with one version). A host ignores a stop for a version it is not writing. Optional: without it, the stop is for the version being written when it arrives.
|
|
667
|
+
*/
|
|
668
|
+
versionIndex?: number;
|
|
669
|
+
}
|
|
670
|
+
interface ManifestEntry {
|
|
671
|
+
id: string;
|
|
672
|
+
kind: 'read' | 'planning-read' | 'update' | 'create' | 'action' | 'bulk';
|
|
673
|
+
method: 'GET' | 'POST' | 'PUT' | 'PATCH';
|
|
674
|
+
path: string;
|
|
675
|
+
resource: string;
|
|
676
|
+
fields: {
|
|
677
|
+
[k: string]: 'low' | 'sensitive' | 'human-only';
|
|
678
|
+
};
|
|
679
|
+
returns: string[];
|
|
680
|
+
filterable: string[];
|
|
681
|
+
permission: string;
|
|
682
|
+
view: string;
|
|
683
|
+
undo: string;
|
|
684
|
+
}
|
|
685
|
+
interface ToolCall {
|
|
686
|
+
id: string;
|
|
687
|
+
operation: string;
|
|
688
|
+
method: string;
|
|
689
|
+
path: string;
|
|
690
|
+
query?: {
|
|
691
|
+
[k: string]: string;
|
|
692
|
+
};
|
|
693
|
+
/**
|
|
694
|
+
* The host's plain words for the read, shown to the user while it runs, for example "Reading 3 orders…". Optional.
|
|
695
|
+
*/
|
|
696
|
+
label?: string;
|
|
697
|
+
}
|
|
698
|
+
interface FrameMessageStart {
|
|
699
|
+
type: 'message.start';
|
|
700
|
+
protocol: string;
|
|
701
|
+
sequence: number;
|
|
702
|
+
messageId: string;
|
|
703
|
+
role: 'user' | 'assistant';
|
|
704
|
+
}
|
|
705
|
+
interface FrameTextDelta {
|
|
706
|
+
type: 'text.delta';
|
|
707
|
+
protocol: string;
|
|
708
|
+
sequence: number;
|
|
709
|
+
messageId: string;
|
|
710
|
+
text: string;
|
|
711
|
+
}
|
|
712
|
+
interface FrameBlock {
|
|
713
|
+
type: 'block';
|
|
714
|
+
protocol: string;
|
|
715
|
+
sequence: number;
|
|
716
|
+
messageId: string;
|
|
717
|
+
block: Block;
|
|
718
|
+
}
|
|
719
|
+
interface FramePlanDraft {
|
|
720
|
+
type: 'plan.draft';
|
|
721
|
+
protocol: string;
|
|
722
|
+
sequence: number;
|
|
723
|
+
messageId: string;
|
|
724
|
+
plan: ImmediateDraft;
|
|
725
|
+
}
|
|
726
|
+
interface FramePlanFinal {
|
|
727
|
+
type: 'plan.final';
|
|
728
|
+
protocol: string;
|
|
729
|
+
sequence: number;
|
|
730
|
+
messageId: string;
|
|
731
|
+
plan: ImmediatePlan | TimedPlan;
|
|
732
|
+
}
|
|
733
|
+
interface FramePlanStep {
|
|
734
|
+
type: 'plan.step';
|
|
735
|
+
protocol: string;
|
|
736
|
+
sequence: number;
|
|
737
|
+
planId: string;
|
|
738
|
+
outcome: Outcome;
|
|
739
|
+
}
|
|
740
|
+
interface FrameToolCall {
|
|
741
|
+
type: 'tool.call';
|
|
742
|
+
protocol: string;
|
|
743
|
+
sequence: number;
|
|
744
|
+
call: ToolCall;
|
|
745
|
+
}
|
|
746
|
+
interface FramePlanningRead {
|
|
747
|
+
type: 'planning-read';
|
|
748
|
+
protocol: string;
|
|
749
|
+
sequence: number;
|
|
750
|
+
planId: string;
|
|
751
|
+
stepId: string;
|
|
752
|
+
template: ReadTemplate;
|
|
753
|
+
}
|
|
754
|
+
interface FrameMessageEnd {
|
|
755
|
+
type: 'message.end';
|
|
756
|
+
protocol: string;
|
|
757
|
+
sequence: number;
|
|
758
|
+
messageId: string;
|
|
759
|
+
status: 'completed' | 'failed' | 'unavailable' | 'stopped';
|
|
760
|
+
}
|
|
761
|
+
interface FrameStale {
|
|
762
|
+
type: 'stale';
|
|
763
|
+
protocol: string;
|
|
764
|
+
sequence: number;
|
|
765
|
+
reads: ('conversation' | 'conversations' | 'plans' | 'flows')[];
|
|
766
|
+
}
|
|
767
|
+
interface FrameProblem {
|
|
768
|
+
type: 'problem';
|
|
769
|
+
protocol: string;
|
|
770
|
+
sequence: number;
|
|
771
|
+
problem: Problem;
|
|
772
|
+
}
|
|
773
|
+
interface FlowParameter {
|
|
774
|
+
name: string;
|
|
775
|
+
type: 'string' | 'number' | 'boolean';
|
|
776
|
+
label: string;
|
|
777
|
+
required: boolean;
|
|
778
|
+
default?: unknown;
|
|
779
|
+
}
|
|
780
|
+
interface PlanCommand {
|
|
781
|
+
protocol: string;
|
|
782
|
+
action: 'stop' | 'heartbeat' | 'resume' | 'retry-undo';
|
|
783
|
+
planId: string;
|
|
784
|
+
}
|
|
785
|
+
interface RunFlow {
|
|
786
|
+
protocol: string;
|
|
787
|
+
flowId: string;
|
|
788
|
+
values: {};
|
|
789
|
+
}
|
|
790
|
+
interface PatchFlow {
|
|
791
|
+
protocol: string;
|
|
792
|
+
flowId: string;
|
|
793
|
+
favourite: boolean;
|
|
794
|
+
title: string;
|
|
795
|
+
}
|
|
796
|
+
|
|
797
|
+
export type { IntentTarget as $, FormSubject as A, Block as B, CanonicalRequest as C, DecisionVersions as D, ExecutionAcceptance as E, Frame as F, FormValidation as G, FrameBlock as H, FrameMessageEnd as I, FrameMessageStart as J, FramePlanDraft as K, FramePlanFinal as L, ManifestEntry as M, FramePlanStep as N, FramePlanningRead as O, Problem as P, FrameProblem as Q, ReadTemplate as R, FrameStale as S, ToolCall as T, FrameTextDelta as U, FrameToolCall as V, ImmediateDraft as W, ImmediatePlan as X, IntentCause as Y, IntentKind as Z, IntentRequest as _, Flow as a, IntentWinner as a0, KeptFact as a1, LeaveAcknowledgment as a2, Message as a3, Negotiated as a4, Negotiation as a5, NegotiationOfferWire as a6, Outcome as a7, PatchFlow as a8, Plan as a9, PlanCommand as aa, PlanIntentReply as ab, PlanRecord as ac, PlanState as ad, RecoveryPhase as ae, RecoveryView as af, Reply as ag, ReplyAction as ah, ReplyConfirm as ai, ReplyDecline as aj, ReplyForm as ak, ReplyFormFill as al, ReplyMessage as am, ReplyPlanValues as an, ReplyStop as ao, ReplyToolResult as ap, RunFlow as aq, Source as ar, Step as as, TimedPlan as at, WaypointProtocol as au, WinnerKind as av, BlockButtons as b, BlockCard as c, BlockChoice as d, BlockDetails as e, BlockDiff as f, BlockForm as g, BlockFormFill as h, BlockList as i, BlockMarkdown as j, BlockNotice as k, BlockPlan as l, BlockRouteLink as m, BlockTable as n, CardAnswer as o, ConfirmationItem as p, ConfirmationRecord as q, ConfirmationSchedule as r, Conversation as s, CreateConversation as t, ExtensionBlock as u, FinalHistory as v, FlowParameter as w, FormFillField as x, FormFillRequest as y, FormFillValue as z };
|