@joai/core 0.2.0 → 0.3.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/dist/index.d.mts +1113 -745
- package/dist/index.mjs +51 -2
- package/dist/react/index.d.mts +103 -0
- package/dist/react/index.mjs +269 -0
- package/dist/types-C4eYYzWF.d.mts +31 -0
- package/package.json +14 -2
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { n as IHttpService, r as IRequestOptions, t as IAppResponse } from "./types-C4eYYzWF.mjs";
|
|
2
|
+
import { Warp, WarpActionInput, WarpBrandUrls, WarpChainInfo, WarpChainName, WarpI18nText, WarpLocale, WarpSecret, WarpText, WarpWalletProvider } from "@joai/warps";
|
|
2
3
|
|
|
3
4
|
//#region src/auth/types.d.ts
|
|
4
5
|
type SocialAuthProvider = 'github' | 'apple' | 'google' | 'x' | 'telegram' | 'slack';
|
|
@@ -10,7 +11,12 @@ type AppEnv = 'mainnet' | 'testnet' | 'devnet' | 'local';
|
|
|
10
11
|
declare const getApiBaseUrl: (env: AppEnv) => string;
|
|
11
12
|
declare const getCortexBaseUrl: (env: AppEnv) => "http://localhost:3010" | "https://devnet-cortex.joai.ai" | "https://testnet-cortex.joai.ai" | "https://cortex.joai.ai";
|
|
12
13
|
declare const getAppBaseUrl: (env: AppEnv) => "http://app.joai--api.test:3004" | "https://devnet.joai.ai" | "https://testnet.joai.ai" | "https://joai.ai";
|
|
14
|
+
declare const getDigestBaseUrl: (env: AppEnv) => "http://localhost:3005" | "https://devnet-digests.joai.ai" | "https://testnet-digests.joai.ai" | "https://digests.joai.ai";
|
|
15
|
+
declare const getMarketplaceBaseUrl: (env: AppEnv) => "http://localhost:3006" | "https://devnet-marketplace.joai.ai" | "https://testnet-marketplace.joai.ai" | "https://marketplace.joai.ai";
|
|
16
|
+
declare const getAgentsBaseUrl: (env: AppEnv) => "http://localhost:3007" | "https://devnet-agents.joai.ai" | "https://testnet-agents.joai.ai" | "https://agents.joai.ai";
|
|
13
17
|
declare const getMcpServerAgentUrl: (env: AppEnv, agent: string) => string;
|
|
18
|
+
declare const getSitesRootDomain: (env: AppEnv) => string;
|
|
19
|
+
declare const getSiteUrl: (env: AppEnv, teamSlug: string, brandSlug: string) => string;
|
|
14
20
|
//#endregion
|
|
15
21
|
//#region src/config/constants.d.ts
|
|
16
22
|
declare const JoaiUrls: {
|
|
@@ -26,36 +32,6 @@ declare const JoaiUrls: {
|
|
|
26
32
|
readonly PlayStore: "https://play.google.com/store/apps/details?id=ai.joai.app";
|
|
27
33
|
};
|
|
28
34
|
//#endregion
|
|
29
|
-
//#region src/http/types.d.ts
|
|
30
|
-
interface IHttpService {
|
|
31
|
-
readonly baseUrl: string;
|
|
32
|
-
readonly authToken: string | null;
|
|
33
|
-
onNetworkError: (error: Error) => void;
|
|
34
|
-
onUnauthorized: (response: IAppResponse<any>) => void;
|
|
35
|
-
onSuccessfulResponse: (response: IAppResponse<any>) => void;
|
|
36
|
-
onMaintenanceMode: (response: IAppResponse<any>) => void;
|
|
37
|
-
get: <T>(url: string, options?: IRequestOptions) => Promise<IAppResponse<T>>;
|
|
38
|
-
post: <T>(url: string, data?: any, options?: IRequestOptions) => Promise<IAppResponse<T>>;
|
|
39
|
-
put: <T>(url: string, data?: any, options?: IRequestOptions) => Promise<IAppResponse<T>>;
|
|
40
|
-
delete: <T>(url: string, options?: IRequestOptions) => Promise<IAppResponse<T>>;
|
|
41
|
-
}
|
|
42
|
-
interface IAppResponse<T> {
|
|
43
|
-
data: T;
|
|
44
|
-
meta?: any;
|
|
45
|
-
body: any;
|
|
46
|
-
errors: any;
|
|
47
|
-
ok: boolean;
|
|
48
|
-
paymentRequired: boolean;
|
|
49
|
-
noContent: boolean;
|
|
50
|
-
original: Response;
|
|
51
|
-
}
|
|
52
|
-
interface IRequestOptions {
|
|
53
|
-
isJson?: boolean;
|
|
54
|
-
headers?: {
|
|
55
|
-
[name: string]: string;
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
//#endregion
|
|
59
35
|
//#region src/http/service.d.ts
|
|
60
36
|
declare class HttpService implements IHttpService {
|
|
61
37
|
readonly baseUrl: string;
|
|
@@ -94,7 +70,8 @@ type IngestionSourceType = 'note' | 'meeting' | 'article' | 'email' | 'chat' | '
|
|
|
94
70
|
type IngestionStatus = 'pending' | 'processing' | 'completed' | 'failed' | 'dead_lettered';
|
|
95
71
|
type AppIngestion = {
|
|
96
72
|
id: string;
|
|
97
|
-
|
|
73
|
+
slug: string | null;
|
|
74
|
+
isPublic: boolean;
|
|
98
75
|
sourceUrl: string | null;
|
|
99
76
|
viewCount: number;
|
|
100
77
|
signupCount: number;
|
|
@@ -106,6 +83,43 @@ type AppIngestion = {
|
|
|
106
83
|
summary: string | null;
|
|
107
84
|
hook: string | null;
|
|
108
85
|
primitivesCreated: Record<string, number>;
|
|
86
|
+
extracted?: {
|
|
87
|
+
memories?: Array<{
|
|
88
|
+
content: string;
|
|
89
|
+
thought?: string;
|
|
90
|
+
category?: string;
|
|
91
|
+
tags?: string[];
|
|
92
|
+
}>;
|
|
93
|
+
actionItems?: Array<{
|
|
94
|
+
title: string;
|
|
95
|
+
description?: string;
|
|
96
|
+
thought?: string;
|
|
97
|
+
priority?: string;
|
|
98
|
+
dueDate?: string;
|
|
99
|
+
}>;
|
|
100
|
+
reminders?: Array<{
|
|
101
|
+
text: string;
|
|
102
|
+
thought?: string;
|
|
103
|
+
scheduledAt?: string;
|
|
104
|
+
}>;
|
|
105
|
+
contacts?: Array<{
|
|
106
|
+
name: string;
|
|
107
|
+
company?: string;
|
|
108
|
+
thought?: string;
|
|
109
|
+
email?: string;
|
|
110
|
+
phone?: string;
|
|
111
|
+
tags?: string[];
|
|
112
|
+
}>;
|
|
113
|
+
goals?: Array<{
|
|
114
|
+
title: string;
|
|
115
|
+
description?: string;
|
|
116
|
+
thought?: string;
|
|
117
|
+
}>;
|
|
118
|
+
documents?: Array<{
|
|
119
|
+
title: string;
|
|
120
|
+
thought?: string;
|
|
121
|
+
}>;
|
|
122
|
+
};
|
|
109
123
|
failureReason: string | null;
|
|
110
124
|
lastError: string | null;
|
|
111
125
|
processedAt: string | null;
|
|
@@ -117,84 +131,8 @@ type Character = {
|
|
|
117
131
|
id: string;
|
|
118
132
|
name: string;
|
|
119
133
|
system: string;
|
|
120
|
-
bio:
|
|
121
|
-
};
|
|
122
|
-
//#endregion
|
|
123
|
-
//#region src/blueprint/types.d.ts
|
|
124
|
-
type BlueprintTeam = {
|
|
125
|
-
slug: string;
|
|
126
|
-
name: string;
|
|
127
|
-
logo: string | null;
|
|
128
|
-
};
|
|
129
|
-
type Blueprint = {
|
|
130
|
-
slug: string;
|
|
131
|
-
team: BlueprintTeam;
|
|
132
|
-
name: string;
|
|
133
|
-
description: string | null;
|
|
134
|
-
avatar: string | null;
|
|
135
|
-
settings: BlueprintSettings;
|
|
136
|
-
verified: boolean;
|
|
137
|
-
public: boolean;
|
|
138
|
-
createdAt: string;
|
|
139
|
-
locales: WarpLocale[];
|
|
140
|
-
price: number | null;
|
|
141
|
-
purchased: boolean;
|
|
142
|
-
};
|
|
143
|
-
type BlueprintSettings = {
|
|
144
|
-
wallets: WarpChainName[];
|
|
145
|
-
character: Character | null;
|
|
146
|
-
tasks: BlueprintTask[];
|
|
147
|
-
shortcuts: BlueprintShortcut[];
|
|
148
|
-
'messages.initial': string | null;
|
|
149
|
-
'messages.general': string[];
|
|
150
|
-
onboarding: BlueprintOnboardingStep[];
|
|
151
|
-
redirect: BlueprintRedirect;
|
|
152
|
-
};
|
|
153
|
-
type BlueprintOnboardingStep = 'wallet' | 'fund';
|
|
154
|
-
type BlueprintRedirect = 'interact' | null;
|
|
155
|
-
type BlueprintTask = {
|
|
156
|
-
warp: string;
|
|
157
|
-
cronExpression: string;
|
|
158
|
-
active: boolean;
|
|
134
|
+
bio: WarpText | null;
|
|
159
135
|
};
|
|
160
|
-
type BlueprintShortcut = {
|
|
161
|
-
name: string;
|
|
162
|
-
description: string | null;
|
|
163
|
-
warp: string;
|
|
164
|
-
chat: boolean;
|
|
165
|
-
};
|
|
166
|
-
//#endregion
|
|
167
|
-
//#region src/helpers/string.d.ts
|
|
168
|
-
declare const sanitizeAlphanumeric: (val: string) => string;
|
|
169
|
-
declare const sanitizeNumeric: (val: string) => string;
|
|
170
|
-
declare const toNameInitials: (name: string) => string;
|
|
171
|
-
declare const toPreviewText: (text: string, maxChars?: number) => string;
|
|
172
|
-
//#endregion
|
|
173
|
-
//#region src/helpers/number.d.ts
|
|
174
|
-
declare const abbreviateNumber: (val: number) => string | number;
|
|
175
|
-
declare const toHexEncodedNonce: (nonce: number) => string;
|
|
176
|
-
declare const toNftId: (collection: string, nonce: number) => string;
|
|
177
|
-
//#endregion
|
|
178
|
-
//#region src/helpers/file.d.ts
|
|
179
|
-
declare const isFileFormatImage: (filename: string | null) => boolean;
|
|
180
|
-
declare const isFileFormatVideo: (filename: string | null) => boolean;
|
|
181
|
-
declare const isFileFormatAudio: (filename: string | null) => boolean;
|
|
182
|
-
//#endregion
|
|
183
|
-
//#region src/helpers/async.d.ts
|
|
184
|
-
declare const withRetry: <T>(fn: () => Promise<T>, validate: (result: T) => boolean, {
|
|
185
|
-
maxRetries,
|
|
186
|
-
retryDelay
|
|
187
|
-
}?: {
|
|
188
|
-
maxRetries?: number | undefined;
|
|
189
|
-
retryDelay?: number | undefined;
|
|
190
|
-
}) => Promise<T>;
|
|
191
|
-
//#endregion
|
|
192
|
-
//#region src/helpers/asset.d.ts
|
|
193
|
-
declare const getAssetAppLogoUrl: (name: string) => string;
|
|
194
|
-
declare const getAssetChainLogoUrl: (name: string) => string;
|
|
195
|
-
declare const getAssetTokenLogoUrl: (name: string) => string;
|
|
196
|
-
declare const getAssetWalletLogoUrl: (name: string) => string;
|
|
197
|
-
declare const getAssetPartnerLogoUrl: (name: string) => string;
|
|
198
136
|
//#endregion
|
|
199
137
|
//#region src/media/types.d.ts
|
|
200
138
|
type AppFileType = 'abi' | 'pdf' | 'image' | 'video' | 'json';
|
|
@@ -217,7 +155,7 @@ type MediaLibraryAttributes = {
|
|
|
217
155
|
type MediaLibraryItems = {
|
|
218
156
|
[uuid: string]: MediaLibraryAttributes;
|
|
219
157
|
};
|
|
220
|
-
type MediaMime = 'image/png' | 'image/jpeg' | 'image/gif' | 'image/webp' | 'video/mp4' | 'video/webm' | 'video/quicktime' | 'video/x-msvideo' | 'audio/mpeg' | 'audio/mp3' | 'audio/ogg' | 'audio/wav' | 'audio/webm' | 'audio/aac' | 'audio/m4a' | 'audio/m4b' | 'audio/m4p' | 'audio/m4v';
|
|
158
|
+
type MediaMime = 'image/png' | 'image/jpeg' | 'image/gif' | 'image/webp' | 'video/mp4' | 'video/webm' | 'video/quicktime' | 'video/x-msvideo' | 'audio/mpeg' | 'audio/mp3' | 'audio/ogg' | 'audio/wav' | 'audio/webm' | 'audio/aac' | 'audio/m4a' | 'audio/m4b' | 'audio/m4p' | 'audio/m4v' | 'application/pdf' | 'application/json';
|
|
221
159
|
type Media = {
|
|
222
160
|
id: string;
|
|
223
161
|
name: string;
|
|
@@ -226,81 +164,6 @@ type Media = {
|
|
|
226
164
|
library: MediaLibraryAttributes;
|
|
227
165
|
};
|
|
228
166
|
//#endregion
|
|
229
|
-
//#region src/integration/types.d.ts
|
|
230
|
-
type IntegrationType = 'none' | 'webhook' | 'api-token' | 'telegram' | 'slack' | 'whatsapp' | 'twilio' | 'n8n' | 'ai-nexus' | 'apple-health' | 'mcp' | 'x' | 'email' | 'calendar' | 'embed' | 'discord' | 'github' | 'sentry' | 'readwise';
|
|
231
|
-
type IntegrationDetails = {
|
|
232
|
-
type: IntegrationType;
|
|
233
|
-
name: string;
|
|
234
|
-
description?: string;
|
|
235
|
-
logoUrl?: string;
|
|
236
|
-
logoUrlDark?: string;
|
|
237
|
-
slug?: string;
|
|
238
|
-
category?: string;
|
|
239
|
-
[key: string]: unknown;
|
|
240
|
-
};
|
|
241
|
-
type Integration = {
|
|
242
|
-
id: string;
|
|
243
|
-
type: IntegrationType;
|
|
244
|
-
name: string;
|
|
245
|
-
active: boolean;
|
|
246
|
-
createdAt: string;
|
|
247
|
-
details?: IntegrationDetails;
|
|
248
|
-
};
|
|
249
|
-
type SocialPlatform = 'telegram' | 'slack' | 'whatsapp' | 'twilio' | 'discord' | 'github';
|
|
250
|
-
type SocialBot = {
|
|
251
|
-
name: string;
|
|
252
|
-
createdAt: string;
|
|
253
|
-
phoneNumberId?: string;
|
|
254
|
-
phoneNumber?: string;
|
|
255
|
-
applicationId?: string;
|
|
256
|
-
appId?: string;
|
|
257
|
-
installationId?: string;
|
|
258
|
-
};
|
|
259
|
-
type XIntegrationStatus = {
|
|
260
|
-
enabled: boolean;
|
|
261
|
-
integrationId: string | null;
|
|
262
|
-
xAccountLinked: boolean;
|
|
263
|
-
currentAgentName: string | null;
|
|
264
|
-
};
|
|
265
|
-
type EmbedStatus = {
|
|
266
|
-
integrationId: string;
|
|
267
|
-
agentName: string;
|
|
268
|
-
agentAvatar: string | null;
|
|
269
|
-
active: boolean;
|
|
270
|
-
allowedDomains: string[];
|
|
271
|
-
};
|
|
272
|
-
type CalendarProvider = 'google' | 'apple';
|
|
273
|
-
type CalendarStatus = {
|
|
274
|
-
connected: boolean;
|
|
275
|
-
provider?: CalendarProvider;
|
|
276
|
-
accountEmail?: string;
|
|
277
|
-
lastSynced?: string;
|
|
278
|
-
tokenHealthy?: boolean;
|
|
279
|
-
upcomingEvents?: {
|
|
280
|
-
title: string;
|
|
281
|
-
startAt: string;
|
|
282
|
-
endAt: string;
|
|
283
|
-
allDay: boolean;
|
|
284
|
-
}[];
|
|
285
|
-
};
|
|
286
|
-
//#endregion
|
|
287
|
-
//#region src/room/types.d.ts
|
|
288
|
-
type RoomId = string;
|
|
289
|
-
type RoomKind = 'default' | 'phone' | 'meeting';
|
|
290
|
-
type Room = {
|
|
291
|
-
id: string;
|
|
292
|
-
name: string;
|
|
293
|
-
description: string | null;
|
|
294
|
-
public: boolean;
|
|
295
|
-
default: boolean;
|
|
296
|
-
kind?: RoomKind | null;
|
|
297
|
-
archivedAt?: string | null;
|
|
298
|
-
secKey: string | null;
|
|
299
|
-
createdAt: string | null;
|
|
300
|
-
agent: AgentSimple;
|
|
301
|
-
integration: Integration | null;
|
|
302
|
-
};
|
|
303
|
-
//#endregion
|
|
304
167
|
//#region src/wallet/types.d.ts
|
|
305
168
|
type Wallet = {
|
|
306
169
|
chain: WarpChainName;
|
|
@@ -315,202 +178,60 @@ type WalletList = Partial<Record<WarpChainName, {
|
|
|
315
178
|
address?: string;
|
|
316
179
|
}>>;
|
|
317
180
|
//#endregion
|
|
318
|
-
//#region src/
|
|
319
|
-
type
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
181
|
+
//#region src/user/types.d.ts
|
|
182
|
+
type UserRole = 'owner' | 'member';
|
|
183
|
+
type UserMode = 'simple' | 'advanced';
|
|
184
|
+
type UserInterest = 'payments' | 'health' | 'content' | 'business' | 'finance' | 'research' | 'shopping' | 'web3' | 'developer' | 'fitness' | 'ecommerce';
|
|
185
|
+
type UserSettings = {
|
|
186
|
+
mode: UserMode;
|
|
187
|
+
interests: UserInterest[];
|
|
188
|
+
hotkeys?: Record<string, string> | null;
|
|
189
|
+
payoutAddress?: string | null;
|
|
190
|
+
payoutChain?: string | null;
|
|
191
|
+
voicePlaybackMode?: 'voice-control' | 'chat' | 'both' | null;
|
|
192
|
+
withdrawalWaiverAcceptedAt?: string | null;
|
|
323
193
|
};
|
|
324
|
-
type
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
bio: string | null;
|
|
194
|
+
type KycStatus = 'pending' | 'approved' | 'rejected';
|
|
195
|
+
type Kyc = {
|
|
196
|
+
status: KycStatus;
|
|
328
197
|
};
|
|
329
|
-
type
|
|
330
|
-
|
|
198
|
+
type UserPrivate = {
|
|
199
|
+
id: string;
|
|
331
200
|
name: string;
|
|
332
|
-
|
|
333
|
-
|
|
201
|
+
email: string;
|
|
202
|
+
hasVerifiedEmail: boolean;
|
|
203
|
+
balance: number;
|
|
334
204
|
wallets: Wallet[];
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
205
|
+
hasProfileImage: boolean;
|
|
206
|
+
profileImageUrl: string;
|
|
207
|
+
country: string | null;
|
|
208
|
+
timezone: string | null;
|
|
209
|
+
socials: UserSocialAccount[];
|
|
210
|
+
justCreated: boolean;
|
|
211
|
+
affiliate: Affiliate | null;
|
|
212
|
+
billingAddress: BillingAddress | null;
|
|
213
|
+
betaRestricted: boolean;
|
|
214
|
+
kyc?: Kyc | null;
|
|
215
|
+
settings: UserSettings;
|
|
342
216
|
};
|
|
343
|
-
type
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
settings: AgentSettings;
|
|
350
|
-
mpp?: AgentMpp | null;
|
|
351
|
-
password: string | null;
|
|
352
|
-
authKey: string | null;
|
|
353
|
-
secKey: string;
|
|
354
|
-
emailAddress: string | null;
|
|
355
|
-
phoneNumber: string | null;
|
|
356
|
-
room: Room;
|
|
357
|
-
role: string | null;
|
|
358
|
-
blueprint: Blueprint | null;
|
|
359
|
-
justCreated?: boolean;
|
|
360
|
-
team: string;
|
|
217
|
+
type Earning = {
|
|
218
|
+
id: number;
|
|
219
|
+
amount: number;
|
|
220
|
+
type: string;
|
|
221
|
+
description: string | null;
|
|
222
|
+
createdAt: string;
|
|
361
223
|
};
|
|
362
|
-
type
|
|
363
|
-
id:
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
createdAt: string
|
|
370
|
-
};
|
|
371
|
-
type
|
|
372
|
-
|
|
373
|
-
name: string;
|
|
374
|
-
};
|
|
375
|
-
type AgentWalletMode = 'local' | 'cloud' | 'external';
|
|
376
|
-
type AgentEngine = 'cortex' | 'openclaw';
|
|
377
|
-
type AgentGender = 'male' | 'female' | 'neutral';
|
|
378
|
-
type AgentSettings = {
|
|
379
|
-
auto: boolean;
|
|
380
|
-
'model.url': string;
|
|
381
|
-
'voice.output': boolean;
|
|
382
|
-
'voice.id': string;
|
|
383
|
-
'agent.gender'?: AgentGender;
|
|
384
|
-
'proactivity.enabled': boolean;
|
|
385
|
-
'proactivity.quietHoursStart'?: number;
|
|
386
|
-
'proactivity.quietHoursEnd'?: number;
|
|
387
|
-
'proactivity.maxMessagesPerDay'?: number;
|
|
388
|
-
'proactivity.timezone'?: string;
|
|
389
|
-
'proactivity.blockedBehaviors'?: string[];
|
|
390
|
-
engine: AgentEngine;
|
|
391
|
-
'training.url'?: string | null;
|
|
392
|
-
'training.status'?: 'idle' | 'training' | 'completed' | 'failed' | null;
|
|
393
|
-
'training.recrawlInterval'?: number | null;
|
|
394
|
-
};
|
|
395
|
-
type LocalAgentWallet = {
|
|
396
|
-
provider: WarpWalletProvider;
|
|
397
|
-
address: string;
|
|
398
|
-
mnemonic?: string | null;
|
|
399
|
-
privateKey?: string | null;
|
|
400
|
-
};
|
|
401
|
-
type AgentExecuteHandler = (prompt: string, options?: AgentExecuteOptions) => void;
|
|
402
|
-
type AgentExecuteOptions = {
|
|
403
|
-
audio?: File;
|
|
404
|
-
sender?: string;
|
|
405
|
-
media?: Media[];
|
|
406
|
-
ghost?: boolean;
|
|
407
|
-
context?: Record<string, unknown>;
|
|
408
|
-
};
|
|
409
|
-
//#endregion
|
|
410
|
-
//#region src/alert/types.d.ts
|
|
411
|
-
type Alert = {
|
|
412
|
-
id: string;
|
|
413
|
-
chain: string;
|
|
414
|
-
warp: string;
|
|
415
|
-
key: string;
|
|
416
|
-
event: string;
|
|
417
|
-
contract: string;
|
|
418
|
-
active: boolean;
|
|
419
|
-
createdAt: string;
|
|
420
|
-
agent: Agent | null;
|
|
421
|
-
};
|
|
422
|
-
//#endregion
|
|
423
|
-
//#region src/api/types.d.ts
|
|
424
|
-
type ApiToken = {
|
|
425
|
-
id: number;
|
|
426
|
-
name: string;
|
|
427
|
-
createdAt: string;
|
|
428
|
-
token?: string;
|
|
429
|
-
};
|
|
430
|
-
//#endregion
|
|
431
|
-
//#region src/flow/types.d.ts
|
|
432
|
-
type FlowCategory = 'none' | 'defi' | 'nft' | 'social' | 'devtools' | 'productivity' | 'trading' | 'portfolio';
|
|
433
|
-
type FlowStatus = 'draft' | 'published';
|
|
434
|
-
type Flow = {
|
|
435
|
-
slug: string;
|
|
436
|
-
team: Team;
|
|
437
|
-
name: string;
|
|
438
|
-
description: string | null;
|
|
439
|
-
category: FlowCategory;
|
|
440
|
-
status: FlowStatus;
|
|
441
|
-
publishedAt: string | null;
|
|
442
|
-
createdAt: string;
|
|
443
|
-
updatedAt: string;
|
|
444
|
-
steps: FlowStep[];
|
|
445
|
-
locales: WarpLocale[];
|
|
446
|
-
price: number | null;
|
|
447
|
-
purchased: boolean;
|
|
448
|
-
};
|
|
449
|
-
type FlowStep = {
|
|
450
|
-
stepId: string;
|
|
451
|
-
order: number;
|
|
452
|
-
type: 'warp' | 'condition' | 'delay';
|
|
453
|
-
warpIdentifier: string | null;
|
|
454
|
-
dependsOn: string[] | null;
|
|
455
|
-
inputMappings: FlowInputMapping[] | null;
|
|
456
|
-
staticInputs: Record<string, any> | null;
|
|
457
|
-
condition: Record<string, any> | null;
|
|
458
|
-
};
|
|
459
|
-
type FlowInputMapping = {
|
|
460
|
-
sourceStepId: string;
|
|
461
|
-
sourceKey: string;
|
|
462
|
-
targetInput: string;
|
|
463
|
-
transform?: string;
|
|
464
|
-
};
|
|
465
|
-
//#endregion
|
|
466
|
-
//#region src/user/types.d.ts
|
|
467
|
-
type UserRole = 'owner' | 'member';
|
|
468
|
-
type UserMode = 'simple' | 'advanced';
|
|
469
|
-
type UserInterest = 'payments' | 'health' | 'content' | 'business' | 'finance' | 'research' | 'shopping' | 'web3' | 'developer' | 'fitness' | 'ecommerce';
|
|
470
|
-
type UserSettings = {
|
|
471
|
-
mode: UserMode;
|
|
472
|
-
interests: UserInterest[];
|
|
473
|
-
hotkeys?: Record<string, string> | null;
|
|
474
|
-
payoutAddress?: string | null;
|
|
475
|
-
payoutChain?: string | null;
|
|
476
|
-
voicePlaybackMode?: 'voice-control' | 'chat' | 'both' | null;
|
|
477
|
-
};
|
|
478
|
-
type UserPrivate = {
|
|
479
|
-
id: string;
|
|
480
|
-
name: string;
|
|
481
|
-
email: string;
|
|
482
|
-
hasVerifiedEmail: boolean;
|
|
483
|
-
balance: number;
|
|
484
|
-
wallets: Wallet[];
|
|
485
|
-
hasProfileImage: boolean;
|
|
486
|
-
profileImageUrl: string;
|
|
487
|
-
country: string | null;
|
|
488
|
-
timezone: string | null;
|
|
489
|
-
socials: UserSocialAccount[];
|
|
490
|
-
justCreated: boolean;
|
|
491
|
-
affiliate: Affiliate | null;
|
|
492
|
-
billingAddress: BillingAddress | null;
|
|
493
|
-
betaRestricted: boolean;
|
|
494
|
-
settings: UserSettings;
|
|
495
|
-
};
|
|
496
|
-
type Earning = {
|
|
497
|
-
id: number;
|
|
498
|
-
amount: number;
|
|
499
|
-
type: string;
|
|
500
|
-
description: string | null;
|
|
501
|
-
createdAt: string;
|
|
502
|
-
};
|
|
503
|
-
type PayoutEntry = {
|
|
504
|
-
id: number;
|
|
505
|
-
amount: number;
|
|
506
|
-
status: string;
|
|
507
|
-
tx: string | null;
|
|
508
|
-
failureReason: string | null;
|
|
509
|
-
processedAt: string | null;
|
|
510
|
-
createdAt: string;
|
|
511
|
-
};
|
|
512
|
-
type UserSocialAccount = {
|
|
513
|
-
platform: string;
|
|
224
|
+
type PayoutEntry = {
|
|
225
|
+
id: number;
|
|
226
|
+
amount: number;
|
|
227
|
+
status: string;
|
|
228
|
+
tx: string | null;
|
|
229
|
+
failureReason: string | null;
|
|
230
|
+
processedAt: string | null;
|
|
231
|
+
createdAt: string;
|
|
232
|
+
};
|
|
233
|
+
type UserSocialAccount = {
|
|
234
|
+
platform: string;
|
|
514
235
|
id: string;
|
|
515
236
|
username: string;
|
|
516
237
|
profileUrl: string;
|
|
@@ -528,7 +249,6 @@ type Affiliate = {
|
|
|
528
249
|
name: string;
|
|
529
250
|
tier: AffiliateTier;
|
|
530
251
|
balance: number;
|
|
531
|
-
code: string;
|
|
532
252
|
payoutAddress: string;
|
|
533
253
|
application: string;
|
|
534
254
|
status: AffiliateStatus;
|
|
@@ -536,10 +256,11 @@ type Affiliate = {
|
|
|
536
256
|
inviteLinkUrl: string;
|
|
537
257
|
settings: {
|
|
538
258
|
minPayoutBalance: number;
|
|
539
|
-
|
|
540
|
-
|
|
259
|
+
commissionExtraPercent?: number;
|
|
260
|
+
customerDiscountPercent: number;
|
|
541
261
|
};
|
|
542
262
|
clicks: number;
|
|
263
|
+
coupons: Coupon[];
|
|
543
264
|
user: User | null;
|
|
544
265
|
};
|
|
545
266
|
type AffiliateTierName = 'bronze' | 'silver' | 'gold';
|
|
@@ -549,70 +270,223 @@ type AffiliateTier = {
|
|
|
549
270
|
commission: number;
|
|
550
271
|
threshold: number;
|
|
551
272
|
};
|
|
552
|
-
type AffiliateStatus = 'pending' | 'approved' | 'rejected' | 'suspended';
|
|
273
|
+
type AffiliateStatus = 'pending' | 'approved' | 'rejected' | 'suspended' | 'demoted';
|
|
553
274
|
//#endregion
|
|
554
|
-
//#region src/
|
|
555
|
-
type
|
|
556
|
-
|
|
557
|
-
|
|
275
|
+
//#region src/billing/types.d.ts
|
|
276
|
+
type OrderStatus = 'pending' | 'completed' | 'delivered' | 'canceled';
|
|
277
|
+
type PaymentProvider = 'xmoney' | 'lemonsqueezy' | 'stripe' | 'apple' | 'google' | 'blockchain' | 'offline';
|
|
278
|
+
type PlanFeature = 'general' | 'messages' | 'team-members' | 'teams' | 'support' | 'agent' | 'auto-mode' | 'cloud-sync' | 'wallet-cloud' | 'wallet-cloud-premium' | 'wallet-multi' | 'cards' | 'alerts' | 'advanced-commands' | 'tasks' | 'integrations' | 'message-history' | 'memory' | 'documents' | 'voice-input' | 'voice-live' | 'image-gen' | 'video-gen' | 'openclaw' | 'skills' | 'items' | 'context-length' | 'workspace-storage' | 'ingestions' | 'agent-email' | 'streak-freezes' | 'byok' | 'mcp' | 'phone-call' | 'phone-number' | 'custom-domain' | 'contacts' | 'marketplace-fee-rate' | 'marketplace-fee-rate-physical';
|
|
279
|
+
type PlanBenefit = {
|
|
280
|
+
label: Partial<Record<WarpLocale, string>>;
|
|
281
|
+
tip?: Partial<Record<WarpLocale, string>>;
|
|
282
|
+
secondary?: boolean;
|
|
558
283
|
};
|
|
559
|
-
type
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
description: string | null;
|
|
564
|
-
locale: WarpLocale;
|
|
565
|
-
timezone: string;
|
|
566
|
-
logo: string | null;
|
|
567
|
-
public: boolean;
|
|
568
|
-
createdAt: string;
|
|
569
|
-
blueprints?: Blueprint[];
|
|
570
|
-
flows?: Flow[];
|
|
284
|
+
type PlanExtra = {
|
|
285
|
+
amount: number;
|
|
286
|
+
price: number;
|
|
287
|
+
unitName: string;
|
|
571
288
|
};
|
|
572
|
-
type
|
|
573
|
-
|
|
289
|
+
type BillingAddress = {
|
|
290
|
+
firstName: string;
|
|
291
|
+
lastName: string;
|
|
292
|
+
addressOne: string | null;
|
|
293
|
+
city: string | null;
|
|
294
|
+
state: string | null;
|
|
295
|
+
zipCode: string | null;
|
|
296
|
+
country: string;
|
|
297
|
+
vatId: string | null;
|
|
298
|
+
isEU: boolean;
|
|
299
|
+
};
|
|
300
|
+
type PlanInterval = 'weekly' | 'monthly' | 'yearly' | 'lifetime';
|
|
301
|
+
type Plan = {
|
|
302
|
+
resource: 'plan';
|
|
303
|
+
sku: string;
|
|
574
304
|
name: string;
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
uncapped: boolean;
|
|
590
|
-
cycleEndsAt: string | null;
|
|
591
|
-
resetsAt: string | null;
|
|
592
|
-
startedAt: string | null;
|
|
593
|
-
renewedAt: string | null;
|
|
594
|
-
expiresAt: string | null;
|
|
305
|
+
description: Partial<Record<WarpLocale, string>>;
|
|
306
|
+
price: number;
|
|
307
|
+
priceDisplay: string;
|
|
308
|
+
interval: PlanInterval;
|
|
309
|
+
intervalDisplay: PlanInterval;
|
|
310
|
+
features: PlanFeature[];
|
|
311
|
+
benefits: Record<PlanFeature, PlanBenefit>;
|
|
312
|
+
limits: Record<PlanFeature, string>;
|
|
313
|
+
extras: Record<PlanFeature, PlanExtra>;
|
|
314
|
+
meta: {
|
|
315
|
+
appleProductId: string | null;
|
|
316
|
+
googleProductId: string | null;
|
|
317
|
+
trialPeriodDays: number;
|
|
318
|
+
isLifetime: boolean;
|
|
595
319
|
};
|
|
596
|
-
settings: TeamSettings;
|
|
597
|
-
createdAt: string;
|
|
598
|
-
justCreated: boolean;
|
|
599
320
|
};
|
|
600
|
-
type
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
321
|
+
type TierName = string;
|
|
322
|
+
type Tier = {
|
|
323
|
+
name: TierName;
|
|
324
|
+
id: string;
|
|
325
|
+
href: string;
|
|
326
|
+
free: boolean;
|
|
327
|
+
price: string;
|
|
328
|
+
priceSuffix?: string;
|
|
329
|
+
description: string;
|
|
330
|
+
benefits: Record<PlanFeature, PlanBenefit>;
|
|
331
|
+
extras: Record<PlanFeature, PlanExtra>;
|
|
332
|
+
mostPopular: boolean;
|
|
333
|
+
mostRecommended: boolean;
|
|
334
|
+
cta?: string;
|
|
335
|
+
plan: Plan;
|
|
604
336
|
};
|
|
605
|
-
type
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
337
|
+
type TierFeature = {
|
|
338
|
+
name: string;
|
|
339
|
+
tiers: Record<TierName, boolean | string>;
|
|
340
|
+
};
|
|
341
|
+
type ProductRating = {
|
|
342
|
+
average: number;
|
|
343
|
+
count: number;
|
|
344
|
+
};
|
|
345
|
+
type ProductPieces = {
|
|
346
|
+
amount: number;
|
|
347
|
+
name: string;
|
|
348
|
+
};
|
|
349
|
+
type ProductDiscount = {
|
|
350
|
+
original: number;
|
|
351
|
+
percent: number;
|
|
352
|
+
};
|
|
353
|
+
type ProductVariation = {
|
|
354
|
+
resource: 'product-variation';
|
|
355
|
+
sku: string;
|
|
356
|
+
name: string;
|
|
357
|
+
description?: Partial<Record<WarpLocale, string>>;
|
|
358
|
+
price: number;
|
|
359
|
+
badge?: string;
|
|
360
|
+
quantity?: number;
|
|
361
|
+
media?: Media[];
|
|
362
|
+
preorder: boolean;
|
|
363
|
+
availableAt?: string;
|
|
364
|
+
pieces?: ProductPieces;
|
|
365
|
+
discount?: ProductDiscount;
|
|
366
|
+
product?: Product;
|
|
367
|
+
meta?: {
|
|
368
|
+
appleProductId: string | null;
|
|
369
|
+
googleProductId: string | null;
|
|
370
|
+
};
|
|
371
|
+
nativePriceStr?: string | null;
|
|
372
|
+
};
|
|
373
|
+
type Product = {
|
|
374
|
+
slug: string;
|
|
375
|
+
name: string;
|
|
376
|
+
description?: Partial<Record<WarpLocale, string>>;
|
|
377
|
+
variations: ProductVariation[];
|
|
378
|
+
rating: ProductRating;
|
|
379
|
+
};
|
|
380
|
+
type OrderItem = {
|
|
381
|
+
name: string;
|
|
382
|
+
quantity: number;
|
|
383
|
+
unitPrice: number;
|
|
384
|
+
type: 'product-variation' | 'service';
|
|
385
|
+
};
|
|
386
|
+
type Order = {
|
|
387
|
+
resource: 'order';
|
|
388
|
+
id: string;
|
|
389
|
+
total: number;
|
|
390
|
+
provider: PaymentProvider;
|
|
391
|
+
status: OrderStatus;
|
|
392
|
+
invoiceUrl: string;
|
|
393
|
+
createdAt: string;
|
|
394
|
+
items: OrderItem[];
|
|
395
|
+
plan: Plan | null;
|
|
396
|
+
user: UserPrivate | null;
|
|
397
|
+
team: TeamPrivate | null;
|
|
398
|
+
};
|
|
399
|
+
type Coupon = {
|
|
400
|
+
code: string;
|
|
401
|
+
amount: number;
|
|
402
|
+
percent: number;
|
|
403
|
+
expiresAt: string | null;
|
|
404
|
+
};
|
|
405
|
+
type PurchaseResult = {
|
|
406
|
+
order_id?: string;
|
|
407
|
+
message?: string;
|
|
408
|
+
subscription_active?: boolean;
|
|
409
|
+
};
|
|
410
|
+
type PurchaseOptions = {
|
|
411
|
+
forceProvider?: PaymentProvider;
|
|
412
|
+
billingAddress?: BillingAddress | null;
|
|
413
|
+
meta?: Record<string, string>;
|
|
414
|
+
};
|
|
415
|
+
//#endregion
|
|
416
|
+
//#region src/team/types.d.ts
|
|
417
|
+
type TeamMember = User & {
|
|
418
|
+
role: UserRole | null;
|
|
419
|
+
roleAcceptedAt: string | null;
|
|
420
|
+
email: string | null;
|
|
421
|
+
};
|
|
422
|
+
type Team = {
|
|
423
|
+
slug: string;
|
|
424
|
+
name: string;
|
|
425
|
+
personal: boolean;
|
|
426
|
+
description: string | null;
|
|
427
|
+
locale: WarpLocale;
|
|
428
|
+
timezone: string;
|
|
429
|
+
logo: string | null;
|
|
430
|
+
public: boolean;
|
|
431
|
+
createdAt: string;
|
|
432
|
+
blueprints?: Blueprint[];
|
|
433
|
+
flows?: Flow[];
|
|
434
|
+
};
|
|
435
|
+
type TeamBrand = {
|
|
436
|
+
bg?: string;
|
|
437
|
+
fg?: string;
|
|
438
|
+
label?: string;
|
|
439
|
+
logo?: string;
|
|
440
|
+
bankName?: string;
|
|
441
|
+
bankIban?: string;
|
|
442
|
+
bankBic?: string;
|
|
443
|
+
};
|
|
444
|
+
type TeamPrivate = {
|
|
445
|
+
slug: string;
|
|
446
|
+
name: string;
|
|
447
|
+
personal: boolean;
|
|
448
|
+
description: string | null;
|
|
449
|
+
balance: number;
|
|
450
|
+
locale: WarpLocale;
|
|
451
|
+
timezone: string;
|
|
452
|
+
logo: string | null;
|
|
453
|
+
subscription: {
|
|
454
|
+
premium: boolean;
|
|
455
|
+
lifetime: boolean;
|
|
456
|
+
plan: Plan;
|
|
457
|
+
provider: PaymentProvider | null;
|
|
458
|
+
payer: User | null;
|
|
459
|
+
gracePeriod: boolean;
|
|
460
|
+
autoRenew: boolean;
|
|
461
|
+
uncapped: boolean;
|
|
462
|
+
cycleEndsAt: string | null;
|
|
463
|
+
resetsAt: string | null;
|
|
464
|
+
startedAt: string | null;
|
|
465
|
+
renewedAt: string | null;
|
|
466
|
+
expiresAt: string | null;
|
|
467
|
+
};
|
|
468
|
+
settings: TeamSettings;
|
|
469
|
+
branding: TeamBrand;
|
|
470
|
+
createdAt: string;
|
|
471
|
+
justCreated: boolean;
|
|
472
|
+
};
|
|
473
|
+
type ByokProviderConfig = {
|
|
474
|
+
apiKey?: string;
|
|
475
|
+
accessKey?: string;
|
|
476
|
+
secretKey?: string;
|
|
477
|
+
};
|
|
478
|
+
type ByokProviders = {
|
|
479
|
+
openai?: ByokProviderConfig;
|
|
480
|
+
anthropic?: ByokProviderConfig;
|
|
481
|
+
google?: ByokProviderConfig;
|
|
482
|
+
xai?: ByokProviderConfig;
|
|
483
|
+
klingai?: ByokProviderConfig;
|
|
611
484
|
};
|
|
612
485
|
type ByokProviderName = keyof ByokProviders;
|
|
613
486
|
type TeamSettings = {
|
|
614
487
|
'extra.messages': number;
|
|
615
488
|
'limit.spending': number | null;
|
|
489
|
+
'currency'?: string;
|
|
616
490
|
'extra.usage.enabled'?: boolean;
|
|
617
491
|
'auto.reload.enabled'?: boolean;
|
|
618
492
|
'auto.reload.threshold_cents'?: number | null;
|
|
@@ -620,6 +494,9 @@ type TeamSettings = {
|
|
|
620
494
|
'llm.provider'?: 'openai' | 'anthropic' | 'google' | 'xai' | null;
|
|
621
495
|
'byok.providers'?: ByokProviders | null;
|
|
622
496
|
'board.auto.enabled'?: boolean;
|
|
497
|
+
'payments.online'?: boolean;
|
|
498
|
+
'payments.coupons'?: boolean;
|
|
499
|
+
'branding'?: TeamBrand | null;
|
|
623
500
|
};
|
|
624
501
|
type TeamUsage = Partial<Record<PlanFeature, TeamFeatureUsage>> & {
|
|
625
502
|
extraUsageEnabled?: boolean;
|
|
@@ -675,132 +552,559 @@ type AiCostsResponse = {
|
|
|
675
552
|
};
|
|
676
553
|
};
|
|
677
554
|
};
|
|
678
|
-
//#endregion
|
|
679
|
-
//#region src/
|
|
680
|
-
type
|
|
681
|
-
type
|
|
682
|
-
type
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
555
|
+
//#endregion
|
|
556
|
+
//#region src/flow/types.d.ts
|
|
557
|
+
type FlowCategory = 'none' | 'defi' | 'nft' | 'social' | 'devtools' | 'productivity' | 'trading' | 'portfolio';
|
|
558
|
+
type FlowStatus = 'draft' | 'published';
|
|
559
|
+
type Flow = {
|
|
560
|
+
slug: string;
|
|
561
|
+
team: Team;
|
|
562
|
+
name: string;
|
|
563
|
+
description: string | null;
|
|
564
|
+
category: FlowCategory;
|
|
565
|
+
status: FlowStatus;
|
|
566
|
+
publishedAt: string | null;
|
|
567
|
+
createdAt: string;
|
|
568
|
+
updatedAt: string;
|
|
569
|
+
steps: FlowStep[];
|
|
570
|
+
locales: WarpLocale[];
|
|
571
|
+
marketplace: MarketplaceInfo;
|
|
572
|
+
screenshots: string[];
|
|
573
|
+
};
|
|
574
|
+
type FlowStep = {
|
|
575
|
+
stepId: string;
|
|
576
|
+
order: number;
|
|
577
|
+
type: 'warp' | 'condition' | 'delay';
|
|
578
|
+
warpIdentifier: string | null;
|
|
579
|
+
dependsOn: string[] | null;
|
|
580
|
+
inputMappings: FlowInputMapping[] | null;
|
|
581
|
+
staticInputs: Record<string, any> | null;
|
|
582
|
+
condition: Record<string, any> | null;
|
|
583
|
+
};
|
|
584
|
+
type FlowInputMapping = {
|
|
585
|
+
sourceStepId: string;
|
|
586
|
+
sourceKey: string;
|
|
587
|
+
targetInput: string;
|
|
588
|
+
transform?: string;
|
|
589
|
+
};
|
|
590
|
+
//#endregion
|
|
591
|
+
//#region src/skill/types.d.ts
|
|
592
|
+
declare const SkillType: {
|
|
593
|
+
readonly Knowledge: "knowledge";
|
|
594
|
+
readonly ContentTemplate: "content-template";
|
|
595
|
+
readonly PersonalityClone: "personality-clone";
|
|
596
|
+
readonly BrandKit: "brand-kit";
|
|
597
|
+
readonly VideoTemplate: "video-template";
|
|
598
|
+
readonly VisualKit: "visual-kit";
|
|
599
|
+
};
|
|
600
|
+
type SkillTypeValue = (typeof SkillType)[keyof typeof SkillType];
|
|
601
|
+
declare const SkillMediaBindingRole: {
|
|
602
|
+
readonly Subject: "subject";
|
|
603
|
+
readonly Style: "style";
|
|
604
|
+
readonly Logo: "logo";
|
|
605
|
+
readonly Product: "product";
|
|
606
|
+
readonly Motion: "motion";
|
|
607
|
+
readonly FirstFrame: "first_frame";
|
|
608
|
+
readonly LastFrame: "last_frame";
|
|
609
|
+
};
|
|
610
|
+
type SkillMediaBindingRoleValue = (typeof SkillMediaBindingRole)[keyof typeof SkillMediaBindingRole];
|
|
611
|
+
declare const SkillScope: {
|
|
612
|
+
readonly Agent: "agent";
|
|
613
|
+
readonly Team: "team";
|
|
614
|
+
};
|
|
615
|
+
type SkillScopeValue = (typeof SkillScope)[keyof typeof SkillScope];
|
|
616
|
+
type Skill = {
|
|
617
|
+
id: string;
|
|
618
|
+
name: string;
|
|
619
|
+
description: string;
|
|
620
|
+
content: string;
|
|
621
|
+
meta: Record<string, unknown> | null;
|
|
622
|
+
license: string | null;
|
|
623
|
+
compatibility: string | null;
|
|
624
|
+
allowedTools: string | null;
|
|
625
|
+
source: string;
|
|
626
|
+
sourcePath: string | null;
|
|
627
|
+
scope?: SkillScopeValue;
|
|
628
|
+
active: boolean;
|
|
629
|
+
marketplace: MarketplaceInfo;
|
|
630
|
+
createdAt: string;
|
|
631
|
+
media?: Media[];
|
|
632
|
+
screenshots: string[];
|
|
633
|
+
};
|
|
634
|
+
//#endregion
|
|
635
|
+
//#region src/warp/types.d.ts
|
|
636
|
+
type WarpExtrasFaq = {
|
|
637
|
+
question: string;
|
|
638
|
+
answer: string;
|
|
639
|
+
};
|
|
640
|
+
type WarpExtras = {
|
|
641
|
+
keywords?: Record<string, string[]>;
|
|
642
|
+
useCases?: Record<string, string[]>;
|
|
643
|
+
category?: string;
|
|
644
|
+
faq?: Record<string, WarpExtrasFaq[]>;
|
|
645
|
+
};
|
|
646
|
+
type WarpBackend = {
|
|
647
|
+
hash: string;
|
|
648
|
+
identifier: string;
|
|
649
|
+
chain: WarpChainName | null;
|
|
650
|
+
alias: string;
|
|
651
|
+
name: string;
|
|
652
|
+
title: string;
|
|
653
|
+
description: string;
|
|
654
|
+
preview: string | null;
|
|
655
|
+
creator: string;
|
|
656
|
+
status: WarpBackendStatus;
|
|
657
|
+
active: boolean;
|
|
658
|
+
category: WarpBackendCategory;
|
|
659
|
+
featured: boolean;
|
|
660
|
+
price?: number | null;
|
|
661
|
+
primaryAddress: string | null;
|
|
662
|
+
primaryFunc: string | null;
|
|
663
|
+
locales: WarpLocale[];
|
|
664
|
+
brand: BrandBackend | null;
|
|
665
|
+
definition?: Record<string, any> | null;
|
|
666
|
+
extras?: WarpExtras | null;
|
|
667
|
+
};
|
|
668
|
+
type WarpBackendStatus = 'unverified' | 'verified' | 'blacklisted';
|
|
669
|
+
type WarpBackendCategory = 'none';
|
|
670
|
+
type BrandSourceConfig = {
|
|
671
|
+
type: string;
|
|
672
|
+
chain?: string;
|
|
673
|
+
url?: string;
|
|
674
|
+
contract?: string;
|
|
675
|
+
endpoints?: string[];
|
|
676
|
+
};
|
|
677
|
+
type BrandIntegrationProvider = 'claude' | 'codex' | 'cursor' | 'openai';
|
|
678
|
+
type BrandIntegrationAction = {
|
|
679
|
+
type: 'copy' | 'link' | 'deeplink';
|
|
680
|
+
label: string;
|
|
681
|
+
value: string;
|
|
682
|
+
};
|
|
683
|
+
type BrandIntegration = {
|
|
684
|
+
provider: BrandIntegrationProvider;
|
|
685
|
+
available: boolean;
|
|
686
|
+
status: 'disabled' | 'planned' | 'ready' | 'runtime_ready' | 'submission_ready';
|
|
687
|
+
title: string;
|
|
688
|
+
description: string;
|
|
689
|
+
primaryAction: BrandIntegrationAction;
|
|
690
|
+
secondaryAction?: BrandIntegrationAction | null;
|
|
691
|
+
sourceUrl?: string | null;
|
|
692
|
+
fallbackUrl?: string | null;
|
|
693
|
+
notes?: string[];
|
|
694
|
+
};
|
|
695
|
+
type BrandBackend = {
|
|
696
|
+
hash: string;
|
|
697
|
+
slug: string;
|
|
698
|
+
name: string;
|
|
699
|
+
description: string;
|
|
700
|
+
logo: string;
|
|
701
|
+
colors: string;
|
|
702
|
+
urls: WarpBrandUrls;
|
|
703
|
+
locales: WarpLocale[];
|
|
704
|
+
warps: WarpBackend[];
|
|
705
|
+
isTeamOwned?: boolean;
|
|
706
|
+
inviteCode?: string;
|
|
707
|
+
source?: BrandSourceConfig | null;
|
|
708
|
+
contract?: string;
|
|
709
|
+
isContractBrand?: boolean;
|
|
710
|
+
meta?: {
|
|
711
|
+
rating?: number;
|
|
712
|
+
reviewCount?: number;
|
|
713
|
+
};
|
|
714
|
+
external?: {
|
|
715
|
+
mcp?: string | null;
|
|
716
|
+
integrations?: Partial<Record<BrandIntegrationProvider, BrandIntegration>>;
|
|
717
|
+
};
|
|
718
|
+
};
|
|
719
|
+
type BrandSearchHit = {
|
|
720
|
+
slug: string;
|
|
721
|
+
hash: string;
|
|
722
|
+
name: string;
|
|
723
|
+
description: string;
|
|
724
|
+
logo: string;
|
|
725
|
+
colors: string;
|
|
726
|
+
urls: string;
|
|
727
|
+
};
|
|
728
|
+
type WarpSearchHit = {
|
|
729
|
+
hash: string;
|
|
730
|
+
chain: WarpChainName | null;
|
|
731
|
+
alias: string;
|
|
732
|
+
name: string;
|
|
733
|
+
title: string;
|
|
734
|
+
description: string;
|
|
735
|
+
preview: string | null;
|
|
736
|
+
creator: string;
|
|
737
|
+
status: WarpBackendStatus;
|
|
738
|
+
active: boolean;
|
|
739
|
+
featured: boolean;
|
|
740
|
+
price?: number | null;
|
|
741
|
+
brandSlug: string | null;
|
|
742
|
+
brandName: string | null;
|
|
743
|
+
brandLogo: string | Record<string, string> | null;
|
|
744
|
+
};
|
|
745
|
+
//#endregion
|
|
746
|
+
//#region src/marketplace/types.d.ts
|
|
747
|
+
type MarketplaceEntityType = 'skill' | 'flow' | 'blueprint' | 'agent' | 'service';
|
|
748
|
+
type PricingModel = 'free' | 'one-time' | 'monthly' | 'per-run';
|
|
749
|
+
type MarketplacePricing = {
|
|
750
|
+
model: PricingModel;
|
|
751
|
+
amount: string;
|
|
752
|
+
currency: string;
|
|
753
|
+
chain?: WarpChainName | null;
|
|
754
|
+
planSku?: string | null;
|
|
755
|
+
freeTier?: {
|
|
756
|
+
runs?: number;
|
|
757
|
+
trialDays?: number;
|
|
758
|
+
} | null;
|
|
759
|
+
};
|
|
760
|
+
type MarketplaceInfo = {
|
|
761
|
+
price: number | null;
|
|
762
|
+
purchased: boolean;
|
|
763
|
+
uses: number;
|
|
764
|
+
public: boolean;
|
|
765
|
+
pricing: MarketplacePricing;
|
|
766
|
+
};
|
|
767
|
+
type MarketplaceListing = {
|
|
768
|
+
entityType: MarketplaceEntityType;
|
|
769
|
+
entityId: string;
|
|
770
|
+
name: string;
|
|
771
|
+
description: string | null;
|
|
772
|
+
pricing: MarketplacePricing;
|
|
773
|
+
seller: {
|
|
774
|
+
team: string;
|
|
775
|
+
name: string;
|
|
776
|
+
wallet?: string | null;
|
|
777
|
+
};
|
|
778
|
+
};
|
|
779
|
+
type MarketplaceAgent = {
|
|
780
|
+
uuid: string;
|
|
781
|
+
name: string;
|
|
782
|
+
description: string | null;
|
|
783
|
+
avatar: string | null;
|
|
784
|
+
wallets: {
|
|
785
|
+
address: string;
|
|
786
|
+
chain: WarpChainName;
|
|
787
|
+
}[];
|
|
788
|
+
character: {
|
|
789
|
+
name: string | null;
|
|
790
|
+
bio: string | null;
|
|
791
|
+
} | null;
|
|
792
|
+
marketplace: MarketplaceInfo;
|
|
793
|
+
screenshots: string[];
|
|
794
|
+
};
|
|
795
|
+
type MarketplaceItem = {
|
|
796
|
+
type: 'agent';
|
|
797
|
+
item: MarketplaceAgent;
|
|
798
|
+
} | {
|
|
799
|
+
type: 'blueprint';
|
|
800
|
+
item: Blueprint;
|
|
801
|
+
} | {
|
|
802
|
+
type: 'flow';
|
|
803
|
+
item: Flow;
|
|
804
|
+
} | {
|
|
805
|
+
type: 'skill';
|
|
806
|
+
item: Skill;
|
|
807
|
+
};
|
|
808
|
+
type MarketplaceData = {
|
|
809
|
+
blueprints: Blueprint[];
|
|
810
|
+
skills: Skill[];
|
|
811
|
+
flows: Flow[];
|
|
812
|
+
creators: BrandBackend[];
|
|
813
|
+
agents: MarketplaceAgent[];
|
|
814
|
+
items: MarketplaceItem[];
|
|
815
|
+
};
|
|
816
|
+
type MarketplacePriceTier = {
|
|
817
|
+
sku: string;
|
|
818
|
+
priceCents: number;
|
|
819
|
+
label: string;
|
|
820
|
+
};
|
|
821
|
+
/**
|
|
822
|
+
* Normalized representation of any marketplace entity for use in checkout flows.
|
|
823
|
+
* All marketplace entities share a `.marketplace: MarketplaceInfo` property —
|
|
824
|
+
* combine that with the entity type and ID to construct this.
|
|
825
|
+
*/
|
|
826
|
+
type MarketplaceCheckoutItem = {
|
|
827
|
+
entityType: MarketplaceEntityType;
|
|
828
|
+
entityId: string;
|
|
829
|
+
name: string;
|
|
830
|
+
marketplace: MarketplaceInfo;
|
|
831
|
+
};
|
|
832
|
+
type MarketplacePurchaseResult = {
|
|
833
|
+
purchased: boolean;
|
|
834
|
+
pricePaid: number;
|
|
835
|
+
entityType: string;
|
|
836
|
+
entityId: string;
|
|
837
|
+
paymentMethod: string;
|
|
838
|
+
};
|
|
839
|
+
//#endregion
|
|
840
|
+
//#region src/blueprint/types.d.ts
|
|
841
|
+
type BlueprintTeam = {
|
|
842
|
+
slug: string;
|
|
843
|
+
name: string;
|
|
844
|
+
logo: string | null;
|
|
845
|
+
};
|
|
846
|
+
type Blueprint = {
|
|
847
|
+
slug: string;
|
|
848
|
+
team: BlueprintTeam;
|
|
849
|
+
name: string;
|
|
850
|
+
description: string | null;
|
|
851
|
+
avatar: string | null;
|
|
852
|
+
settings: BlueprintSettings;
|
|
853
|
+
verified: boolean;
|
|
854
|
+
createdAt: string;
|
|
855
|
+
locales: WarpLocale[];
|
|
856
|
+
marketplace: MarketplaceInfo;
|
|
857
|
+
tags: string[];
|
|
858
|
+
screenshots: string[];
|
|
859
|
+
};
|
|
860
|
+
type BlueprintSettings = {
|
|
861
|
+
wallets: WarpChainName[];
|
|
862
|
+
character: Character | null;
|
|
863
|
+
tasks: BlueprintTask[];
|
|
864
|
+
shortcuts: BlueprintShortcut[];
|
|
865
|
+
'messages.initial': string | null;
|
|
866
|
+
'messages.general': string[];
|
|
867
|
+
onboarding: BlueprintOnboardingStep[];
|
|
868
|
+
redirect: BlueprintRedirect;
|
|
869
|
+
};
|
|
870
|
+
type BlueprintOnboardingStep = 'wallet' | 'fund' | `@${string}`;
|
|
871
|
+
type BlueprintRedirect = 'interact' | null;
|
|
872
|
+
type BlueprintTask = {
|
|
873
|
+
warp: string;
|
|
874
|
+
cronExpression: string;
|
|
875
|
+
active: boolean;
|
|
876
|
+
};
|
|
877
|
+
type BlueprintShortcut = {
|
|
878
|
+
name: string;
|
|
879
|
+
description: string | null;
|
|
880
|
+
warp: string;
|
|
881
|
+
chat: boolean;
|
|
882
|
+
};
|
|
883
|
+
//#endregion
|
|
884
|
+
//#region src/helpers/string.d.ts
|
|
885
|
+
declare const sanitizeAlphanumeric: (val: string) => string;
|
|
886
|
+
declare const sanitizeNumeric: (val: string) => string;
|
|
887
|
+
declare const toNameInitials: (name?: string) => string;
|
|
888
|
+
declare const toPreviewText: (text: string, maxChars?: number) => string;
|
|
889
|
+
//#endregion
|
|
890
|
+
//#region src/helpers/number.d.ts
|
|
891
|
+
declare const abbreviateNumber: (val: number) => string | number;
|
|
892
|
+
declare const toCurrencyDisplay: (valueInCents: number, currency?: string) => string;
|
|
893
|
+
declare const toHexEncodedNonce: (nonce: number) => string;
|
|
894
|
+
declare const toNftId: (collection: string, nonce: number) => string;
|
|
895
|
+
//#endregion
|
|
896
|
+
//#region src/helpers/file.d.ts
|
|
897
|
+
declare const isFileFormatImage: (filename: string | null) => boolean;
|
|
898
|
+
declare const isFileFormatVideo: (filename: string | null) => boolean;
|
|
899
|
+
declare const isFileFormatAudio: (filename: string | null) => boolean;
|
|
900
|
+
//#endregion
|
|
901
|
+
//#region src/helpers/async.d.ts
|
|
902
|
+
declare const withRetry: <T>(fn: () => Promise<T>, validate: (result: T) => boolean, {
|
|
903
|
+
maxRetries,
|
|
904
|
+
retryDelay
|
|
905
|
+
}?: {
|
|
906
|
+
maxRetries?: number | undefined;
|
|
907
|
+
retryDelay?: number | undefined;
|
|
908
|
+
}) => Promise<T>;
|
|
909
|
+
//#endregion
|
|
910
|
+
//#region src/helpers/asset.d.ts
|
|
911
|
+
declare const getAssetAppLogoUrl: (name: string) => string;
|
|
912
|
+
declare const getAssetChainLogoUrl: (name: string) => string;
|
|
913
|
+
declare const getAssetTokenLogoUrl: (name: string) => string;
|
|
914
|
+
declare const getAssetWalletLogoUrl: (name: string) => string;
|
|
915
|
+
declare const getAssetPartnerLogoUrl: (name: string) => string;
|
|
916
|
+
type WarpScreenshotVariant = 'light' | 'dark' | 'preview' | 'rendered' | 'rendered-dark';
|
|
917
|
+
declare const getWarpScreenshotUrl: (brandSlug: string, warpAlias: string, variant?: WarpScreenshotVariant) => string;
|
|
918
|
+
//#endregion
|
|
919
|
+
//#region src/helpers/warp.d.ts
|
|
920
|
+
declare function resolveWarpText(text?: WarpText | null, locale?: string): string;
|
|
921
|
+
//#endregion
|
|
922
|
+
//#region src/integration/types.d.ts
|
|
923
|
+
type IntegrationType = 'none' | 'webhook' | 'api-token' | 'telegram' | 'slack' | 'whatsapp' | 'twilio' | 'n8n' | 'ai-nexus' | 'apple-health' | 'mcp' | 'x' | 'email' | 'calendar' | 'embed' | 'discord' | 'github' | 'sentry' | 'readwise';
|
|
924
|
+
type IntegrationDetails = {
|
|
925
|
+
type: IntegrationType;
|
|
926
|
+
name: string;
|
|
927
|
+
description?: string;
|
|
928
|
+
logoUrl?: string;
|
|
929
|
+
logoUrlDark?: string;
|
|
930
|
+
slug?: string;
|
|
931
|
+
category?: string;
|
|
932
|
+
[key: string]: unknown;
|
|
933
|
+
};
|
|
934
|
+
type Integration = {
|
|
935
|
+
id: string;
|
|
936
|
+
type: IntegrationType;
|
|
937
|
+
name: string;
|
|
938
|
+
active: boolean;
|
|
939
|
+
createdAt: string;
|
|
940
|
+
details?: IntegrationDetails;
|
|
941
|
+
};
|
|
942
|
+
type SocialPlatform = 'telegram' | 'slack' | 'whatsapp' | 'twilio' | 'discord' | 'github';
|
|
943
|
+
type SocialBot = {
|
|
944
|
+
name: string;
|
|
945
|
+
createdAt: string;
|
|
946
|
+
phoneNumberId?: string;
|
|
947
|
+
phoneNumber?: string;
|
|
948
|
+
applicationId?: string;
|
|
949
|
+
appId?: string;
|
|
950
|
+
installationId?: string;
|
|
951
|
+
};
|
|
952
|
+
type XIntegrationStatus = {
|
|
953
|
+
enabled: boolean;
|
|
954
|
+
integrationId: string | null;
|
|
955
|
+
xAccountLinked: boolean;
|
|
956
|
+
currentAgentName: string | null;
|
|
687
957
|
};
|
|
688
|
-
type
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
958
|
+
type EmbedStatus = {
|
|
959
|
+
integrationId: string;
|
|
960
|
+
agentName: string;
|
|
961
|
+
agentAvatar: string | null;
|
|
962
|
+
active: boolean;
|
|
963
|
+
allowedDomains: string[];
|
|
692
964
|
};
|
|
693
|
-
type
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
965
|
+
type EmailProvider = 'resend' | 'mailgun' | 'sendgrid';
|
|
966
|
+
type CalendarProvider = 'google' | 'apple' | 'microsoft';
|
|
967
|
+
type CalendarStatus = {
|
|
968
|
+
connected: boolean;
|
|
969
|
+
provider?: CalendarProvider;
|
|
970
|
+
providerDisplayName?: string;
|
|
971
|
+
accountEmail?: string;
|
|
972
|
+
lastSynced?: string;
|
|
973
|
+
tokenHealthy?: boolean;
|
|
974
|
+
upcomingEvents?: {
|
|
975
|
+
title: string;
|
|
976
|
+
startAt: string;
|
|
977
|
+
endAt: string;
|
|
978
|
+
allDay: boolean;
|
|
979
|
+
}[];
|
|
703
980
|
};
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
981
|
+
//#endregion
|
|
982
|
+
//#region src/room/types.d.ts
|
|
983
|
+
type RoomId = string;
|
|
984
|
+
type RoomKind = 'default' | 'phone' | 'meeting';
|
|
985
|
+
type Room = {
|
|
986
|
+
id: string;
|
|
707
987
|
name: string;
|
|
708
|
-
description:
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
googleProductId: string | null;
|
|
720
|
-
trialPeriodDays: number;
|
|
721
|
-
isLifetime: boolean;
|
|
722
|
-
};
|
|
723
|
-
nativePriceStr?: string | null;
|
|
988
|
+
description: string | null;
|
|
989
|
+
public: boolean;
|
|
990
|
+
default: boolean;
|
|
991
|
+
active: boolean;
|
|
992
|
+
kind?: RoomKind | null;
|
|
993
|
+
archivedAt?: string | null;
|
|
994
|
+
secKey: string | null;
|
|
995
|
+
createdAt: string | null;
|
|
996
|
+
contactId?: string | null;
|
|
997
|
+
agent: AgentSimple;
|
|
998
|
+
integration: Integration | null;
|
|
724
999
|
};
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
1000
|
+
//#endregion
|
|
1001
|
+
//#region src/agent/types.d.ts
|
|
1002
|
+
type AgentCharacter = {
|
|
1003
|
+
name: string | null;
|
|
1004
|
+
system: string | null;
|
|
1005
|
+
bio: string | null;
|
|
1006
|
+
};
|
|
1007
|
+
type Agent = {
|
|
1008
|
+
uuid: string;
|
|
1009
|
+
name: string;
|
|
733
1010
|
description: string;
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
1011
|
+
avatar: string;
|
|
1012
|
+
wallets: Wallet[];
|
|
1013
|
+
settings: AgentSettings;
|
|
1014
|
+
marketplace: MarketplaceInfo;
|
|
1015
|
+
character?: AgentCharacter | null;
|
|
1016
|
+
room: Room;
|
|
1017
|
+
role: string | null;
|
|
1018
|
+
blueprint: Blueprint | null;
|
|
1019
|
+
team: string;
|
|
740
1020
|
};
|
|
741
|
-
type
|
|
1021
|
+
type AgentPrivate = {
|
|
1022
|
+
uuid: string;
|
|
742
1023
|
name: string;
|
|
743
|
-
|
|
1024
|
+
description: string;
|
|
1025
|
+
avatar: string;
|
|
1026
|
+
wallets: Wallet[];
|
|
1027
|
+
settings: AgentSettings;
|
|
1028
|
+
marketplace: MarketplaceInfo;
|
|
1029
|
+
password: string | null;
|
|
1030
|
+
authKey: string | null;
|
|
1031
|
+
secKey: string;
|
|
1032
|
+
emailAddress: string | null;
|
|
1033
|
+
phoneNumber: string | null;
|
|
1034
|
+
room: Room;
|
|
1035
|
+
role: string | null;
|
|
1036
|
+
blueprint: Blueprint | null;
|
|
1037
|
+
justCreated?: boolean;
|
|
1038
|
+
team: string;
|
|
744
1039
|
};
|
|
745
|
-
type
|
|
746
|
-
|
|
747
|
-
|
|
1040
|
+
type AgentActionHistoryEntry = {
|
|
1041
|
+
id: string;
|
|
1042
|
+
action: string | null;
|
|
1043
|
+
outcome: 'succeeded' | 'failed';
|
|
1044
|
+
outcomeDetail: string | null;
|
|
1045
|
+
warpIdentifier: string | null;
|
|
1046
|
+
meta: Record<string, unknown> | null;
|
|
1047
|
+
createdAt: string | null;
|
|
748
1048
|
};
|
|
749
|
-
type
|
|
750
|
-
|
|
1049
|
+
type AgentSimple = {
|
|
1050
|
+
uuid: string;
|
|
751
1051
|
name: string;
|
|
752
1052
|
};
|
|
753
|
-
type
|
|
754
|
-
|
|
755
|
-
|
|
1053
|
+
type AgentWalletMode = 'local' | 'cloud' | 'external';
|
|
1054
|
+
type AgentEngine = 'cortex' | 'openclaw';
|
|
1055
|
+
type AgentGender = 'male' | 'female' | 'neutral';
|
|
1056
|
+
type AgentSettings = {
|
|
1057
|
+
auto: boolean;
|
|
1058
|
+
'model.url': string;
|
|
1059
|
+
'voice.output': boolean;
|
|
1060
|
+
'voice.id': string;
|
|
1061
|
+
'agent.gender'?: AgentGender;
|
|
1062
|
+
'proactivity.enabled': boolean;
|
|
1063
|
+
'proactivity.quietHoursStart'?: number;
|
|
1064
|
+
'proactivity.quietHoursEnd'?: number;
|
|
1065
|
+
'proactivity.maxMessagesPerDay'?: number;
|
|
1066
|
+
'proactivity.timezone'?: string;
|
|
1067
|
+
'proactivity.blockedBehaviors'?: string[];
|
|
1068
|
+
engine: AgentEngine;
|
|
1069
|
+
'training.url'?: string | null;
|
|
1070
|
+
'training.status'?: 'idle' | 'training' | 'completed' | 'failed' | null;
|
|
1071
|
+
'training.recrawlInterval'?: number | null;
|
|
1072
|
+
'email_provider'?: EmailProvider | null;
|
|
756
1073
|
};
|
|
757
|
-
type
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
badge?: string;
|
|
763
|
-
quantity?: number;
|
|
764
|
-
media?: Media[];
|
|
765
|
-
preorder: boolean;
|
|
766
|
-
availableAt?: string;
|
|
767
|
-
pieces?: ProductPieces;
|
|
768
|
-
discount?: ProductDiscount;
|
|
769
|
-
product?: Product;
|
|
770
|
-
meta?: {
|
|
771
|
-
appleProductId: string | null;
|
|
772
|
-
googleProductId: string | null;
|
|
773
|
-
};
|
|
774
|
-
nativePriceStr?: string | null;
|
|
1074
|
+
type LocalAgentWallet = {
|
|
1075
|
+
provider: WarpWalletProvider;
|
|
1076
|
+
address: string;
|
|
1077
|
+
mnemonic?: string | null;
|
|
1078
|
+
privateKey?: string | null;
|
|
775
1079
|
};
|
|
776
|
-
type
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
1080
|
+
type AgentExecuteHandler = (prompt: string, options?: AgentExecuteOptions) => void;
|
|
1081
|
+
type AgentExecuteOptions = {
|
|
1082
|
+
audio?: File;
|
|
1083
|
+
sender?: string;
|
|
1084
|
+
media?: Media[];
|
|
1085
|
+
ghost?: boolean;
|
|
1086
|
+
context?: Record<string, unknown>;
|
|
782
1087
|
};
|
|
783
|
-
|
|
1088
|
+
//#endregion
|
|
1089
|
+
//#region src/alert/types.d.ts
|
|
1090
|
+
type Alert = {
|
|
784
1091
|
id: string;
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
1092
|
+
chain: string;
|
|
1093
|
+
warp: string;
|
|
1094
|
+
key: string;
|
|
1095
|
+
event: string;
|
|
1096
|
+
contract: string;
|
|
1097
|
+
active: boolean;
|
|
789
1098
|
createdAt: string;
|
|
790
|
-
|
|
791
|
-
plan: Plan | null;
|
|
792
|
-
user: UserPrivate | null;
|
|
793
|
-
team: TeamPrivate | null;
|
|
794
|
-
};
|
|
795
|
-
type PurchaseResult = {
|
|
796
|
-
order_id?: string;
|
|
797
|
-
message?: string;
|
|
798
|
-
subscription_active?: boolean;
|
|
1099
|
+
agent: Agent | null;
|
|
799
1100
|
};
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
1101
|
+
//#endregion
|
|
1102
|
+
//#region src/api/types.d.ts
|
|
1103
|
+
type ApiToken = {
|
|
1104
|
+
id: number;
|
|
1105
|
+
name: string;
|
|
1106
|
+
createdAt: string;
|
|
1107
|
+
token?: string;
|
|
804
1108
|
};
|
|
805
1109
|
//#endregion
|
|
806
1110
|
//#region src/budget/types.d.ts
|
|
@@ -880,9 +1184,11 @@ type Contact = {
|
|
|
880
1184
|
title: string | null;
|
|
881
1185
|
birthday: string | null;
|
|
882
1186
|
website: string | null;
|
|
1187
|
+
location: string | null;
|
|
883
1188
|
socials: Record<string, string> | null;
|
|
884
1189
|
notes: string | null;
|
|
885
1190
|
tags: string[] | null;
|
|
1191
|
+
props?: Record<string, string> | null;
|
|
886
1192
|
};
|
|
887
1193
|
type ContactActivity = {
|
|
888
1194
|
id: string;
|
|
@@ -900,9 +1206,11 @@ type ContactFormData = {
|
|
|
900
1206
|
title?: string | null;
|
|
901
1207
|
birthday?: string | null;
|
|
902
1208
|
website?: string | null;
|
|
1209
|
+
location?: string | null;
|
|
903
1210
|
socials?: Record<string, string> | null;
|
|
904
1211
|
notes?: string | null;
|
|
905
1212
|
tags?: string[] | null;
|
|
1213
|
+
props?: Record<string, string> | null;
|
|
906
1214
|
};
|
|
907
1215
|
//#endregion
|
|
908
1216
|
//#region src/contract/types.d.ts
|
|
@@ -998,6 +1306,59 @@ type Desk = {
|
|
|
998
1306
|
updatedAt: number;
|
|
999
1307
|
};
|
|
1000
1308
|
//#endregion
|
|
1309
|
+
//#region src/element/types.d.ts
|
|
1310
|
+
type ElementType = 'character' | 'environment' | 'style' | 'product' | 'brand';
|
|
1311
|
+
type ElementSpec = {
|
|
1312
|
+
baseColor?: string | null;
|
|
1313
|
+
material?: string | null;
|
|
1314
|
+
texture?: string | null;
|
|
1315
|
+
pattern?: string | null;
|
|
1316
|
+
finish?: string | null;
|
|
1317
|
+
condition?: string | null;
|
|
1318
|
+
setting?: string | null;
|
|
1319
|
+
background?: string | null;
|
|
1320
|
+
surface?: string | null;
|
|
1321
|
+
weather?: string | null;
|
|
1322
|
+
timeOfDay?: string | null;
|
|
1323
|
+
season?: string | null;
|
|
1324
|
+
lightingType?: string | null;
|
|
1325
|
+
lightingColor?: string | null;
|
|
1326
|
+
lightingDirection?: string | null;
|
|
1327
|
+
mood?: string | null;
|
|
1328
|
+
atmosphere?: string | null;
|
|
1329
|
+
colorPalette?: string | null;
|
|
1330
|
+
style?: string | null;
|
|
1331
|
+
rendering?: string | null;
|
|
1332
|
+
colorGrade?: string | null;
|
|
1333
|
+
shotType?: string | null;
|
|
1334
|
+
cameraAngle?: string | null;
|
|
1335
|
+
lens?: string | null;
|
|
1336
|
+
depthOfField?: string | null;
|
|
1337
|
+
framing?: string | null;
|
|
1338
|
+
avoid?: string | null;
|
|
1339
|
+
};
|
|
1340
|
+
type ElementVariation = {
|
|
1341
|
+
id: string;
|
|
1342
|
+
label: string | null;
|
|
1343
|
+
overrides: ElementSpec | null;
|
|
1344
|
+
model: string | null;
|
|
1345
|
+
aspectRatio: string;
|
|
1346
|
+
primaryMediaId: string | null;
|
|
1347
|
+
primaryImage: Media | null;
|
|
1348
|
+
images: Media[];
|
|
1349
|
+
createdAt: string;
|
|
1350
|
+
};
|
|
1351
|
+
type Element = {
|
|
1352
|
+
id: string;
|
|
1353
|
+
name: string;
|
|
1354
|
+
type: ElementType;
|
|
1355
|
+
description: string | null;
|
|
1356
|
+
spec: ElementSpec | null;
|
|
1357
|
+
media: Media[];
|
|
1358
|
+
variations: ElementVariation[];
|
|
1359
|
+
createdAt: string;
|
|
1360
|
+
};
|
|
1361
|
+
//#endregion
|
|
1001
1362
|
//#region src/document/types.d.ts
|
|
1002
1363
|
type Document = {
|
|
1003
1364
|
id: string;
|
|
@@ -1104,6 +1465,8 @@ type Item = {
|
|
|
1104
1465
|
goalId: string | null;
|
|
1105
1466
|
order: number | null;
|
|
1106
1467
|
assignedAgents: string[];
|
|
1468
|
+
assignedContacts: string[];
|
|
1469
|
+
assignedToUserIds: string[];
|
|
1107
1470
|
executionStatus: ItemExecutionStatus | null;
|
|
1108
1471
|
createdAt: string;
|
|
1109
1472
|
updatedAt: string;
|
|
@@ -1113,9 +1476,24 @@ type ItemCreatePayload = {
|
|
|
1113
1476
|
description?: string;
|
|
1114
1477
|
priority?: ItemPriority;
|
|
1115
1478
|
tags?: string[];
|
|
1116
|
-
dueDate?: string;
|
|
1117
|
-
goalId?: string;
|
|
1118
|
-
status?: ItemStatus;
|
|
1479
|
+
dueDate?: string;
|
|
1480
|
+
goalId?: string;
|
|
1481
|
+
status?: ItemStatus;
|
|
1482
|
+
agents?: string[];
|
|
1483
|
+
contactIds?: string[];
|
|
1484
|
+
assignedToIds?: string[];
|
|
1485
|
+
};
|
|
1486
|
+
type ItemUpdatePayload = {
|
|
1487
|
+
title?: string;
|
|
1488
|
+
description?: string | null;
|
|
1489
|
+
status?: ItemStatus;
|
|
1490
|
+
priority?: ItemPriority;
|
|
1491
|
+
tags?: string[];
|
|
1492
|
+
dueDate?: string | null;
|
|
1493
|
+
goalId?: string | null;
|
|
1494
|
+
agents?: string[];
|
|
1495
|
+
contactIds?: string[];
|
|
1496
|
+
assignedToIds?: string[];
|
|
1119
1497
|
};
|
|
1120
1498
|
//#endregion
|
|
1121
1499
|
//#region src/marketing/types.d.ts
|
|
@@ -1140,191 +1518,6 @@ type DemoFlow = {
|
|
|
1140
1518
|
messages: DemoMessage[];
|
|
1141
1519
|
};
|
|
1142
1520
|
//#endregion
|
|
1143
|
-
//#region src/skill/types.d.ts
|
|
1144
|
-
declare const SkillType: {
|
|
1145
|
-
readonly Knowledge: "knowledge";
|
|
1146
|
-
readonly ContentTemplate: "content-template";
|
|
1147
|
-
readonly PersonalityClone: "personality-clone";
|
|
1148
|
-
readonly BrandKit: "brand-kit";
|
|
1149
|
-
readonly VideoTemplate: "video-template";
|
|
1150
|
-
readonly VisualKit: "visual-kit";
|
|
1151
|
-
};
|
|
1152
|
-
type SkillTypeValue = (typeof SkillType)[keyof typeof SkillType];
|
|
1153
|
-
declare const SkillMediaBindingRole: {
|
|
1154
|
-
readonly Subject: "subject";
|
|
1155
|
-
readonly Style: "style";
|
|
1156
|
-
readonly Logo: "logo";
|
|
1157
|
-
readonly Product: "product";
|
|
1158
|
-
readonly Motion: "motion";
|
|
1159
|
-
readonly FirstFrame: "first_frame";
|
|
1160
|
-
readonly LastFrame: "last_frame";
|
|
1161
|
-
};
|
|
1162
|
-
type SkillMediaBindingRoleValue = (typeof SkillMediaBindingRole)[keyof typeof SkillMediaBindingRole];
|
|
1163
|
-
declare const SkillScope: {
|
|
1164
|
-
readonly Agent: "agent";
|
|
1165
|
-
readonly Team: "team";
|
|
1166
|
-
};
|
|
1167
|
-
type SkillScopeValue = (typeof SkillScope)[keyof typeof SkillScope];
|
|
1168
|
-
type Skill = {
|
|
1169
|
-
id: string;
|
|
1170
|
-
name: string;
|
|
1171
|
-
description: string;
|
|
1172
|
-
content: string;
|
|
1173
|
-
meta: Record<string, unknown> | null;
|
|
1174
|
-
license: string | null;
|
|
1175
|
-
compatibility: string | null;
|
|
1176
|
-
allowedTools: string | null;
|
|
1177
|
-
source: string;
|
|
1178
|
-
sourcePath: string | null;
|
|
1179
|
-
scope?: SkillScopeValue;
|
|
1180
|
-
active: boolean;
|
|
1181
|
-
public: boolean;
|
|
1182
|
-
price: number | null;
|
|
1183
|
-
createdAt: string;
|
|
1184
|
-
media?: Media[];
|
|
1185
|
-
};
|
|
1186
|
-
//#endregion
|
|
1187
|
-
//#region src/warp/types.d.ts
|
|
1188
|
-
type WarpBackend = {
|
|
1189
|
-
hash: string;
|
|
1190
|
-
identifier: string;
|
|
1191
|
-
chain: WarpChainName | null;
|
|
1192
|
-
alias: string;
|
|
1193
|
-
name: string;
|
|
1194
|
-
title: string;
|
|
1195
|
-
description: string;
|
|
1196
|
-
preview: string | null;
|
|
1197
|
-
creator: string;
|
|
1198
|
-
status: WarpBackendStatus;
|
|
1199
|
-
active: boolean;
|
|
1200
|
-
category: WarpBackendCategory;
|
|
1201
|
-
featured: boolean;
|
|
1202
|
-
price?: number | null;
|
|
1203
|
-
primaryAddress: string | null;
|
|
1204
|
-
primaryFunc: string | null;
|
|
1205
|
-
locales: WarpLocale[];
|
|
1206
|
-
brand: BrandBackend | null;
|
|
1207
|
-
definition?: Record<string, any> | null;
|
|
1208
|
-
};
|
|
1209
|
-
type WarpBackendStatus = 'unverified' | 'verified' | 'blacklisted';
|
|
1210
|
-
type WarpBackendCategory = 'none';
|
|
1211
|
-
type BrandSourceConfig = {
|
|
1212
|
-
type: string;
|
|
1213
|
-
chain?: string;
|
|
1214
|
-
url?: string;
|
|
1215
|
-
contract?: string;
|
|
1216
|
-
endpoints?: string[];
|
|
1217
|
-
};
|
|
1218
|
-
type BrandBackend = {
|
|
1219
|
-
hash: string;
|
|
1220
|
-
slug: string;
|
|
1221
|
-
name: string;
|
|
1222
|
-
description: string;
|
|
1223
|
-
logo: string;
|
|
1224
|
-
colors: string;
|
|
1225
|
-
urls: WarpBrandUrls;
|
|
1226
|
-
locales: WarpLocale[];
|
|
1227
|
-
warps: WarpBackend[];
|
|
1228
|
-
isPrivate?: boolean;
|
|
1229
|
-
inviteCode?: string;
|
|
1230
|
-
source?: BrandSourceConfig | null;
|
|
1231
|
-
contract?: string;
|
|
1232
|
-
isContractBrand?: boolean;
|
|
1233
|
-
external?: {
|
|
1234
|
-
mcp?: string | null;
|
|
1235
|
-
};
|
|
1236
|
-
};
|
|
1237
|
-
type BrandSearchHit = {
|
|
1238
|
-
slug: string;
|
|
1239
|
-
hash: string;
|
|
1240
|
-
name: string;
|
|
1241
|
-
description: string;
|
|
1242
|
-
logo: string;
|
|
1243
|
-
colors: string;
|
|
1244
|
-
urls: string;
|
|
1245
|
-
};
|
|
1246
|
-
type WarpSearchHit = {
|
|
1247
|
-
hash: string;
|
|
1248
|
-
chain: WarpChainName | null;
|
|
1249
|
-
alias: string;
|
|
1250
|
-
name: string;
|
|
1251
|
-
title: string;
|
|
1252
|
-
description: string;
|
|
1253
|
-
preview: string | null;
|
|
1254
|
-
creator: string;
|
|
1255
|
-
status: WarpBackendStatus;
|
|
1256
|
-
active: boolean;
|
|
1257
|
-
featured: boolean;
|
|
1258
|
-
price?: number | null;
|
|
1259
|
-
brandSlug: string | null;
|
|
1260
|
-
brandName: string | null;
|
|
1261
|
-
brandLogo: string | Record<string, string> | null;
|
|
1262
|
-
};
|
|
1263
|
-
//#endregion
|
|
1264
|
-
//#region src/marketplace/types.d.ts
|
|
1265
|
-
type MarketplaceEntityType = 'skill' | 'flow' | 'blueprint' | 'agent';
|
|
1266
|
-
type PricingModel = 'free' | 'one-time' | 'per-run';
|
|
1267
|
-
type MarketplacePricing = {
|
|
1268
|
-
model: PricingModel;
|
|
1269
|
-
amount: string;
|
|
1270
|
-
currency: string;
|
|
1271
|
-
chain?: string;
|
|
1272
|
-
freeTier?: {
|
|
1273
|
-
runs?: number;
|
|
1274
|
-
trialDays?: number;
|
|
1275
|
-
} | null;
|
|
1276
|
-
};
|
|
1277
|
-
type MarketplaceListing = {
|
|
1278
|
-
entityType: MarketplaceEntityType;
|
|
1279
|
-
entityId: string;
|
|
1280
|
-
name: string;
|
|
1281
|
-
description: string | null;
|
|
1282
|
-
pricing: MarketplacePricing;
|
|
1283
|
-
seller: {
|
|
1284
|
-
team: string;
|
|
1285
|
-
name: string;
|
|
1286
|
-
wallet?: string | null;
|
|
1287
|
-
};
|
|
1288
|
-
};
|
|
1289
|
-
type MarketplaceAgent = {
|
|
1290
|
-
uuid: string;
|
|
1291
|
-
name: string;
|
|
1292
|
-
description: string | null;
|
|
1293
|
-
avatar: string | null;
|
|
1294
|
-
mpp: {
|
|
1295
|
-
price: string;
|
|
1296
|
-
currency: string;
|
|
1297
|
-
chain: string;
|
|
1298
|
-
} | null;
|
|
1299
|
-
wallets: {
|
|
1300
|
-
address: string;
|
|
1301
|
-
chain: string;
|
|
1302
|
-
}[];
|
|
1303
|
-
character: {
|
|
1304
|
-
name: string | null;
|
|
1305
|
-
bio: string | null;
|
|
1306
|
-
} | null;
|
|
1307
|
-
};
|
|
1308
|
-
type MarketplaceData = {
|
|
1309
|
-
blueprints: Blueprint[];
|
|
1310
|
-
skills: Skill[];
|
|
1311
|
-
flows: Flow[];
|
|
1312
|
-
creators: BrandBackend[];
|
|
1313
|
-
agents: MarketplaceAgent[];
|
|
1314
|
-
};
|
|
1315
|
-
type MarketplacePriceTier = {
|
|
1316
|
-
sku: string;
|
|
1317
|
-
priceCents: number;
|
|
1318
|
-
label: string;
|
|
1319
|
-
};
|
|
1320
|
-
type MarketplacePurchaseResult = {
|
|
1321
|
-
purchased: boolean;
|
|
1322
|
-
pricePaid: number;
|
|
1323
|
-
entityType: string;
|
|
1324
|
-
entityId: string;
|
|
1325
|
-
paymentMethod: string;
|
|
1326
|
-
};
|
|
1327
|
-
//#endregion
|
|
1328
1521
|
//#region src/mcp/types.d.ts
|
|
1329
1522
|
type McpToolCallStatus = 'pending' | 'success' | 'error';
|
|
1330
1523
|
type McpToolCall = {
|
|
@@ -1361,40 +1554,68 @@ type TranscriptEntry = {
|
|
|
1361
1554
|
text: string;
|
|
1362
1555
|
isFinal: boolean;
|
|
1363
1556
|
timestamp: number;
|
|
1557
|
+
speakerId?: number;
|
|
1558
|
+
speakerName?: string;
|
|
1364
1559
|
};
|
|
1365
1560
|
type BookmarkEntry = {
|
|
1366
1561
|
id: string;
|
|
1367
1562
|
timestamp: number;
|
|
1368
1563
|
transcriptEntryId: string;
|
|
1369
1564
|
};
|
|
1370
|
-
type MeetingBotStatus = 'joining' | 'in_meeting' | 'left' | 'failed';
|
|
1371
1565
|
type MeetingParticipant = {
|
|
1372
1566
|
name: string | null;
|
|
1373
1567
|
profileImageUrl: string | null;
|
|
1374
1568
|
};
|
|
1569
|
+
type MeetingSpeakerAssignment = {
|
|
1570
|
+
speakerId: number;
|
|
1571
|
+
name: string;
|
|
1572
|
+
contactId: string | null;
|
|
1573
|
+
};
|
|
1375
1574
|
type Meeting = {
|
|
1376
1575
|
id: string;
|
|
1377
1576
|
code: string;
|
|
1378
1577
|
name: string | null;
|
|
1379
1578
|
room: Room | null;
|
|
1380
1579
|
inviteUrl: string;
|
|
1381
|
-
status:
|
|
1382
|
-
|
|
1580
|
+
status: MeetingStatus;
|
|
1581
|
+
conferenceProvider: MeetingConferenceProvider | null;
|
|
1582
|
+
conferenceUrl: string | null;
|
|
1583
|
+
conferenceExternalId: string | null;
|
|
1584
|
+
captureMode: 'desktop_local' | null;
|
|
1383
1585
|
transcriptUrl: string | null;
|
|
1384
1586
|
summaryUrl: string | null;
|
|
1385
1587
|
participants?: MeetingParticipant[];
|
|
1386
|
-
|
|
1588
|
+
speakerAssignments?: MeetingSpeakerAssignment[] | null;
|
|
1589
|
+
scheduledAt: string | null;
|
|
1590
|
+
calendarEventId: number | null;
|
|
1591
|
+
startedAt: string | null;
|
|
1387
1592
|
endedAt: string | null;
|
|
1388
1593
|
createdAt: string;
|
|
1389
1594
|
};
|
|
1595
|
+
type MeetingStatus = 'active' | 'completed' | 'analyzed' | 'scheduled' | 'cancelled';
|
|
1596
|
+
type MeetingConferenceProvider = 'google_meet' | 'teams' | 'zoom';
|
|
1597
|
+
type MeetingFeature = 'transcription' | 'summary' | 'insights' | 'actions';
|
|
1598
|
+
type MeetingJoinTeam = {
|
|
1599
|
+
name: string;
|
|
1600
|
+
logo: string | null;
|
|
1601
|
+
};
|
|
1390
1602
|
type MeetingJoinInfo = {
|
|
1391
1603
|
id: string;
|
|
1392
1604
|
code: string;
|
|
1393
1605
|
name: string | null;
|
|
1394
1606
|
inviteUrl: string;
|
|
1395
1607
|
agentName: string;
|
|
1396
|
-
|
|
1608
|
+
team: MeetingJoinTeam;
|
|
1609
|
+
status: MeetingStatus;
|
|
1610
|
+
isPhysical: boolean;
|
|
1611
|
+
scheduledAt: string | null;
|
|
1612
|
+
scheduledEndAt: string | null;
|
|
1613
|
+
timezone: string;
|
|
1614
|
+
conferenceUrl: string | null;
|
|
1615
|
+
conferenceProvider: MeetingConferenceProvider | null;
|
|
1397
1616
|
endedAt: string | null;
|
|
1617
|
+
canCancel: boolean;
|
|
1618
|
+
features: Record<MeetingFeature, boolean>;
|
|
1398
1619
|
};
|
|
1399
1620
|
type MeetingTranscriptEntry = {
|
|
1400
1621
|
speaker: 'user' | 'agent';
|
|
@@ -1606,7 +1827,7 @@ type PermissionConfigType = {
|
|
|
1606
1827
|
//#endregion
|
|
1607
1828
|
//#region src/protocol/types.d.ts
|
|
1608
1829
|
type ChatStreamEventType = 'user' | 'external' | `thought:${ChatClientThought}` | 'response' | 'response:chunk' | 'action' | 'complete' | 'payment-required' | 'desk' | 'project:progress' | 'project:step:complete';
|
|
1609
|
-
type ChatClientAction = 'AGENT_DELEGATE' | 'WARP_EXECUTE' | 'WARP_VIEW' | 'WARP_CREATE' | 'WARP_TEST' | 'WARP_INPUT' | 'WARP_APPROVE' | 'WARP_SELECT' | 'WARP_BATCH' | 'WARP_BULK' | 'ENTITY_PROPOSE' | 'ENTITY_SIGN' | 'SECRET_SET' | 'SECRET_AUTHORIZE' | 'HEALTH_QUERY' | 'HEALTH_WRITE' | 'ITEM_VIEW' | 'BOARD_SUMMARY' | 'GOAL_PROGRESS' | 'CONTACT_VIEW' | 'MARKETPLACE_PURCHASE' | 'WARP_CLOUD_EXECUTE' | 'MISSION_VIEW' | 'ACTIVITY' | 'PERSONA_QUESTION' | '
|
|
1830
|
+
type ChatClientAction = 'AGENT_DELEGATE' | 'WARP_EXECUTE' | 'WARP_VIEW' | 'WARP_CREATE' | 'WARP_TEST' | 'WARP_INPUT' | 'WARP_APPROVE' | 'WARP_SELECT' | 'WARP_BATCH' | 'WARP_BULK' | 'ENTITY_PROPOSE' | 'ENTITY_SIGN' | 'SECRET_SET' | 'SECRET_AUTHORIZE' | 'HEALTH_QUERY' | 'HEALTH_WRITE' | 'ITEM_VIEW' | 'BOARD_SUMMARY' | 'GOAL_PROGRESS' | 'CONTACT_VIEW' | 'MARKETPLACE_PURCHASE' | 'WARP_CLOUD_EXECUTE' | 'MISSION_VIEW' | 'ACTIVITY' | 'PERSONA_QUESTION' | 'NFC_WRITE' | 'twilio.sms';
|
|
1610
1831
|
type ChatClientThought = 'processing' | 'searching' | 'evaluating' | 'transcribing' | 'generating' | 'reflecting' | 'text-transform' | 'finished';
|
|
1611
1832
|
type AgentMessageOptions = {
|
|
1612
1833
|
delay?: number;
|
|
@@ -1624,7 +1845,8 @@ type AgentMessageMeta = {
|
|
|
1624
1845
|
proactive?: boolean;
|
|
1625
1846
|
timeSavedSeconds?: number;
|
|
1626
1847
|
currentUsage?: number;
|
|
1627
|
-
limit?: number;
|
|
1848
|
+
limit?: number; /** Room ID to navigate to — renders a room-change card inline below the message. */
|
|
1849
|
+
roomChange?: string;
|
|
1628
1850
|
};
|
|
1629
1851
|
type ChatStreamData = {
|
|
1630
1852
|
message: MessageId | undefined;
|
|
@@ -1637,6 +1859,7 @@ type ChatStreamData = {
|
|
|
1637
1859
|
media?: Media[];
|
|
1638
1860
|
desk?: Desk;
|
|
1639
1861
|
timeSavedSeconds?: number;
|
|
1862
|
+
roomChange?: string;
|
|
1640
1863
|
} | null;
|
|
1641
1864
|
options?: {
|
|
1642
1865
|
error?: boolean;
|
|
@@ -2023,12 +2246,82 @@ declare const OgImageColors: {
|
|
|
2023
2246
|
};
|
|
2024
2247
|
};
|
|
2025
2248
|
//#endregion
|
|
2249
|
+
//#region src/ogimage/helpers.d.ts
|
|
2250
|
+
type OgResourceType = 'meeting';
|
|
2251
|
+
type OgResourceParams = {
|
|
2252
|
+
meeting: {
|
|
2253
|
+
code: string;
|
|
2254
|
+
};
|
|
2255
|
+
};
|
|
2256
|
+
declare function ogImageUrl<T extends OgResourceType>(type: T, params: OgResourceParams[T]): string;
|
|
2257
|
+
//#endregion
|
|
2026
2258
|
//#region src/project/types.d.ts
|
|
2027
2259
|
type ProjectStatus = 'draft' | 'planned' | 'render-ready' | 'rendered' | 'composed' | 'exported';
|
|
2028
2260
|
type ProjectOutputPreset = '9:16 social' | '16:9 launch' | '1:1 square teaser';
|
|
2261
|
+
type ProjectOutputType = 'video' | 'slideshow' | 'clips';
|
|
2029
2262
|
type ProjectRenderMode = 'draft' | 'final';
|
|
2030
2263
|
type ProjectAspectRatio = '16:9' | '9:16' | '1:1';
|
|
2031
|
-
type ProjectStudioStage = 'questions' | 'concept' | 'draft-ready';
|
|
2264
|
+
type ProjectStudioStage = 'questions' | 'concept' | 'draft-ready' | 'source-processing' | 'candidates-ready';
|
|
2265
|
+
type ProjectSourceMedia = {
|
|
2266
|
+
id?: string | null;
|
|
2267
|
+
name?: string | null;
|
|
2268
|
+
mime?: string | null;
|
|
2269
|
+
url: string;
|
|
2270
|
+
};
|
|
2271
|
+
type ProjectTranscriptSegment = {
|
|
2272
|
+
id: string;
|
|
2273
|
+
startMs: number;
|
|
2274
|
+
endMs: number;
|
|
2275
|
+
text: string;
|
|
2276
|
+
};
|
|
2277
|
+
type ProjectTranscript = {
|
|
2278
|
+
text: string;
|
|
2279
|
+
language?: string | null;
|
|
2280
|
+
durationSeconds?: number | null;
|
|
2281
|
+
segments?: ProjectTranscriptSegment[];
|
|
2282
|
+
};
|
|
2283
|
+
type ProjectClipCandidate = {
|
|
2284
|
+
id: string;
|
|
2285
|
+
title: string;
|
|
2286
|
+
excerpt: string;
|
|
2287
|
+
startMs: number;
|
|
2288
|
+
endMs: number;
|
|
2289
|
+
durationMs: number;
|
|
2290
|
+
score: number;
|
|
2291
|
+
reason: string;
|
|
2292
|
+
platformFit?: string[] | null;
|
|
2293
|
+
selected?: boolean;
|
|
2294
|
+
viralityScore?: number | null;
|
|
2295
|
+
thumbnailUrl?: string | null;
|
|
2296
|
+
};
|
|
2297
|
+
type ProjectSelectedClip = {
|
|
2298
|
+
id: string;
|
|
2299
|
+
candidateId?: string | null;
|
|
2300
|
+
title: string;
|
|
2301
|
+
excerpt?: string | null;
|
|
2302
|
+
startMs: number;
|
|
2303
|
+
endMs: number;
|
|
2304
|
+
durationMs: number;
|
|
2305
|
+
captionsEnabled?: boolean;
|
|
2306
|
+
captionText?: string | null;
|
|
2307
|
+
viralityScore?: number | null;
|
|
2308
|
+
};
|
|
2309
|
+
type ProjectCaptionStyle = {
|
|
2310
|
+
preset?: 'bold' | 'subtitle' | 'minimal' | 'brand' | null;
|
|
2311
|
+
fontSize?: number | null;
|
|
2312
|
+
primaryColor?: string | null;
|
|
2313
|
+
highlightColor?: string | null;
|
|
2314
|
+
position?: 'bottom' | 'center' | null;
|
|
2315
|
+
};
|
|
2316
|
+
type ProjectClips = {
|
|
2317
|
+
sourceMedia?: ProjectSourceMedia[];
|
|
2318
|
+
sourceUrl?: string | null;
|
|
2319
|
+
transcript?: ProjectTranscript | null;
|
|
2320
|
+
candidates?: ProjectClipCandidate[];
|
|
2321
|
+
selected?: ProjectSelectedClip[];
|
|
2322
|
+
captionStyle?: ProjectCaptionStyle | null;
|
|
2323
|
+
targetLanguage?: string | null;
|
|
2324
|
+
};
|
|
2032
2325
|
type ProjectStudioHistoryEntry = {
|
|
2033
2326
|
role: 'user' | 'assistant';
|
|
2034
2327
|
content: string;
|
|
@@ -2104,25 +2397,31 @@ type Project = {
|
|
|
2104
2397
|
status: ProjectStatus;
|
|
2105
2398
|
brief: string | null;
|
|
2106
2399
|
outputPreset: ProjectOutputPreset;
|
|
2400
|
+
outputType: ProjectOutputType;
|
|
2107
2401
|
selectedSkills: string[];
|
|
2108
2402
|
targetPlatforms: string[];
|
|
2109
2403
|
script: Record<string, any> | null;
|
|
2110
2404
|
storyboard: ProjectShot[];
|
|
2111
2405
|
referenceImages: Array<Record<string, any>>;
|
|
2406
|
+
clips?: ProjectClips | null;
|
|
2112
2407
|
generatedImages: Array<Record<string, any>>;
|
|
2113
2408
|
generatedVideos: Array<Record<string, any>>;
|
|
2114
2409
|
generatedAudio: Array<Record<string, any>>;
|
|
2115
2410
|
assembly: Record<string, any> | null;
|
|
2116
2411
|
soundtrack: Record<string, any> | null;
|
|
2117
2412
|
finalAsset: Record<string, any> | null;
|
|
2413
|
+
nsfw: boolean;
|
|
2118
2414
|
studioState?: ProjectStudioState | null;
|
|
2119
2415
|
revisions: Array<Record<string, any>>;
|
|
2416
|
+
elements: Element[];
|
|
2417
|
+
latestExport?: ProjectExport | null;
|
|
2120
2418
|
team: string | null;
|
|
2121
2419
|
createdAt: string;
|
|
2122
2420
|
updatedAt: string;
|
|
2123
2421
|
};
|
|
2124
|
-
type ProjectMutation = Partial<Pick<Project, 'name' | 'brief' | 'status' | 'outputPreset' | 'selectedSkills' | 'targetPlatforms' | 'storyboard' | 'assembly' | 'soundtrack' | 'finalAsset' | 'referenceImages' | 'generatedImages' | 'generatedVideos' | 'generatedAudio'>> & {
|
|
2422
|
+
type ProjectMutation = Partial<Pick<Project, 'name' | 'brief' | 'status' | 'outputPreset' | 'outputType' | 'selectedSkills' | 'targetPlatforms' | 'storyboard' | 'assembly' | 'soundtrack' | 'finalAsset' | 'referenceImages' | 'clips' | 'generatedImages' | 'generatedVideos' | 'generatedAudio' | 'nsfw' | 'studioState'>> & {
|
|
2125
2423
|
script?: Record<string, any> | null;
|
|
2424
|
+
outputAssets?: Record<string, any> | null;
|
|
2126
2425
|
};
|
|
2127
2426
|
type ProjectPlan = {
|
|
2128
2427
|
summary: {
|
|
@@ -2204,16 +2503,29 @@ type ProjectSoundtrack = {
|
|
|
2204
2503
|
soundtrackAsset?: Record<string, any> | null;
|
|
2205
2504
|
};
|
|
2206
2505
|
};
|
|
2506
|
+
type ProjectExportAsset = {
|
|
2507
|
+
id: string;
|
|
2508
|
+
url: string;
|
|
2509
|
+
name: string;
|
|
2510
|
+
mimeType: string;
|
|
2511
|
+
thumbnailUrl?: string | null;
|
|
2512
|
+
};
|
|
2207
2513
|
type ProjectExport = {
|
|
2208
|
-
|
|
2209
|
-
|
|
2210
|
-
|
|
2211
|
-
|
|
2212
|
-
|
|
2213
|
-
|
|
2214
|
-
|
|
2215
|
-
|
|
2216
|
-
|
|
2514
|
+
uuid: string;
|
|
2515
|
+
name: string;
|
|
2516
|
+
assets: ProjectExportAsset[];
|
|
2517
|
+
script: Record<string, any> | null;
|
|
2518
|
+
clientName: string | null;
|
|
2519
|
+
message: string | null;
|
|
2520
|
+
views: number;
|
|
2521
|
+
expiresAt: string | null;
|
|
2522
|
+
url: string;
|
|
2523
|
+
createdAt: string;
|
|
2524
|
+
};
|
|
2525
|
+
type ProjectExportResponse = {
|
|
2526
|
+
project: Project;
|
|
2527
|
+
export: ProjectExport;
|
|
2528
|
+
exportUrl: string;
|
|
2217
2529
|
};
|
|
2218
2530
|
type ProjectStudioResponse = {
|
|
2219
2531
|
project: Project;
|
|
@@ -2235,6 +2547,22 @@ type Reminder = {
|
|
|
2235
2547
|
createdAt: string;
|
|
2236
2548
|
};
|
|
2237
2549
|
//#endregion
|
|
2550
|
+
//#region src/service/types.d.ts
|
|
2551
|
+
type Service = {
|
|
2552
|
+
id: string;
|
|
2553
|
+
slug: string;
|
|
2554
|
+
name: string;
|
|
2555
|
+
price: number;
|
|
2556
|
+
durationMinutes: number;
|
|
2557
|
+
category: string | null;
|
|
2558
|
+
description: string | null;
|
|
2559
|
+
active: boolean;
|
|
2560
|
+
digital: boolean;
|
|
2561
|
+
public: boolean;
|
|
2562
|
+
createdAt: string;
|
|
2563
|
+
updatedAt: string;
|
|
2564
|
+
};
|
|
2565
|
+
//#endregion
|
|
2238
2566
|
//#region src/shortcut/types.d.ts
|
|
2239
2567
|
type Shortcut = {
|
|
2240
2568
|
id: string;
|
|
@@ -2243,10 +2571,49 @@ type Shortcut = {
|
|
|
2243
2571
|
warp: string;
|
|
2244
2572
|
inputs: string[];
|
|
2245
2573
|
chat: boolean;
|
|
2574
|
+
tag: boolean;
|
|
2246
2575
|
createdAt: string;
|
|
2247
2576
|
agent: Agent | null;
|
|
2248
2577
|
};
|
|
2249
2578
|
//#endregion
|
|
2579
|
+
//#region src/site/types.d.ts
|
|
2580
|
+
type SiteTeam = {
|
|
2581
|
+
name: string;
|
|
2582
|
+
slug: string;
|
|
2583
|
+
logoUrl: string | null;
|
|
2584
|
+
};
|
|
2585
|
+
type SiteAgent = {
|
|
2586
|
+
uuid: string | null;
|
|
2587
|
+
};
|
|
2588
|
+
type Site = {
|
|
2589
|
+
id: number;
|
|
2590
|
+
brandSlug: string;
|
|
2591
|
+
customDomain: string | null;
|
|
2592
|
+
enabled: boolean;
|
|
2593
|
+
team: SiteTeam | null;
|
|
2594
|
+
agent: SiteAgent | null;
|
|
2595
|
+
settings: Record<string, unknown>;
|
|
2596
|
+
};
|
|
2597
|
+
type SiteRoute = {
|
|
2598
|
+
path: string;
|
|
2599
|
+
warp: string;
|
|
2600
|
+
label: WarpI18nText;
|
|
2601
|
+
nav?: boolean;
|
|
2602
|
+
hiddenFields?: string[];
|
|
2603
|
+
};
|
|
2604
|
+
type BrandSiteConfig = {
|
|
2605
|
+
enabled: boolean;
|
|
2606
|
+
auth?: boolean;
|
|
2607
|
+
indexPath: string;
|
|
2608
|
+
routes: SiteRoute[];
|
|
2609
|
+
name?: string;
|
|
2610
|
+
logoUrl?: string | null;
|
|
2611
|
+
};
|
|
2612
|
+
type SiteBrand = {
|
|
2613
|
+
slug: string;
|
|
2614
|
+
configureRoute: Pick<SiteRoute, 'path' | 'label'> | null;
|
|
2615
|
+
};
|
|
2616
|
+
//#endregion
|
|
2250
2617
|
//#region src/stats/types.d.ts
|
|
2251
2618
|
type UserStats = {
|
|
2252
2619
|
totalMessages: number;
|
|
@@ -2314,6 +2681,7 @@ type Task = {
|
|
|
2314
2681
|
runs: number;
|
|
2315
2682
|
createdAt: string;
|
|
2316
2683
|
agent: Agent | null;
|
|
2684
|
+
inputs: Record<string, string> | null;
|
|
2317
2685
|
};
|
|
2318
2686
|
type SchedulePreset = {
|
|
2319
2687
|
label: string;
|
|
@@ -2455,4 +2823,4 @@ type CliSessionStatus = {
|
|
|
2455
2823
|
meta: CliSessionMeta | null;
|
|
2456
2824
|
};
|
|
2457
2825
|
//#endregion
|
|
2458
|
-
export { Achievement, Affiliate, AffiliateStatus, AffiliateTier, AffiliateTierName, Agent, AgentActionHistoryEntry, AgentCharacter, AgentDelegatable, AgentEngine, AgentExecuteHandler, AgentExecuteOptions, AgentGender, AgentMessageMeta, AgentMessageOptions,
|
|
2826
|
+
export { Achievement, Affiliate, AffiliateStatus, AffiliateTier, AffiliateTierName, Agent, AgentActionHistoryEntry, AgentCharacter, AgentDelegatable, AgentEngine, AgentExecuteHandler, AgentExecuteOptions, AgentGender, AgentMessageMeta, AgentMessageOptions, AgentPrivate, AgentSettings, AgentSimple, AgentWalletMode, AgentWebhookWarp, AiCostEntry, AiCostsResponse, AiCostsSummary, Alert, ApiToken, AppEnv, AppFile, AppFileType, AppIngestion, BillingAddress, Blueprint, BlueprintOnboardingStep, BlueprintRedirect, BlueprintSettings, BlueprintShortcut, BlueprintTask, BlueprintTeam, BoardSummaryViewable, BookmarkEntry, BrandBackend, BrandIntegration, BrandIntegrationAction, BrandIntegrationProvider, BrandSearchHit, BrandSiteConfig, BrandSourceConfig, Budget, ByokProviderConfig, ByokProviderName, ByokProviders, CalendarProvider, CalendarStatus, Card, Challenge, Challenges, ChangelogEntry, Character, ChatClientAction, ChatClientThought, ChatStreamData, ChatStreamEventType, CliSessionMeta, CliSessionStatus, Contact, ContactActivity, ContactFormData, ContactViewable, Contract, ContractCategoryDisplayNames, ContractCategoryName, ContractCodeMetadata, ContractEntity, ContractOnNetwork, ContractVersion, ContractsAddressConfig, CortexExecuteOptions, Coupon, DefaultCodeMetadata, DemoFlow, DemoMessage, Desk, DeskItem, DeskItemRole, Document, Earning, Element, ElementSpec, ElementType, ElementVariation, EmailProvider, EmbedStatus, EncryptionStatus, Entity, EntityDirectExecuteRequest, EntityProposable, EntitySignable, EntityTemplate, Experience, FileInfo, FileMetadata, Flow, FlowCategory, FlowInputMapping, FlowStatus, FlowStep, GamificationData, GamificationEventType, Goal, GoalCreatePayload, GoalPriority, GoalProgressViewable, GoalStatus, HintOptions, HintPosition, HttpService, IAppResponse, IHttpService, IRequestOptions, IngestionSourceType, IngestionStatus, Inquiry, InquiryStatus, InquiryType, Integration, IntegrationDetails, IntegrationType, Intent, Item, ItemCreatePayload, ItemExecutionStatus, ItemPriority, ItemStatus, ItemUpdatePayload, ItemViewable, JoaiUrls, Kyc, KycStatus, LocalAgentWallet, MarketplaceAgent, MarketplaceCheckoutItem, MarketplaceData, MarketplaceEntityType, MarketplaceInfo, MarketplaceItem, MarketplaceListing, MarketplacePriceTier, MarketplacePricing, MarketplacePurchasable, MarketplacePurchaseResult, McpToolCall, McpToolCallBroadcast, McpToolCallStatus, Media, MediaAttributes, MediaItems, MediaLibraryAttributes, MediaLibraryItems, MediaMime, Meeting, MeetingConferenceProvider, MeetingFeature, MeetingJoinInfo, MeetingJoinTeam, MeetingParticipant, MeetingSessionState, MeetingSpeakerAssignment, MeetingStatus, MeetingTranscriptEntry, MeetingUsage, Memory, Message, MessageId, MessageRole, Milestone, MilestoneType, Mission, MissionBudget, MissionCreatePayload, MissionPlan, MissionPriority, MissionSchedule, MissionStatus, MissionViewable, MultimodalContent, MultimodalFile, Notification, NotificationAction, NotificationAgent, NotificationChannel, NotificationSetting, OG_IMAGE_CONFIG, OG_IMAGE_HEIGHT, OG_IMAGE_WIDTH, OfficeAgent, OfficeEntity, OfficeEntityKind, OfficeLiveOverrides, OfficeMember, OfficeSnapshot, OfficeStatus, OfficeStatusFilter, OfficeTypeFilter, OgImageColors, OgImageParams, OgImageType, Order, OrderItem, OrderStatus, PaymentProvider, PayoutEntry, PeriodTypeLabels, PeriodTypeOptions, PermissionConfigType, PersonaQuestionable, Plan, PlanBenefit, PlanExtra, PlanFeature, PlanInterval, PolicyMethod, PolicySetting, PricingModel, Product, ProductDiscount, ProductPieces, ProductRating, ProductVariation, Project, ProjectAspectRatio, ProjectAssembly, ProjectCaptionStyle, ProjectClipCandidate, ProjectClips, ProjectExport, ProjectExportAsset, ProjectExportResponse, ProjectImages, ProjectInputAssistIntent, ProjectInputAssistResponse, ProjectMutation, ProjectOutputPreset, ProjectOutputType, ProjectPlan, ProjectRender, ProjectRenderMode, ProjectSelectedClip, ProjectShot, ProjectSoundtrack, ProjectSourceMedia, ProjectStatus, ProjectStudioHistoryEntry, ProjectStudioQuestion, ProjectStudioResponse, ProjectStudioStage, ProjectStudioState, ProjectStudioSummary, ProjectStyleDirection, ProjectTranscript, ProjectTranscriptSegment, Proposal, ProposalAction, ProposalActionPayment, ProposalActionPaymentSerializable, ProposalActionSerializable, ProposalPollOption, ProposalStatus, PurchaseOptions, PurchaseResult, RampProvider, RampProviderInfo, Reactions, RecentExperience, Reminder, Room, RoomId, RoomKind, ScInfo, SchedulePreset, SecretAuthorizable, SecretSettable, SendableActivityUpdate, SendableAgentAction, SendableAgentMessage, SendableAgentThought, SendableMedia, SendableUserMessage, Service, Shortcut, Site, SiteAgent, SiteBrand, SiteRoute, SiteTeam, Skill, SkillMediaBindingRole, SkillMediaBindingRoleValue, SkillScope, SkillScopeValue, SkillType, SkillTypeValue, SocialAuthProvider, SocialBot, SocialPlatform, Streak, SubscriptionPlan, Swarm, Task, Team, TeamBrand, TeamFeatureUsage, TeamMember, TeamPrivate, TeamSettings, TeamUsage, Tier, TierFeature, TierName, TranscriptEntry, TranscriptionCorrection, TranscriptionResponse, User, UserInterest, UserMode, UserPrivate, UserRole, UserSettings, UserSocialAccount, UserStats, Wallet, WalletList, WarpApprovable, WarpBackend, WarpBackendCategory, WarpBackendStatus, WarpBatchItem, WarpBatchable, WarpCloudExecutable, WarpCreateable, WarpExecutable, WarpExtras, WarpExtrasFaq, WarpInputable, WarpScreenshotVariant, WarpSearchHit, WarpSelectable, WarpSelectableDetails, WarpSuggestion, WarpTestable, WarpViewable, Webhook, WebhookTriggerEvent, WorkspaceCloudFile, WorkspaceContext, WorkspaceInfo, WorkspaceSettings, XIntegrationStatus, abbreviateNumber, getAgentsBaseUrl, getApiBaseUrl, getAppBaseUrl, getAssetAppLogoUrl, getAssetChainLogoUrl, getAssetPartnerLogoUrl, getAssetTokenLogoUrl, getAssetWalletLogoUrl, getCortexBaseUrl, getDigestBaseUrl, getMarketplaceBaseUrl, getMcpServerAgentUrl, getSiteUrl, getSitesRootDomain, getWarpScreenshotUrl, isFileFormatAudio, isFileFormatImage, isFileFormatVideo, ogImageUrl, resolveWarpText, sanitizeAlphanumeric, sanitizeNumeric, toCurrencyDisplay, toHexEncodedNonce, toNameInitials, toNftId, toPreviewText, withRetry };
|