@vzaps/sdk 0.1.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.
@@ -0,0 +1,560 @@
1
+ type FetchLike = typeof fetch;
2
+ type JsonObject = Record<string, unknown>;
3
+ interface WebSocketLike {
4
+ close(code?: number, reason?: string): void;
5
+ send(data: string): void;
6
+ addEventListener?: (type: string, listener: (event: unknown) => void, options?: unknown) => void;
7
+ removeEventListener?: (type: string, listener: (event: unknown) => void, options?: unknown) => void;
8
+ on?: (type: string, listener: (...args: unknown[]) => void) => void;
9
+ off?: (type: string, listener: (...args: unknown[]) => void) => void;
10
+ }
11
+ type WebSocketFactory = (url: string, headers: Record<string, string>) => WebSocketLike;
12
+ interface VZapsClientOptions {
13
+ clientToken: string;
14
+ clientSecret: string;
15
+ /** @internal SDK development and tests only. Defaults to https://api.vzaps.com */
16
+ baseUrl?: string;
17
+ /** @internal SDK development and tests only. Defaults to wss://realtime.vzaps.com */
18
+ realtimeUrl?: string;
19
+ timeoutMs?: number;
20
+ tokenSkewMs?: number;
21
+ fetch?: FetchLike;
22
+ webSocketFactory?: WebSocketFactory;
23
+ userAgent?: string;
24
+ }
25
+ interface AuthTokenResponse {
26
+ accessToken: string;
27
+ expiresIn: number;
28
+ }
29
+ interface RequestOptions {
30
+ query?: Record<string, string | number | boolean | undefined>;
31
+ body?: unknown;
32
+ headers?: Record<string, string | undefined>;
33
+ signal?: AbortSignal;
34
+ auth?: boolean;
35
+ instanceToken?: string;
36
+ }
37
+ interface InstanceRequestOptions {
38
+ instanceToken?: string;
39
+ signal?: AbortSignal;
40
+ }
41
+ interface PaginatedQuery {
42
+ page?: number;
43
+ pageSize?: number;
44
+ }
45
+ interface InstanceScopedRequest extends JsonObject {
46
+ instanceId: string;
47
+ instanceToken: string;
48
+ }
49
+ interface InstanceCreateRequest extends JsonObject {
50
+ name: string;
51
+ webhook?: string;
52
+ eventsSubscribe?: string[] | string;
53
+ }
54
+ interface InstanceListRequest extends JsonObject {
55
+ page?: number;
56
+ pageSize?: number;
57
+ search?: string;
58
+ sort?: string;
59
+ sortDesc?: boolean;
60
+ }
61
+ interface MessageSendBaseRequest extends InstanceScopedRequest {
62
+ phone: string;
63
+ }
64
+ interface MessageSendTextRequest extends MessageSendBaseRequest {
65
+ message: string;
66
+ }
67
+ interface MessageSendImageRequest extends MessageSendBaseRequest {
68
+ image: string;
69
+ caption?: string;
70
+ }
71
+ interface MessageSendAudioRequest extends MessageSendBaseRequest {
72
+ audio: string;
73
+ ptt?: boolean;
74
+ }
75
+ interface MessageSendDocumentRequest extends MessageSendBaseRequest {
76
+ document: string;
77
+ fileName?: string;
78
+ caption?: string;
79
+ }
80
+ interface MessageSendVideoRequest extends MessageSendBaseRequest {
81
+ video: string;
82
+ caption?: string;
83
+ }
84
+ interface MessageSendStickerRequest extends MessageSendBaseRequest {
85
+ sticker: string;
86
+ }
87
+ interface MessageSendGifRequest extends MessageSendBaseRequest {
88
+ gif: string;
89
+ caption?: string;
90
+ }
91
+ interface MessageSendLocationRequest extends MessageSendBaseRequest {
92
+ latitude: number;
93
+ longitude: number;
94
+ name?: string;
95
+ address?: string;
96
+ }
97
+ interface MessageSendContactRequest extends MessageSendBaseRequest {
98
+ }
99
+ interface MessageButton extends JsonObject {
100
+ id: string;
101
+ text: string;
102
+ }
103
+ interface MessageSendButtonsRequest extends MessageSendBaseRequest {
104
+ message: string;
105
+ buttons: MessageButton[];
106
+ footer?: string;
107
+ }
108
+ interface MessageListRow extends JsonObject {
109
+ id: string;
110
+ title: string;
111
+ description?: string;
112
+ }
113
+ interface MessageListSection extends JsonObject {
114
+ title: string;
115
+ rows: MessageListRow[];
116
+ }
117
+ interface MessageSendListRequest extends MessageSendBaseRequest {
118
+ title: string;
119
+ description: string;
120
+ buttonText: string;
121
+ sections: MessageListSection[];
122
+ footer?: string;
123
+ }
124
+ interface MessageSendLinkRequest extends MessageSendBaseRequest {
125
+ link: string;
126
+ title?: string;
127
+ description?: string;
128
+ jpegThumbnail?: string;
129
+ }
130
+ interface MessageSendPollRequest extends MessageSendBaseRequest {
131
+ name: string;
132
+ options: string[];
133
+ selectableOptionsCount?: number;
134
+ hideParticipantNames?: boolean;
135
+ endTime?: string;
136
+ allowAddOption?: boolean;
137
+ }
138
+ interface MessagePollVoteRequest extends MessageSendBaseRequest {
139
+ messageId: string;
140
+ vote?: string | string[];
141
+ selectedOptions?: string[];
142
+ pollSender?: string;
143
+ fromMe?: boolean;
144
+ }
145
+ interface MessageReactRequest extends MessageSendBaseRequest {
146
+ messageId: string;
147
+ reaction: string;
148
+ }
149
+ interface MessageReactRemoveRequest extends MessageSendBaseRequest {
150
+ messageId: string;
151
+ }
152
+ interface MessagePresenceRequest extends MessageSendBaseRequest {
153
+ state: string;
154
+ media?: string;
155
+ }
156
+ interface MessageMarkReadRequest extends InstanceScopedRequest {
157
+ id: string[];
158
+ chat: string;
159
+ sender?: string;
160
+ }
161
+ interface MessageDownloadRequest extends InstanceScopedRequest {
162
+ }
163
+ interface MessageEditRequest extends InstanceScopedRequest {
164
+ messageId: string;
165
+ message: string;
166
+ }
167
+ interface MessageDeleteRequest extends InstanceScopedRequest {
168
+ messageId: string;
169
+ }
170
+ interface WebhookConfigRequest extends InstanceScopedRequest {
171
+ webhookURL: string;
172
+ events?: string[] | string;
173
+ }
174
+ interface WebhookLogSearchRequest extends InstanceScopedRequest {
175
+ }
176
+ interface WebhookLogRequest extends InstanceScopedRequest {
177
+ logId: string;
178
+ }
179
+ interface ContactAddRequest extends InstanceScopedRequest {
180
+ phone: string;
181
+ firstName: string;
182
+ fullName: string;
183
+ }
184
+ interface UserPhonesRequest extends InstanceScopedRequest {
185
+ phone?: string;
186
+ }
187
+ interface UserAvatarRequest extends InstanceScopedRequest {
188
+ phone?: string;
189
+ }
190
+ interface GroupListRequest extends InstanceScopedRequest, PaginatedQuery {
191
+ }
192
+ interface GroupInfoRequest extends InstanceScopedRequest {
193
+ groupId: string;
194
+ }
195
+ interface GroupInviteLinkRequest extends GroupInfoRequest {
196
+ reset?: boolean;
197
+ }
198
+ interface GroupMutationRequest extends InstanceScopedRequest {
199
+ groupId?: string;
200
+ image?: string;
201
+ name?: string;
202
+ description?: string;
203
+ adminOnlyMessage?: boolean;
204
+ adminOnlySettings?: boolean;
205
+ delayMessage?: number;
206
+ groupName?: string;
207
+ groupDescription?: string;
208
+ groupImage?: string;
209
+ participants?: string[];
210
+ }
211
+ interface QueueRequest extends InstanceScopedRequest {
212
+ }
213
+ interface QueueMessageRequest extends InstanceScopedRequest {
214
+ messageId: string;
215
+ }
216
+ interface TypebotRequest extends InstanceScopedRequest {
217
+ enabled?: boolean;
218
+ description?: string;
219
+ typebotUrl?: string;
220
+ publicId?: string;
221
+ triggerType?: string;
222
+ triggerOperator?: string;
223
+ triggerValue?: string;
224
+ priority?: number;
225
+ expireInMinutes?: number;
226
+ keywordFinish?: string;
227
+ defaultDelayMs?: number;
228
+ unknownMessage?: string;
229
+ listenFromMe?: boolean;
230
+ stopBotFromMe?: boolean;
231
+ keepOpen?: boolean;
232
+ debounceMs?: number;
233
+ ignoreGroups?: boolean;
234
+ transcribeAudio?: boolean;
235
+ }
236
+ interface TypebotMutationRequest extends TypebotRequest {
237
+ typebotId: string;
238
+ }
239
+ interface TypebotSessionRequest extends InstanceScopedRequest {
240
+ session: string;
241
+ }
242
+ interface TypebotStartSessionRequest extends InstanceScopedRequest {
243
+ typebotId?: string;
244
+ publicId?: string;
245
+ phone: string;
246
+ pushName?: string;
247
+ message: string;
248
+ }
249
+ interface ChatwootRequest extends InstanceScopedRequest {
250
+ enabled?: boolean;
251
+ url?: string;
252
+ accountId?: string;
253
+ token?: string;
254
+ nameInbox?: string;
255
+ signMsg?: boolean;
256
+ signDelimiter?: string;
257
+ number?: string;
258
+ reopenConversation?: boolean;
259
+ conversationPending?: boolean;
260
+ importContacts?: boolean;
261
+ importMessages?: boolean;
262
+ daysLimitImportMessages?: number;
263
+ autoCreate?: boolean;
264
+ organization?: string;
265
+ logo?: string;
266
+ ignoreJids?: unknown;
267
+ ignoreGroups?: boolean;
268
+ }
269
+ type ChatwootImportScope = 'contacts' | 'messages' | 'all';
270
+ interface ChatwootImportRequest extends InstanceScopedRequest {
271
+ what: ChatwootImportScope;
272
+ }
273
+ interface ChatRequest extends InstanceScopedRequest {
274
+ phone: string;
275
+ }
276
+ interface ChatListRequest extends InstanceScopedRequest, PaginatedQuery {
277
+ }
278
+ interface ChatDeleteRequest extends ChatRequest {
279
+ deleteMedia?: boolean;
280
+ }
281
+ interface ChatMuteRequest extends ChatRequest {
282
+ durationSeconds?: number;
283
+ }
284
+ interface ChatClearRequest extends ChatRequest {
285
+ deleteMedia?: boolean;
286
+ }
287
+ interface ChatExpirationRequest extends ChatRequest {
288
+ expiration: '24_HOURS' | '7_DAYS' | '90_DAYS' | 'OFF' | (string & {});
289
+ }
290
+ type VZapsEventType = 'Message' | 'ReadReceipt' | 'Presence' | 'HistorySync' | 'ChatPresence' | 'Connected' | 'Disconnected' | 'GroupParticipantsAdd' | 'GroupParticipantsRemove' | 'All' | (string & {});
291
+ interface VZapsEvent<TData = unknown> {
292
+ id: string;
293
+ type: VZapsEventType;
294
+ instance_id: string;
295
+ created_at: string;
296
+ data: TData;
297
+ }
298
+ interface EventSubscribeRequest {
299
+ instanceId: string;
300
+ events?: VZapsEventType[];
301
+ instanceToken: string;
302
+ signal?: AbortSignal;
303
+ reconnect?: boolean;
304
+ maxRetries?: number;
305
+ retryDelayMs?: number;
306
+ lastEventId?: string;
307
+ }
308
+ type EventHandler<TEvent = VZapsEvent> = (event: TEvent) => void | Promise<void>;
309
+ type ErrorHandler = (error: unknown) => void;
310
+
311
+ declare class HttpClient {
312
+ readonly baseUrl: string;
313
+ readonly realtimeUrl?: string;
314
+ readonly clientToken: string;
315
+ readonly clientSecret: string;
316
+ private readonly fetchImpl;
317
+ private readonly timeoutMs;
318
+ private readonly tokenSkewMs;
319
+ private readonly userAgent?;
320
+ private cachedToken?;
321
+ private pendingToken?;
322
+ constructor(options: VZapsClientOptions);
323
+ getAccessToken(signal?: AbortSignal): Promise<string>;
324
+ request<T>(method: string, path: string, options?: RequestOptions): Promise<T>;
325
+ buildRealtimeUrl(path: string, query?: Record<string, string | number | boolean | undefined>): string;
326
+ private requestToken;
327
+ private buildUrl;
328
+ private fetchWithTimeout;
329
+ }
330
+
331
+ declare class EventsResource {
332
+ private readonly http;
333
+ private readonly webSocketFactory?;
334
+ constructor(http: HttpClient, webSocketFactory?: WebSocketFactory | undefined);
335
+ subscribe(request: EventSubscribeRequest): Promise<EventSubscription>;
336
+ }
337
+ declare class EventSubscription {
338
+ private readonly http;
339
+ private readonly request;
340
+ private readonly webSocketFactory?;
341
+ private readonly handlers;
342
+ private readonly errorHandlers;
343
+ private readonly lifecycleHandlers;
344
+ private socket?;
345
+ private closed;
346
+ private retryCount;
347
+ constructor(http: HttpClient, request: EventSubscribeRequest, webSocketFactory?: WebSocketFactory | undefined);
348
+ open(): Promise<void>;
349
+ on<TEvent extends VZapsEvent = VZapsEvent>(event: string, handler: EventHandler<TEvent>): this;
350
+ off<TEvent extends VZapsEvent = VZapsEvent>(event: string, handler: EventHandler<TEvent>): this;
351
+ close(code?: number, reason?: string): Promise<void>;
352
+ private createSocket;
353
+ private bindSocket;
354
+ private dispatch;
355
+ private ack;
356
+ private reconnectIfNeeded;
357
+ private addLifecycleHandler;
358
+ private emitLifecycle;
359
+ private emitError;
360
+ }
361
+
362
+ type SignalOptions = {
363
+ signal?: AbortSignal;
364
+ };
365
+ declare class AuthResource {
366
+ private readonly http;
367
+ constructor(http: HttpClient);
368
+ getAccessToken(signal?: AbortSignal): Promise<string>;
369
+ }
370
+ declare class InstancesResource {
371
+ private readonly http;
372
+ constructor(http: HttpClient);
373
+ create<TResponse = unknown>(data: InstanceCreateRequest, options?: {
374
+ signal?: AbortSignal;
375
+ }): Promise<TResponse>;
376
+ list<TResponse = unknown>(data?: InstanceListRequest, options?: {
377
+ signal?: AbortSignal;
378
+ }): Promise<TResponse>;
379
+ get<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
380
+ update<TResponse = unknown>(instanceId: string, data: Record<string, unknown>, options?: InstanceRequestOptions): Promise<TResponse>;
381
+ restart<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
382
+ delete<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
383
+ provision<TResponse = unknown>(data: InstanceCreateRequest, options?: SignalOptions): Promise<TResponse>;
384
+ search<TResponse = unknown>(data: Record<string, unknown>, options?: SignalOptions): Promise<TResponse>;
385
+ subscribe<TResponse = unknown>(instanceId: string, data?: Record<string, unknown>, options?: InstanceRequestOptions): Promise<TResponse>;
386
+ resumeSubscription<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
387
+ cancel<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
388
+ }
389
+ declare class MessagesResource {
390
+ private readonly http;
391
+ constructor(http: HttpClient);
392
+ sendText<TResponse = unknown>(request: MessageSendTextRequest, options?: {
393
+ signal?: AbortSignal;
394
+ }): Promise<TResponse>;
395
+ sendImage<TResponse = unknown>(request: MessageSendImageRequest, options?: SignalOptions): Promise<TResponse>;
396
+ sendAudio<TResponse = unknown>(request: MessageSendAudioRequest, options?: SignalOptions): Promise<TResponse>;
397
+ sendDocument<TResponse = unknown>(request: MessageSendDocumentRequest, options?: SignalOptions): Promise<TResponse>;
398
+ sendVideo<TResponse = unknown>(request: MessageSendVideoRequest, options?: SignalOptions): Promise<TResponse>;
399
+ sendSticker<TResponse = unknown>(request: MessageSendStickerRequest, options?: SignalOptions): Promise<TResponse>;
400
+ sendGif<TResponse = unknown>(request: MessageSendGifRequest, options?: SignalOptions): Promise<TResponse>;
401
+ sendLocation<TResponse = unknown>(request: MessageSendLocationRequest, options?: SignalOptions): Promise<TResponse>;
402
+ sendContact<TResponse = unknown>(request: MessageSendContactRequest, options?: SignalOptions): Promise<TResponse>;
403
+ sendButtons<TResponse = unknown>(request: MessageSendButtonsRequest, options?: SignalOptions): Promise<TResponse>;
404
+ sendList<TResponse = unknown>(request: MessageSendListRequest, options?: SignalOptions): Promise<TResponse>;
405
+ sendLink<TResponse = unknown>(request: MessageSendLinkRequest, options?: SignalOptions): Promise<TResponse>;
406
+ sendPoll<TResponse = unknown>(request: MessageSendPollRequest, options?: SignalOptions): Promise<TResponse>;
407
+ pollVote<TResponse = unknown>(request: MessagePollVoteRequest, options?: SignalOptions): Promise<TResponse>;
408
+ react<TResponse = unknown>(request: MessageReactRequest, options?: SignalOptions): Promise<TResponse>;
409
+ removeReaction<TResponse = unknown>(request: MessageReactRemoveRequest, options?: SignalOptions): Promise<TResponse>;
410
+ presence<TResponse = unknown>(request: MessagePresenceRequest, options?: SignalOptions): Promise<TResponse>;
411
+ markRead<TResponse = unknown>(request: MessageMarkReadRequest, options?: SignalOptions): Promise<TResponse>;
412
+ downloadImage<TResponse = unknown>(request: MessageDownloadRequest, options?: SignalOptions): Promise<TResponse>;
413
+ downloadVideo<TResponse = unknown>(request: MessageDownloadRequest, options?: SignalOptions): Promise<TResponse>;
414
+ downloadAudio<TResponse = unknown>(request: MessageDownloadRequest, options?: SignalOptions): Promise<TResponse>;
415
+ downloadDocument<TResponse = unknown>(request: MessageDownloadRequest, options?: SignalOptions): Promise<TResponse>;
416
+ edit<TResponse = unknown>(request: MessageEditRequest, options?: SignalOptions): Promise<TResponse>;
417
+ delete<TResponse = unknown>(request: MessageDeleteRequest, options?: SignalOptions): Promise<TResponse>;
418
+ send<TResponse = unknown>(instanceId: string, path: string, body: Record<string, unknown>, options?: InstanceRequestOptions): Promise<TResponse>;
419
+ private post;
420
+ private sendRequest;
421
+ }
422
+ declare class WebhooksResource {
423
+ private readonly http;
424
+ constructor(http: HttpClient);
425
+ get<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
426
+ set<TResponse = unknown>(request: WebhookConfigRequest, options?: {
427
+ signal?: AbortSignal;
428
+ }): Promise<TResponse>;
429
+ searchLogs<TResponse = unknown>(request: WebhookLogSearchRequest, options?: SignalOptions): Promise<TResponse>;
430
+ getLog<TResponse = unknown>(request: WebhookLogRequest, options?: SignalOptions): Promise<TResponse>;
431
+ retryLog<TResponse = unknown>(request: WebhookLogRequest, options?: SignalOptions): Promise<TResponse>;
432
+ }
433
+ declare class ContactsResource {
434
+ private readonly http;
435
+ constructor(http: HttpClient);
436
+ list<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
437
+ add<TResponse = unknown>(request: ContactAddRequest, options?: {
438
+ signal?: AbortSignal;
439
+ }): Promise<TResponse>;
440
+ }
441
+ declare class GroupsResource {
442
+ private readonly http;
443
+ constructor(http: HttpClient);
444
+ list<TResponse = unknown>(request: GroupListRequest, options?: {
445
+ signal?: AbortSignal;
446
+ }): Promise<TResponse>;
447
+ get<TResponse = unknown>(request: GroupInfoRequest, options?: {
448
+ signal?: AbortSignal;
449
+ }): Promise<TResponse>;
450
+ inviteLink<TResponse = unknown>(request: GroupInviteLinkRequest, options?: SignalOptions): Promise<TResponse>;
451
+ setPhoto<TResponse = unknown>(request: GroupMutationRequest, options?: SignalOptions): Promise<TResponse>;
452
+ setName<TResponse = unknown>(request: GroupMutationRequest, options?: SignalOptions): Promise<TResponse>;
453
+ setDescription<TResponse = unknown>(request: GroupMutationRequest, options?: SignalOptions): Promise<TResponse>;
454
+ setSettings<TResponse = unknown>(request: GroupMutationRequest, options?: SignalOptions): Promise<TResponse>;
455
+ create<TResponse = unknown>(request: GroupMutationRequest, options?: SignalOptions): Promise<TResponse>;
456
+ addAdmin<TResponse = unknown>(request: GroupMutationRequest, options?: SignalOptions): Promise<TResponse>;
457
+ removeAdmin<TResponse = unknown>(request: GroupMutationRequest, options?: SignalOptions): Promise<TResponse>;
458
+ }
459
+ declare class SessionsResource {
460
+ private readonly http;
461
+ constructor(http: HttpClient);
462
+ status<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
463
+ qr<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
464
+ pairCode<TResponse = unknown>(instanceId: string, phone: string, options?: InstanceRequestOptions): Promise<TResponse>;
465
+ disconnect<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
466
+ }
467
+ declare class UsersResource {
468
+ private readonly http;
469
+ constructor(http: HttpClient);
470
+ info<TResponse = unknown>(request: UserPhonesRequest, options?: SignalOptions): Promise<TResponse>;
471
+ check<TResponse = unknown>(request: UserPhonesRequest, options?: SignalOptions): Promise<TResponse>;
472
+ avatar<TResponse = unknown>(request: UserAvatarRequest, options?: SignalOptions): Promise<TResponse>;
473
+ contacts<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
474
+ }
475
+ declare class QueuesResource {
476
+ private readonly http;
477
+ constructor(http: HttpClient);
478
+ listMessages<TResponse = unknown>(request: QueueRequest, options?: SignalOptions): Promise<TResponse>;
479
+ purgeMessages<TResponse = unknown>(request: QueueRequest, options?: SignalOptions): Promise<TResponse>;
480
+ removeMessage<TResponse = unknown>(request: QueueMessageRequest, options?: SignalOptions): Promise<TResponse>;
481
+ listOperations<TResponse = unknown>(request: QueueRequest, options?: SignalOptions): Promise<TResponse>;
482
+ purgeOperations<TResponse = unknown>(request: QueueRequest, options?: SignalOptions): Promise<TResponse>;
483
+ removeOperation<TResponse = unknown>(request: QueueMessageRequest, options?: SignalOptions): Promise<TResponse>;
484
+ }
485
+ declare class TypebotsResource {
486
+ private readonly http;
487
+ constructor(http: HttpClient);
488
+ list<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
489
+ create<TResponse = unknown>(request: TypebotRequest, options?: SignalOptions): Promise<TResponse>;
490
+ update<TResponse = unknown>(request: TypebotMutationRequest, options?: SignalOptions): Promise<TResponse>;
491
+ delete<TResponse = unknown>(request: TypebotMutationRequest, options?: SignalOptions): Promise<TResponse>;
492
+ listSessions<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
493
+ startSession<TResponse = unknown>(request: TypebotStartSessionRequest, options?: SignalOptions): Promise<TResponse>;
494
+ closeSession<TResponse = unknown>(request: TypebotSessionRequest, options?: SignalOptions): Promise<TResponse>;
495
+ pauseSession<TResponse = unknown>(request: TypebotSessionRequest, options?: SignalOptions): Promise<TResponse>;
496
+ }
497
+ declare class ChatwootResource {
498
+ private readonly http;
499
+ constructor(http: HttpClient);
500
+ get<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
501
+ set<TResponse = unknown>(request: ChatwootRequest, options?: SignalOptions): Promise<TResponse>;
502
+ delete<TResponse = unknown>(instanceId: string, options?: InstanceRequestOptions): Promise<TResponse>;
503
+ triggerImport<TResponse = unknown>(request: ChatwootImportRequest, options?: SignalOptions): Promise<TResponse>;
504
+ }
505
+ declare class ChatsResource {
506
+ private readonly http;
507
+ constructor(http: HttpClient);
508
+ list<TResponse = unknown>(request: ChatListRequest, options?: SignalOptions): Promise<TResponse>;
509
+ get<TResponse = unknown>(request: ChatRequest, options?: SignalOptions): Promise<TResponse>;
510
+ archive<TResponse = unknown>(request: ChatRequest, options?: SignalOptions): Promise<TResponse>;
511
+ unarchive<TResponse = unknown>(request: ChatRequest, options?: SignalOptions): Promise<TResponse>;
512
+ mute<TResponse = unknown>(request: ChatMuteRequest, options?: SignalOptions): Promise<TResponse>;
513
+ unmute<TResponse = unknown>(request: ChatRequest, options?: SignalOptions): Promise<TResponse>;
514
+ pin<TResponse = unknown>(request: ChatRequest, options?: SignalOptions): Promise<TResponse>;
515
+ unpin<TResponse = unknown>(request: ChatRequest, options?: SignalOptions): Promise<TResponse>;
516
+ read<TResponse = unknown>(request: ChatRequest, options?: SignalOptions): Promise<TResponse>;
517
+ unread<TResponse = unknown>(request: ChatRequest, options?: SignalOptions): Promise<TResponse>;
518
+ clear<TResponse = unknown>(request: ChatClearRequest, options?: SignalOptions): Promise<TResponse>;
519
+ delete<TResponse = unknown>(request: ChatDeleteRequest, options?: SignalOptions): Promise<TResponse>;
520
+ setExpiration<TResponse = unknown>(request: ChatExpirationRequest, options?: SignalOptions): Promise<TResponse>;
521
+ private chatAction;
522
+ }
523
+
524
+ declare class VZapsClient {
525
+ readonly auth: AuthResource;
526
+ readonly instances: InstancesResource;
527
+ readonly sessions: SessionsResource;
528
+ readonly messages: MessagesResource;
529
+ readonly webhooks: WebhooksResource;
530
+ readonly contacts: ContactsResource;
531
+ readonly groups: GroupsResource;
532
+ readonly users: UsersResource;
533
+ readonly queues: QueuesResource;
534
+ readonly typebots: TypebotsResource;
535
+ readonly chatwoot: ChatwootResource;
536
+ readonly chats: ChatsResource;
537
+ readonly events: EventsResource;
538
+ private readonly http;
539
+ constructor(options: VZapsClientOptions);
540
+ request<TResponse = unknown>(method: string, path: string, options?: RequestOptions): Promise<TResponse>;
541
+ }
542
+
543
+ declare class VZapsError extends Error {
544
+ readonly status?: number;
545
+ readonly code?: string;
546
+ readonly details?: unknown;
547
+ constructor(message: string, options?: {
548
+ status?: number;
549
+ code?: string;
550
+ details?: unknown;
551
+ });
552
+ }
553
+ declare class VZapsAuthenticationError extends VZapsError {
554
+ constructor(message?: string, details?: unknown);
555
+ }
556
+ declare class VZapsTimeoutError extends VZapsError {
557
+ constructor(message?: string);
558
+ }
559
+
560
+ export { AuthResource, type AuthTokenResponse, type ChatClearRequest, type ChatDeleteRequest, type ChatExpirationRequest, type ChatListRequest, type ChatMuteRequest, type ChatRequest, ChatsResource, type ChatwootImportRequest, type ChatwootImportScope, type ChatwootRequest, ChatwootResource, type ContactAddRequest, ContactsResource, type ErrorHandler, type EventHandler, type EventSubscribeRequest, EventSubscription, EventsResource, type FetchLike, type GroupInfoRequest, type GroupInviteLinkRequest, type GroupListRequest, type GroupMutationRequest, GroupsResource, type InstanceCreateRequest, type InstanceListRequest, type InstanceRequestOptions, type InstanceScopedRequest, InstancesResource, type JsonObject, type MessageButton, type MessageDeleteRequest, type MessageDownloadRequest, type MessageEditRequest, type MessageListRow, type MessageListSection, type MessageMarkReadRequest, type MessagePollVoteRequest, type MessagePresenceRequest, type MessageReactRemoveRequest, type MessageReactRequest, type MessageSendAudioRequest, type MessageSendBaseRequest, type MessageSendButtonsRequest, type MessageSendContactRequest, type MessageSendDocumentRequest, type MessageSendGifRequest, type MessageSendImageRequest, type MessageSendLinkRequest, type MessageSendListRequest, type MessageSendLocationRequest, type MessageSendPollRequest, type MessageSendStickerRequest, type MessageSendTextRequest, type MessageSendVideoRequest, MessagesResource, type PaginatedQuery, type QueueMessageRequest, type QueueRequest, QueuesResource, type RequestOptions, SessionsResource, type TypebotMutationRequest, type TypebotRequest, type TypebotSessionRequest, type TypebotStartSessionRequest, TypebotsResource, type UserAvatarRequest, type UserPhonesRequest, UsersResource, VZapsAuthenticationError, VZapsClient, type VZapsClientOptions, VZapsError, type VZapsEvent, type VZapsEventType, VZapsTimeoutError, type WebSocketFactory, type WebSocketLike, type WebhookConfigRequest, type WebhookLogRequest, type WebhookLogSearchRequest, WebhooksResource };