@gymspace/evolution 1.0.0 → 1.0.2
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 +26 -19
- package/dist/index.d.ts +26 -19
- package/dist/index.js +173 -62
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +173 -62
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -3
- package/src/api/errors.ts +0 -220
- package/src/api/routes.ts +0 -76
- package/src/api/service.ts +0 -141
- package/src/index.ts +0 -89
- package/src/modules/chats/index.ts +0 -253
- package/src/modules/chats/schemas/archive.ts +0 -15
- package/src/modules/chats/schemas/check.ts +0 -20
- package/src/modules/chats/schemas/delete-message.ts +0 -16
- package/src/modules/chats/schemas/fetch-profile-picture.ts +0 -13
- package/src/modules/chats/schemas/find-all.ts +0 -49
- package/src/modules/chats/schemas/find-contacts.ts +0 -17
- package/src/modules/chats/schemas/find-messages.ts +0 -55
- package/src/modules/chats/schemas/find-status-message.ts +0 -11
- package/src/modules/chats/schemas/get-base64-from-media-message.ts +0 -20
- package/src/modules/chats/schemas/index.ts +0 -33
- package/src/modules/chats/schemas/mark-as-read.ts +0 -20
- package/src/modules/chats/schemas/mark-as-unread.ts +0 -17
- package/src/modules/chats/schemas/presence.ts +0 -41
- package/src/modules/chats/schemas/update-message.ts +0 -16
- package/src/modules/groups/index.ts +0 -246
- package/src/modules/groups/schemas/accept-invite-code.ts +0 -14
- package/src/modules/groups/schemas/common.ts +0 -89
- package/src/modules/groups/schemas/create.ts +0 -15
- package/src/modules/groups/schemas/fetch-invite-code.ts +0 -13
- package/src/modules/groups/schemas/find-all.ts +0 -26
- package/src/modules/groups/schemas/find-by-invite-code.ts +0 -39
- package/src/modules/groups/schemas/find-by-jid.ts +0 -14
- package/src/modules/groups/schemas/find-members.ts +0 -16
- package/src/modules/groups/schemas/index.ts +0 -24
- package/src/modules/groups/schemas/leave.ts +0 -14
- package/src/modules/groups/schemas/revoke-invite-code.ts +0 -14
- package/src/modules/groups/schemas/send-group-invite.ts +0 -15
- package/src/modules/groups/schemas/toggle-ephemeral.ts +0 -15
- package/src/modules/groups/schemas/update-description.ts +0 -15
- package/src/modules/groups/schemas/update-members.ts +0 -18
- package/src/modules/groups/schemas/update-picture.ts +0 -15
- package/src/modules/groups/schemas/update-setting.ts +0 -16
- package/src/modules/groups/schemas/update-subject.ts +0 -15
- package/src/modules/index.ts +0 -7
- package/src/modules/instance/index.ts +0 -126
- package/src/modules/instance/schemas/connect.ts +0 -14
- package/src/modules/instance/schemas/connection-state.ts +0 -16
- package/src/modules/instance/schemas/create.ts +0 -99
- package/src/modules/instance/schemas/delete.ts +0 -21
- package/src/modules/instance/schemas/fetch-all.ts +0 -57
- package/src/modules/instance/schemas/index.ts +0 -8
- package/src/modules/instance/schemas/logout.ts +0 -22
- package/src/modules/instance/schemas/restart.ts +0 -13
- package/src/modules/instance/schemas/set-presence.ts +0 -20
- package/src/modules/messages/index.ts +0 -246
- package/src/modules/messages/schemas/audio.ts +0 -12
- package/src/modules/messages/schemas/base.ts +0 -11
- package/src/modules/messages/schemas/contact.ts +0 -70
- package/src/modules/messages/schemas/document.ts +0 -12
- package/src/modules/messages/schemas/image.ts +0 -12
- package/src/modules/messages/schemas/index.ts +0 -31
- package/src/modules/messages/schemas/list.ts +0 -36
- package/src/modules/messages/schemas/location.ts +0 -76
- package/src/modules/messages/schemas/media.ts +0 -51
- package/src/modules/messages/schemas/poll.ts +0 -87
- package/src/modules/messages/schemas/reaction.ts +0 -21
- package/src/modules/messages/schemas/status.ts +0 -18
- package/src/modules/messages/schemas/sticker.ts +0 -77
- package/src/modules/messages/schemas/template.ts +0 -39
- package/src/modules/messages/schemas/text.ts +0 -88
- package/src/modules/messages/schemas/video.ts +0 -12
- package/src/modules/messages/schemas/voice.ts +0 -94
- package/src/modules/profile/index.ts +0 -110
- package/src/modules/profile/schemas/fetch-business-profile.ts +0 -29
- package/src/modules/profile/schemas/fetch-privacy-settings.ts +0 -11
- package/src/modules/profile/schemas/fetch-profile.ts +0 -23
- package/src/modules/profile/schemas/index.ts +0 -8
- package/src/modules/profile/schemas/remove-picture.ts +0 -4
- package/src/modules/profile/schemas/update-name.ts +0 -11
- package/src/modules/profile/schemas/update-picture.ts +0 -11
- package/src/modules/profile/schemas/update-privacy-settings.ts +0 -18
- package/src/modules/profile/schemas/update-status.ts +0 -11
- package/src/modules/settings/index.ts +0 -28
- package/src/modules/settings/schemas/find.ts +0 -11
- package/src/modules/settings/schemas/index.ts +0 -2
- package/src/modules/settings/schemas/set.ts +0 -18
- package/src/modules/webhook/index.ts +0 -28
- package/src/modules/webhook/schemas/find.ts +0 -7
- package/src/modules/webhook/schemas/index.ts +0 -2
- package/src/modules/webhook/schemas/set.ts +0 -16
- package/src/schemas/client.ts +0 -23
- package/src/schemas/common.ts +0 -44
- package/src/types/api.ts +0 -17
- package/src/types/events.ts +0 -53
- package/src/types/messages.ts +0 -5
- package/src/types/tags.ts +0 -14
- package/src/types/webhooks.ts +0 -255
- package/src/utils/phone-numer-from-jid.ts +0 -9
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
import { BaseMessageOptions } from "./base";
|
|
3
|
-
|
|
4
|
-
// Response interface from API (no transformer)
|
|
5
|
-
export interface ContactMessageResponse {
|
|
6
|
-
key: {
|
|
7
|
-
remoteJid: string;
|
|
8
|
-
fromMe?: boolean;
|
|
9
|
-
id: string;
|
|
10
|
-
};
|
|
11
|
-
message: {
|
|
12
|
-
contactMessage?: {
|
|
13
|
-
displayName: string;
|
|
14
|
-
vcard: string;
|
|
15
|
-
contextInfo?: Record<string, unknown>;
|
|
16
|
-
};
|
|
17
|
-
contactsArrayMessage?: {
|
|
18
|
-
contacts: {
|
|
19
|
-
displayName: string;
|
|
20
|
-
vcard: string;
|
|
21
|
-
}[];
|
|
22
|
-
};
|
|
23
|
-
};
|
|
24
|
-
messageTimestamp: string | number | Date;
|
|
25
|
-
status?: string;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
// Request interfaces
|
|
29
|
-
export interface Contact {
|
|
30
|
-
/**
|
|
31
|
-
* Contact display name
|
|
32
|
-
*/
|
|
33
|
-
fullName?: string;
|
|
34
|
-
/**
|
|
35
|
-
* Contact phone number
|
|
36
|
-
*/
|
|
37
|
-
phoneNumber: string;
|
|
38
|
-
/**
|
|
39
|
-
* Contact organization
|
|
40
|
-
*/
|
|
41
|
-
organization?: string;
|
|
42
|
-
/**
|
|
43
|
-
* Contact email
|
|
44
|
-
*/
|
|
45
|
-
email?: string;
|
|
46
|
-
/**
|
|
47
|
-
* Contact website url
|
|
48
|
-
*/
|
|
49
|
-
url?: string;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
export type ContactMessageContact = Omit<Contact, "fullName"> & {
|
|
53
|
-
/**
|
|
54
|
-
* Contact display name
|
|
55
|
-
*/
|
|
56
|
-
fullName?: string;
|
|
57
|
-
/**
|
|
58
|
-
* WhatsApp user id (JID or WUID)
|
|
59
|
-
*/
|
|
60
|
-
wuid: string;
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
export interface ContactMessageOptions extends BaseMessageOptions {
|
|
64
|
-
/**
|
|
65
|
-
* Contact list
|
|
66
|
-
*/
|
|
67
|
-
contact: [ContactMessageContact, ...ContactMessageContact[]];
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
// No additional response typing; API returns raw shape above
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
import { MediaMessageOptions, MediaMessageResponse } from "./media";
|
|
3
|
-
|
|
4
|
-
// Request interfaces
|
|
5
|
-
export interface DocumentMessageOptions extends MediaMessageOptions {}
|
|
6
|
-
|
|
7
|
-
// Response interfaces
|
|
8
|
-
export interface DocumentMessageResponse extends MediaMessageResponse {
|
|
9
|
-
message: MediaMessageResponse["message"] & {
|
|
10
|
-
documentMessage: MediaMessageResponse["message"]["documentMessage"];
|
|
11
|
-
};
|
|
12
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
import { MediaMessageOptions, MediaMessageResponse } from "./media";
|
|
3
|
-
|
|
4
|
-
// Request interfaces
|
|
5
|
-
export interface ImageMessageOptions extends MediaMessageOptions {}
|
|
6
|
-
|
|
7
|
-
// Response interfaces
|
|
8
|
-
export interface ImageMessageResponse extends MediaMessageResponse {
|
|
9
|
-
message: MediaMessageResponse["message"] & {
|
|
10
|
-
imageMessage: MediaMessageResponse["message"]["imageMessage"];
|
|
11
|
-
};
|
|
12
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
export type { AudioMessageOptions, AudioMessageResponse } from "./audio";
|
|
2
|
-
export type { BaseMessageOptions } from "./base";
|
|
3
|
-
export type {
|
|
4
|
-
ContactMessageOptions,
|
|
5
|
-
ContactMessageResponse,
|
|
6
|
-
ContactMessageContact,
|
|
7
|
-
} from "./contact";
|
|
8
|
-
export type {
|
|
9
|
-
DocumentMessageOptions,
|
|
10
|
-
DocumentMessageResponse,
|
|
11
|
-
} from "./document";
|
|
12
|
-
export type { ImageMessageOptions, ImageMessageResponse } from "./image";
|
|
13
|
-
export type { ListMessageOptions, ListMessageResponse } from "./list";
|
|
14
|
-
export type {
|
|
15
|
-
LocationMessageOptions,
|
|
16
|
-
LocationMessageResponse,
|
|
17
|
-
} from "./location";
|
|
18
|
-
export type { PollMessageOptions, PollMessageResponse } from "./poll";
|
|
19
|
-
export type {
|
|
20
|
-
ReactionMessageOptions,
|
|
21
|
-
ReactionMessageResponse,
|
|
22
|
-
} from "./reaction";
|
|
23
|
-
export type { StatusMessageOptions, StatusMessageResponse } from "./status";
|
|
24
|
-
export type { StickerMessageOptions, StickerMessageResponse } from "./sticker";
|
|
25
|
-
export type {
|
|
26
|
-
TemplateMessageOptions,
|
|
27
|
-
TemplateMessageResponse,
|
|
28
|
-
} from "./template";
|
|
29
|
-
export type { TextMessageOptions, TextMessageResponse } from "./text";
|
|
30
|
-
export type { VideoMessageOptions, VideoMessageResponse } from "./video";
|
|
31
|
-
export type { VoiceMessageOptions, VoiceMessageResponse } from "./voice";
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
import type { ChatId, MessageId } from "@/types/tags";
|
|
3
|
-
|
|
4
|
-
export interface Row {
|
|
5
|
-
title: string;
|
|
6
|
-
description?: string;
|
|
7
|
-
rowId: string;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export interface Section {
|
|
11
|
-
title: string;
|
|
12
|
-
rows: Row[];
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export interface ListMessageOptions {
|
|
16
|
-
number: ChatId;
|
|
17
|
-
buttonText: string;
|
|
18
|
-
text: string;
|
|
19
|
-
title?: string;
|
|
20
|
-
footer?: string;
|
|
21
|
-
sections: Section[];
|
|
22
|
-
options?: {
|
|
23
|
-
delay?: number;
|
|
24
|
-
messageId?: MessageId;
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export interface ListMessageResponse {
|
|
29
|
-
key: {
|
|
30
|
-
remoteJid: ChatId;
|
|
31
|
-
fromMe: boolean;
|
|
32
|
-
id: MessageId;
|
|
33
|
-
};
|
|
34
|
-
messageTimestamp: string;
|
|
35
|
-
status: string;
|
|
36
|
-
}
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
import { Jid, MessageId } from "@/types/tags";
|
|
3
|
-
import { phoneNumberFromJid } from "@/utils/phone-numer-from-jid";
|
|
4
|
-
import { BaseMessageOptions } from "./base";
|
|
5
|
-
|
|
6
|
-
// Raw response interface from API
|
|
7
|
-
export interface LocationMessageResponseRaw {
|
|
8
|
-
key: {
|
|
9
|
-
remoteJid: string;
|
|
10
|
-
id: string;
|
|
11
|
-
};
|
|
12
|
-
message: {
|
|
13
|
-
locationMessage: {
|
|
14
|
-
degreesLatitude: number;
|
|
15
|
-
degreesLongitude: number;
|
|
16
|
-
name: string;
|
|
17
|
-
address: string;
|
|
18
|
-
};
|
|
19
|
-
};
|
|
20
|
-
messageTimestamp: string | Date;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
// Request interfaces
|
|
24
|
-
export interface LocationMessageOptions extends BaseMessageOptions {
|
|
25
|
-
/**
|
|
26
|
-
* Location name
|
|
27
|
-
*/
|
|
28
|
-
name: string;
|
|
29
|
-
/**
|
|
30
|
-
* Location address
|
|
31
|
-
*/
|
|
32
|
-
address: string;
|
|
33
|
-
/**
|
|
34
|
-
* Location latitude
|
|
35
|
-
*/
|
|
36
|
-
latitude: number;
|
|
37
|
-
/**
|
|
38
|
-
* Location longitude
|
|
39
|
-
*/
|
|
40
|
-
longitude: number;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
// Response interfaces
|
|
44
|
-
export interface LocationMessageResponse {
|
|
45
|
-
receiver: {
|
|
46
|
-
phoneNumber: string;
|
|
47
|
-
jid: Jid;
|
|
48
|
-
};
|
|
49
|
-
location: {
|
|
50
|
-
latitude: number;
|
|
51
|
-
longitude: number;
|
|
52
|
-
name: string;
|
|
53
|
-
address: string;
|
|
54
|
-
};
|
|
55
|
-
id: MessageId;
|
|
56
|
-
timestamp: Date;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
// Transform function
|
|
60
|
-
export const LocationMessageResponseTransform = (data: LocationMessageResponseRaw): LocationMessageResponse => ({
|
|
61
|
-
receiver: {
|
|
62
|
-
phoneNumber: phoneNumberFromJid(data.key.remoteJid),
|
|
63
|
-
jid: Jid(data.key.remoteJid),
|
|
64
|
-
},
|
|
65
|
-
location: {
|
|
66
|
-
latitude: data.message.locationMessage.degreesLatitude,
|
|
67
|
-
longitude: data.message.locationMessage.degreesLongitude,
|
|
68
|
-
name: data.message.locationMessage.name,
|
|
69
|
-
address: data.message.locationMessage.address,
|
|
70
|
-
},
|
|
71
|
-
id: MessageId(data.key.id),
|
|
72
|
-
timestamp: new Date(data.messageTimestamp),
|
|
73
|
-
});
|
|
74
|
-
|
|
75
|
-
// Backward compatibility aliases
|
|
76
|
-
export const ResponseSchema = { parse: LocationMessageResponseTransform };
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { Media } from "@/schemas/common";
|
|
2
|
-
import { BaseMessageOptions } from "./base";
|
|
3
|
-
|
|
4
|
-
// Request interfaces
|
|
5
|
-
export interface MediaMessageOptions extends BaseMessageOptions {
|
|
6
|
-
mediatype: "audio" | "image" | "video" | "document";
|
|
7
|
-
mimetype?: string;
|
|
8
|
-
caption?: string;
|
|
9
|
-
media: Media;
|
|
10
|
-
fileName?: string;
|
|
11
|
-
linkPreview?: boolean;
|
|
12
|
-
mentionsEveryOne?: boolean;
|
|
13
|
-
mentioned?: string[];
|
|
14
|
-
quoted?: {
|
|
15
|
-
key: {
|
|
16
|
-
id: string;
|
|
17
|
-
};
|
|
18
|
-
message: {
|
|
19
|
-
conversation: string;
|
|
20
|
-
};
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
// Response interfaces
|
|
25
|
-
export interface MediaMessageResponse {
|
|
26
|
-
key: {
|
|
27
|
-
remoteJid: string;
|
|
28
|
-
fromMe: boolean;
|
|
29
|
-
id: string;
|
|
30
|
-
};
|
|
31
|
-
message: {
|
|
32
|
-
[T in
|
|
33
|
-
| "audioMessage"
|
|
34
|
-
| "imageMessage"
|
|
35
|
-
| "videoMessage"
|
|
36
|
-
| "documentMessage"]: {
|
|
37
|
-
url: string;
|
|
38
|
-
mimetype: string;
|
|
39
|
-
fileSha256: string;
|
|
40
|
-
fileLength: string;
|
|
41
|
-
seconds: number;
|
|
42
|
-
ptt: boolean;
|
|
43
|
-
mediaKey: string;
|
|
44
|
-
fileEncSha256: string;
|
|
45
|
-
directPath: string;
|
|
46
|
-
mediaKeyTimestamp: string;
|
|
47
|
-
};
|
|
48
|
-
};
|
|
49
|
-
messageTimestamp: string;
|
|
50
|
-
status: "PENDING" | "SUCCESS" | "FAILED";
|
|
51
|
-
}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
import { Jid, MessageId } from "@/types/tags";
|
|
3
|
-
import { phoneNumberFromJid } from "@/utils/phone-numer-from-jid";
|
|
4
|
-
import { BaseMessageOptions } from "./base";
|
|
5
|
-
|
|
6
|
-
// Raw response interface from API
|
|
7
|
-
export interface PollMessageResponseRaw {
|
|
8
|
-
key: {
|
|
9
|
-
remoteJid: string;
|
|
10
|
-
id: string;
|
|
11
|
-
};
|
|
12
|
-
message: {
|
|
13
|
-
pollCreationMessageV3: {
|
|
14
|
-
name: string;
|
|
15
|
-
options: { optionName: string }[];
|
|
16
|
-
selectableOptionsCount: number;
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
|
-
messageTimestamp: string | Date;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
// Request interfaces
|
|
23
|
-
export interface PollMessageOptions extends BaseMessageOptions {
|
|
24
|
-
/**
|
|
25
|
-
* Name of the poll
|
|
26
|
-
*/
|
|
27
|
-
name: string;
|
|
28
|
-
/**
|
|
29
|
-
* Whether multiple options can be selected
|
|
30
|
-
* @default false
|
|
31
|
-
*/
|
|
32
|
-
multiple?: boolean;
|
|
33
|
-
/**
|
|
34
|
-
* Poll options
|
|
35
|
-
*/
|
|
36
|
-
options: string[];
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export interface PollMessageBody extends BaseMessageOptions {
|
|
40
|
-
name: string;
|
|
41
|
-
selectableCount: number;
|
|
42
|
-
values: string[];
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
// Response interfaces
|
|
46
|
-
export interface PollMessageResponse {
|
|
47
|
-
receiver: {
|
|
48
|
-
phoneNumber: string;
|
|
49
|
-
jid: Jid;
|
|
50
|
-
};
|
|
51
|
-
poll: {
|
|
52
|
-
name: string;
|
|
53
|
-
options: string[];
|
|
54
|
-
multiple: boolean;
|
|
55
|
-
};
|
|
56
|
-
id: MessageId;
|
|
57
|
-
timestamp: Date;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
// Transform functions
|
|
61
|
-
export const PollMessageBodyTransform = (
|
|
62
|
-
{ multiple, options, ...data }: PollMessageOptions
|
|
63
|
-
): PollMessageBody => ({
|
|
64
|
-
...data,
|
|
65
|
-
selectableCount: multiple ? options.length : 1,
|
|
66
|
-
values: options,
|
|
67
|
-
});
|
|
68
|
-
|
|
69
|
-
export const PollMessageResponseTransform = (data: PollMessageResponseRaw): PollMessageResponse => ({
|
|
70
|
-
receiver: {
|
|
71
|
-
phoneNumber: phoneNumberFromJid(data.key.remoteJid),
|
|
72
|
-
jid: Jid(data.key.remoteJid),
|
|
73
|
-
},
|
|
74
|
-
poll: {
|
|
75
|
-
name: data.message.pollCreationMessageV3.name,
|
|
76
|
-
options: data.message.pollCreationMessageV3.options.map(
|
|
77
|
-
(option) => option.optionName,
|
|
78
|
-
),
|
|
79
|
-
multiple: data.message.pollCreationMessageV3.selectableOptionsCount > 1,
|
|
80
|
-
},
|
|
81
|
-
id: MessageId(data.key.id),
|
|
82
|
-
timestamp: new Date(data.messageTimestamp),
|
|
83
|
-
});
|
|
84
|
-
|
|
85
|
-
// Backward compatibility aliases
|
|
86
|
-
export const BodySchema = { parse: PollMessageBodyTransform };
|
|
87
|
-
export const ResponseSchema = { parse: PollMessageResponseTransform };
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
import type { ChatId, MessageId } from "@/types/tags";
|
|
3
|
-
|
|
4
|
-
export interface ReactionMessageOptions {
|
|
5
|
-
key: {
|
|
6
|
-
remoteJid: ChatId;
|
|
7
|
-
fromMe: boolean;
|
|
8
|
-
id: MessageId;
|
|
9
|
-
};
|
|
10
|
-
reaction: string;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export interface ReactionMessageResponse {
|
|
14
|
-
key: {
|
|
15
|
-
remoteJid: ChatId;
|
|
16
|
-
fromMe: boolean;
|
|
17
|
-
id: MessageId;
|
|
18
|
-
};
|
|
19
|
-
messageTimestamp: string;
|
|
20
|
-
status: string;
|
|
21
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
export interface StatusMessageOptions {
|
|
3
|
-
message: string;
|
|
4
|
-
options?: {
|
|
5
|
-
backgroundColor?: string;
|
|
6
|
-
font?: number; // 0-6 range
|
|
7
|
-
};
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export interface StatusMessageResponse {
|
|
11
|
-
key: {
|
|
12
|
-
remoteJid: string;
|
|
13
|
-
fromMe: boolean;
|
|
14
|
-
id: string;
|
|
15
|
-
};
|
|
16
|
-
messageTimestamp: string;
|
|
17
|
-
status: string;
|
|
18
|
-
}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
import type { Media } from "@/schemas/common";
|
|
3
|
-
import { Jid, MessageId } from "@/types/tags";
|
|
4
|
-
import { phoneNumberFromJid } from "@/utils/phone-numer-from-jid";
|
|
5
|
-
import { BaseMessageOptions } from "./base";
|
|
6
|
-
|
|
7
|
-
// Raw response interface from API
|
|
8
|
-
export interface StickerMessageResponseRaw {
|
|
9
|
-
key: {
|
|
10
|
-
remoteJid: string;
|
|
11
|
-
id: string;
|
|
12
|
-
};
|
|
13
|
-
message: {
|
|
14
|
-
stickerMessage: {
|
|
15
|
-
url: string;
|
|
16
|
-
fileSha256: string;
|
|
17
|
-
fileEncSha256: string;
|
|
18
|
-
mediaKey: string;
|
|
19
|
-
mimetype?: string;
|
|
20
|
-
directPath: string;
|
|
21
|
-
fileLength: number | string;
|
|
22
|
-
mediaKeyTimestamp: number | string;
|
|
23
|
-
};
|
|
24
|
-
};
|
|
25
|
-
messageTimestamp: string | Date;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
// Request interfaces
|
|
29
|
-
export interface StickerMessageOptions extends BaseMessageOptions {
|
|
30
|
-
/**
|
|
31
|
-
* Image URL or file in base64
|
|
32
|
-
*/
|
|
33
|
-
sticker: Media;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
// Response interfaces
|
|
37
|
-
export interface StickerMessageResponse {
|
|
38
|
-
receiver: {
|
|
39
|
-
phoneNumber: string;
|
|
40
|
-
jid: Jid;
|
|
41
|
-
};
|
|
42
|
-
media: {
|
|
43
|
-
url: string;
|
|
44
|
-
mimetype?: string;
|
|
45
|
-
length: number;
|
|
46
|
-
sha256: string;
|
|
47
|
-
encryptedSha256: string;
|
|
48
|
-
directPath: string;
|
|
49
|
-
key: string;
|
|
50
|
-
keyTimestamp: Date;
|
|
51
|
-
};
|
|
52
|
-
id: MessageId;
|
|
53
|
-
timestamp: Date;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
// Transform function
|
|
57
|
-
export const StickerMessageResponseTransform = (data: StickerMessageResponseRaw): StickerMessageResponse => ({
|
|
58
|
-
receiver: {
|
|
59
|
-
phoneNumber: phoneNumberFromJid(data.key.remoteJid),
|
|
60
|
-
jid: Jid(data.key.remoteJid),
|
|
61
|
-
},
|
|
62
|
-
media: {
|
|
63
|
-
url: data.message.stickerMessage.url,
|
|
64
|
-
mimetype: data.message.stickerMessage.mimetype,
|
|
65
|
-
length: Number(data.message.stickerMessage.fileLength),
|
|
66
|
-
sha256: data.message.stickerMessage.fileSha256,
|
|
67
|
-
encryptedSha256: data.message.stickerMessage.fileEncSha256,
|
|
68
|
-
directPath: data.message.stickerMessage.directPath,
|
|
69
|
-
key: data.message.stickerMessage.mediaKey,
|
|
70
|
-
keyTimestamp: new Date(Number(data.message.stickerMessage.mediaKeyTimestamp)),
|
|
71
|
-
},
|
|
72
|
-
id: MessageId(data.key.id),
|
|
73
|
-
timestamp: new Date(data.messageTimestamp),
|
|
74
|
-
});
|
|
75
|
-
|
|
76
|
-
// Backward compatibility aliases
|
|
77
|
-
export const ResponseSchema = { parse: StickerMessageResponseTransform };
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
import type { ChatId, MessageId } from "@/types/tags";
|
|
3
|
-
|
|
4
|
-
export interface ComponentParameter {
|
|
5
|
-
type: "text" | "image" | "document" | "video";
|
|
6
|
-
text?: string;
|
|
7
|
-
image?: { link: string };
|
|
8
|
-
document?: { link: string };
|
|
9
|
-
video?: { link: string };
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export interface Component {
|
|
13
|
-
type: "body" | "header" | "button";
|
|
14
|
-
sub_type?: "text" | "url" | "quick_reply";
|
|
15
|
-
parameters: ComponentParameter[];
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export interface TemplateMessageOptions {
|
|
19
|
-
number: ChatId;
|
|
20
|
-
name: string;
|
|
21
|
-
language: {
|
|
22
|
-
code: string;
|
|
23
|
-
};
|
|
24
|
-
components: Component[];
|
|
25
|
-
options?: {
|
|
26
|
-
delay?: number;
|
|
27
|
-
messageId?: MessageId;
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export interface TemplateMessageResponse {
|
|
32
|
-
key: {
|
|
33
|
-
remoteJid: ChatId;
|
|
34
|
-
fromMe: boolean;
|
|
35
|
-
id: MessageId;
|
|
36
|
-
};
|
|
37
|
-
messageTimestamp: string;
|
|
38
|
-
status: string;
|
|
39
|
-
}
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
import { Jid, MessageId } from "@/types/tags";
|
|
3
|
-
import { phoneNumberFromJid } from "@/utils/phone-numer-from-jid";
|
|
4
|
-
import { BaseMessageOptions } from "./base";
|
|
5
|
-
|
|
6
|
-
// Raw response interface from API
|
|
7
|
-
export interface TextMessageResponseRaw {
|
|
8
|
-
key: {
|
|
9
|
-
remoteJid: string;
|
|
10
|
-
fromMe: boolean;
|
|
11
|
-
id: string;
|
|
12
|
-
};
|
|
13
|
-
pushName: string;
|
|
14
|
-
status: string;
|
|
15
|
-
message: {
|
|
16
|
-
conversation: string;
|
|
17
|
-
};
|
|
18
|
-
contextInfo: null;
|
|
19
|
-
messageType: string;
|
|
20
|
-
messageTimestamp: number;
|
|
21
|
-
instanceId: string;
|
|
22
|
-
source: string;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
// Request interfaces
|
|
26
|
-
export interface TextMessageOptions extends BaseMessageOptions {
|
|
27
|
-
/**
|
|
28
|
-
* Message text content
|
|
29
|
-
*/
|
|
30
|
-
text: string;
|
|
31
|
-
/**
|
|
32
|
-
* Whether link preview should be shown
|
|
33
|
-
*/
|
|
34
|
-
linkPreview?: boolean;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
// Response interfaces
|
|
38
|
-
export interface TextMessageResponse {
|
|
39
|
-
key: {
|
|
40
|
-
remoteJid: string;
|
|
41
|
-
fromMe: boolean;
|
|
42
|
-
id: string;
|
|
43
|
-
};
|
|
44
|
-
pushName: string;
|
|
45
|
-
status: string;
|
|
46
|
-
message: {
|
|
47
|
-
conversation: string;
|
|
48
|
-
};
|
|
49
|
-
contextInfo: null;
|
|
50
|
-
messageType: string;
|
|
51
|
-
messageTimestamp: number;
|
|
52
|
-
instanceId: string;
|
|
53
|
-
source: string;
|
|
54
|
-
receiver: {
|
|
55
|
-
phoneNumber: string;
|
|
56
|
-
jid: Jid;
|
|
57
|
-
};
|
|
58
|
-
messageId: MessageId;
|
|
59
|
-
timestamp: Date;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
export interface TextMessageReceived {
|
|
63
|
-
conversation: string;
|
|
64
|
-
extendedTextMessage: {
|
|
65
|
-
text: string;
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
// Transform function
|
|
70
|
-
export const TextMessageResponseTransform = (
|
|
71
|
-
data: TextMessageResponseRaw
|
|
72
|
-
): TextMessageResponse => ({
|
|
73
|
-
receiver: {
|
|
74
|
-
phoneNumber: phoneNumberFromJid(data.key.remoteJid),
|
|
75
|
-
jid: Jid(data.key.remoteJid),
|
|
76
|
-
},
|
|
77
|
-
messageId: MessageId(data.key.id),
|
|
78
|
-
timestamp: new Date(data.messageTimestamp),
|
|
79
|
-
key: data.key,
|
|
80
|
-
pushName: data.pushName,
|
|
81
|
-
status: data.status,
|
|
82
|
-
message: data.message,
|
|
83
|
-
contextInfo: data.contextInfo,
|
|
84
|
-
messageType: data.messageType,
|
|
85
|
-
messageTimestamp: data.messageTimestamp,
|
|
86
|
-
instanceId: data.instanceId,
|
|
87
|
-
source: data.source,
|
|
88
|
-
});
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
// Pure TypeScript interfaces for better IDE support and performance
|
|
2
|
-
import { MediaMessageOptions, MediaMessageResponse } from "./media";
|
|
3
|
-
|
|
4
|
-
// Request interfaces
|
|
5
|
-
export interface VideoMessageOptions extends MediaMessageOptions {}
|
|
6
|
-
|
|
7
|
-
// Response interfaces
|
|
8
|
-
export interface VideoMessageResponse extends MediaMessageResponse {
|
|
9
|
-
message: MediaMessageResponse["message"] & {
|
|
10
|
-
videoMessage: MediaMessageResponse["message"]["videoMessage"];
|
|
11
|
-
};
|
|
12
|
-
}
|