baileys-joss 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.
Files changed (127) hide show
  1. package/README.md +2554 -78
  2. package/lib/Socket/business.d.ts +4 -0
  3. package/lib/Socket/business.d.ts.map +1 -1
  4. package/lib/Socket/chats.d.ts +4 -0
  5. package/lib/Socket/chats.d.ts.map +1 -1
  6. package/lib/Socket/chats.js +44 -1
  7. package/lib/Socket/chats.js.map +1 -1
  8. package/lib/Socket/communities.d.ts +4 -0
  9. package/lib/Socket/communities.d.ts.map +1 -1
  10. package/lib/Socket/groups.d.ts +4 -0
  11. package/lib/Socket/groups.d.ts.map +1 -1
  12. package/lib/Socket/index.d.ts +4 -0
  13. package/lib/Socket/index.d.ts.map +1 -1
  14. package/lib/Socket/messages-recv.d.ts +4 -0
  15. package/lib/Socket/messages-recv.d.ts.map +1 -1
  16. package/lib/Socket/messages-send.d.ts +4 -0
  17. package/lib/Socket/messages-send.d.ts.map +1 -1
  18. package/lib/Socket/messages-send.js +130 -1
  19. package/lib/Socket/messages-send.js.map +1 -1
  20. package/lib/Socket/newsletter.d.ts +4 -0
  21. package/lib/Socket/newsletter.d.ts.map +1 -1
  22. package/lib/Types/Message.d.ts +25 -1
  23. package/lib/Types/Message.d.ts.map +1 -1
  24. package/lib/Utils/activity-logger.d.ts +189 -0
  25. package/lib/Utils/activity-logger.d.ts.map +1 -0
  26. package/lib/Utils/activity-logger.js +418 -0
  27. package/lib/Utils/activity-logger.js.map +1 -0
  28. package/lib/Utils/anti-spam.d.ts +145 -0
  29. package/lib/Utils/anti-spam.d.ts.map +1 -0
  30. package/lib/Utils/anti-spam.js +398 -0
  31. package/lib/Utils/anti-spam.js.map +1 -0
  32. package/lib/Utils/auto-reply.d.ts +123 -0
  33. package/lib/Utils/auto-reply.d.ts.map +1 -0
  34. package/lib/Utils/auto-reply.js +234 -0
  35. package/lib/Utils/auto-reply.js.map +1 -0
  36. package/lib/Utils/broadcast.d.ts +121 -0
  37. package/lib/Utils/broadcast.d.ts.map +1 -0
  38. package/lib/Utils/broadcast.js +223 -0
  39. package/lib/Utils/broadcast.js.map +1 -0
  40. package/lib/Utils/bulk-messaging.d.ts +79 -0
  41. package/lib/Utils/bulk-messaging.d.ts.map +1 -0
  42. package/lib/Utils/bulk-messaging.js +148 -0
  43. package/lib/Utils/bulk-messaging.js.map +1 -0
  44. package/lib/Utils/chat-analytics.d.ts +92 -0
  45. package/lib/Utils/chat-analytics.d.ts.map +1 -0
  46. package/lib/Utils/chat-analytics.js +337 -0
  47. package/lib/Utils/chat-analytics.js.map +1 -0
  48. package/lib/Utils/chat-control.d.ts +156 -0
  49. package/lib/Utils/chat-control.d.ts.map +1 -0
  50. package/lib/Utils/chat-control.js +224 -0
  51. package/lib/Utils/chat-control.js.map +1 -0
  52. package/lib/Utils/chat-export.d.ts +75 -0
  53. package/lib/Utils/chat-export.d.ts.map +1 -0
  54. package/lib/Utils/chat-export.js +309 -0
  55. package/lib/Utils/chat-export.js.map +1 -0
  56. package/lib/Utils/content-detector.d.ts +199 -0
  57. package/lib/Utils/content-detector.d.ts.map +1 -0
  58. package/lib/Utils/content-detector.js +442 -0
  59. package/lib/Utils/content-detector.js.map +1 -0
  60. package/lib/Utils/index.d.ts +23 -0
  61. package/lib/Utils/index.d.ts.map +1 -1
  62. package/lib/Utils/index.js +52 -0
  63. package/lib/Utils/index.js.map +1 -1
  64. package/lib/Utils/link-scanner.d.ts +112 -0
  65. package/lib/Utils/link-scanner.d.ts.map +1 -0
  66. package/lib/Utils/link-scanner.js +433 -0
  67. package/lib/Utils/link-scanner.js.map +1 -0
  68. package/lib/Utils/media-downloader.d.ts +86 -0
  69. package/lib/Utils/media-downloader.d.ts.map +1 -0
  70. package/lib/Utils/media-downloader.js +269 -0
  71. package/lib/Utils/media-downloader.js.map +1 -0
  72. package/lib/Utils/meme-generator.d.ts +96 -0
  73. package/lib/Utils/meme-generator.d.ts.map +1 -0
  74. package/lib/Utils/meme-generator.js +368 -0
  75. package/lib/Utils/meme-generator.js.map +1 -0
  76. package/lib/Utils/message-search.d.ts +96 -0
  77. package/lib/Utils/message-search.d.ts.map +1 -0
  78. package/lib/Utils/message-search.js +261 -0
  79. package/lib/Utils/message-search.js.map +1 -0
  80. package/lib/Utils/messages-media.d.ts +20 -1
  81. package/lib/Utils/messages-media.d.ts.map +1 -1
  82. package/lib/Utils/messages-media.js +100 -5
  83. package/lib/Utils/messages-media.js.map +1 -1
  84. package/lib/Utils/messages.d.ts.map +1 -1
  85. package/lib/Utils/messages.js +14 -2
  86. package/lib/Utils/messages.js.map +1 -1
  87. package/lib/Utils/mini-games.d.ts +155 -0
  88. package/lib/Utils/mini-games.d.ts.map +1 -0
  89. package/lib/Utils/mini-games.js +445 -0
  90. package/lib/Utils/mini-games.js.map +1 -0
  91. package/lib/Utils/pomodoro.d.ts +139 -0
  92. package/lib/Utils/pomodoro.d.ts.map +1 -0
  93. package/lib/Utils/pomodoro.js +434 -0
  94. package/lib/Utils/pomodoro.js.map +1 -0
  95. package/lib/Utils/qr-generator.d.ts +95 -0
  96. package/lib/Utils/qr-generator.d.ts.map +1 -0
  97. package/lib/Utils/qr-generator.js +226 -0
  98. package/lib/Utils/qr-generator.js.map +1 -0
  99. package/lib/Utils/quotes.d.ts +110 -0
  100. package/lib/Utils/quotes.d.ts.map +1 -0
  101. package/lib/Utils/quotes.js +325 -0
  102. package/lib/Utils/quotes.js.map +1 -0
  103. package/lib/Utils/scheduling.d.ts +88 -0
  104. package/lib/Utils/scheduling.d.ts.map +1 -0
  105. package/lib/Utils/scheduling.js +163 -0
  106. package/lib/Utils/scheduling.js.map +1 -0
  107. package/lib/Utils/status-posting.d.ts +151 -0
  108. package/lib/Utils/status-posting.d.ts.map +1 -0
  109. package/lib/Utils/status-posting.js +162 -0
  110. package/lib/Utils/status-posting.js.map +1 -0
  111. package/lib/Utils/templates.d.ts +154 -0
  112. package/lib/Utils/templates.d.ts.map +1 -0
  113. package/lib/Utils/templates.js +368 -0
  114. package/lib/Utils/templates.js.map +1 -0
  115. package/lib/Utils/vcard.d.ts +86 -0
  116. package/lib/Utils/vcard.d.ts.map +1 -0
  117. package/lib/Utils/vcard.js +195 -0
  118. package/lib/Utils/vcard.js.map +1 -0
  119. package/lib/Utils/voice-note.d.ts +115 -0
  120. package/lib/Utils/voice-note.d.ts.map +1 -0
  121. package/lib/Utils/voice-note.js +212 -0
  122. package/lib/Utils/voice-note.js.map +1 -0
  123. package/lib/Utils/weather.d.ts +118 -0
  124. package/lib/Utils/weather.d.ts.map +1 -0
  125. package/lib/Utils/weather.js +362 -0
  126. package/lib/Utils/weather.js.map +1 -0
  127. package/package.json +6 -3
@@ -0,0 +1,368 @@
1
+ /**
2
+ * Baileys-Joss: Meme Generator
3
+ *
4
+ * Generate meme sederhana dengan text overlay
5
+ */
6
+ // =====================================================
7
+ // BUILT-IN MEME TEMPLATES
8
+ // =====================================================
9
+ export const MEME_TEMPLATES = [
10
+ {
11
+ id: 'drake',
12
+ name: 'Drake Hotline Bling',
13
+ description: 'Drake approving/disapproving meme',
14
+ textPositions: [
15
+ { id: 'top', label: 'Rejected', defaultText: 'Something bad', position: 'top' },
16
+ { id: 'bottom', label: 'Approved', defaultText: 'Something good', position: 'bottom' }
17
+ ],
18
+ width: 600,
19
+ height: 600
20
+ },
21
+ {
22
+ id: 'distracted',
23
+ name: 'Distracted Boyfriend',
24
+ description: 'Guy looking at another girl meme',
25
+ textPositions: [
26
+ { id: 'boyfriend', label: 'Boyfriend', defaultText: 'Me', position: 'custom', customPosition: { x: 50, y: 70 } },
27
+ { id: 'girlfriend', label: 'Girlfriend', defaultText: 'My responsibilities', position: 'custom', customPosition: { x: 80, y: 70 } },
28
+ { id: 'other', label: 'Other Girl', defaultText: 'Something fun', position: 'custom', customPosition: { x: 20, y: 50 } }
29
+ ],
30
+ width: 800,
31
+ height: 550
32
+ },
33
+ {
34
+ id: 'expanding_brain',
35
+ name: 'Expanding Brain',
36
+ description: 'Brain expanding through levels',
37
+ textPositions: [
38
+ { id: 'level1', label: 'Level 1', defaultText: 'Normal idea', position: 'custom', customPosition: { x: 50, y: 15 } },
39
+ { id: 'level2', label: 'Level 2', defaultText: 'Better idea', position: 'custom', customPosition: { x: 50, y: 40 } },
40
+ { id: 'level3', label: 'Level 3', defaultText: 'Galaxy brain idea', position: 'custom', customPosition: { x: 50, y: 65 } },
41
+ { id: 'level4', label: 'Level 4', defaultText: 'Transcended idea', position: 'custom', customPosition: { x: 50, y: 90 } }
42
+ ],
43
+ width: 700,
44
+ height: 800
45
+ },
46
+ {
47
+ id: 'two_buttons',
48
+ name: 'Two Buttons',
49
+ description: 'Sweating guy choosing between two buttons',
50
+ textPositions: [
51
+ { id: 'button1', label: 'Button 1', defaultText: 'Option A', position: 'custom', customPosition: { x: 30, y: 20 } },
52
+ { id: 'button2', label: 'Button 2', defaultText: 'Option B', position: 'custom', customPosition: { x: 70, y: 20 } }
53
+ ],
54
+ width: 600,
55
+ height: 700
56
+ },
57
+ {
58
+ id: 'this_is_fine',
59
+ name: 'This is Fine',
60
+ description: 'Dog in burning room saying this is fine',
61
+ textPositions: [
62
+ { id: 'text', label: 'Text', defaultText: 'This is fine', position: 'bottom' }
63
+ ],
64
+ width: 600,
65
+ height: 400
66
+ },
67
+ {
68
+ id: 'change_my_mind',
69
+ name: 'Change My Mind',
70
+ description: 'Steven Crowder change my mind meme',
71
+ textPositions: [
72
+ { id: 'statement', label: 'Statement', defaultText: 'Your opinion here', position: 'center' }
73
+ ],
74
+ width: 700,
75
+ height: 400
76
+ },
77
+ {
78
+ id: 'success_kid',
79
+ name: 'Success Kid',
80
+ description: 'Baby with fist celebrating success',
81
+ textPositions: [
82
+ { id: 'top', label: 'Setup', defaultText: 'When you', position: 'top' },
83
+ { id: 'bottom', label: 'Punchline', defaultText: 'Success!', position: 'bottom' }
84
+ ],
85
+ width: 500,
86
+ height: 500
87
+ },
88
+ {
89
+ id: 'one_does_not',
90
+ name: 'One Does Not Simply',
91
+ description: 'Boromir from LOTR meme',
92
+ textPositions: [
93
+ { id: 'top', label: 'Top', defaultText: 'One does not simply', position: 'top' },
94
+ { id: 'bottom', label: 'Bottom', defaultText: 'Walk into Mordor', position: 'bottom' }
95
+ ],
96
+ width: 600,
97
+ height: 400
98
+ }
99
+ ];
100
+ // =====================================================
101
+ // MEME GENERATOR CLASS
102
+ // =====================================================
103
+ export class MemeGenerator {
104
+ constructor() {
105
+ this.templates = new Map();
106
+ // Load built-in templates
107
+ for (const template of MEME_TEMPLATES) {
108
+ this.templates.set(template.id, template);
109
+ }
110
+ }
111
+ /**
112
+ * Get all available templates
113
+ */
114
+ getTemplates() {
115
+ return Array.from(this.templates.values());
116
+ }
117
+ /**
118
+ * Get template by ID
119
+ */
120
+ getTemplate(id) {
121
+ return this.templates.get(id);
122
+ }
123
+ /**
124
+ * Add custom template
125
+ */
126
+ addTemplate(template) {
127
+ this.templates.set(template.id, template);
128
+ }
129
+ /**
130
+ * Generate meme as text (ASCII art style)
131
+ */
132
+ generateTextMeme(templateId, texts) {
133
+ const template = this.templates.get(templateId);
134
+ if (!template) {
135
+ return `❌ Template "${templateId}" not found`;
136
+ }
137
+ const lines = [];
138
+ const width = 40;
139
+ // Header
140
+ lines.push('╔' + '═'.repeat(width) + '╗');
141
+ lines.push('║' + ` 🎭 ${template.name} `.padStart((width + template.name.length + 4) / 2).padEnd(width) + '║');
142
+ lines.push('╠' + '═'.repeat(width) + '╣');
143
+ // Text positions
144
+ for (const pos of template.textPositions) {
145
+ const text = texts[pos.id] || pos.defaultText;
146
+ const wrappedLines = this.wrapText(text, width - 4);
147
+ for (const line of wrappedLines) {
148
+ lines.push('║ ' + line.padEnd(width - 2) + ' ║');
149
+ }
150
+ lines.push('║' + '─'.repeat(width) + '║');
151
+ }
152
+ // Footer
153
+ lines.pop(); // Remove last separator
154
+ lines.push('╚' + '═'.repeat(width) + '╝');
155
+ return lines.join('\n');
156
+ }
157
+ /**
158
+ * Generate meme as SVG
159
+ */
160
+ generateSvgMeme(config) {
161
+ const template = typeof config.template === 'string'
162
+ ? this.templates.get(config.template)
163
+ : config.template;
164
+ if (!template) {
165
+ throw new Error(`Template not found`);
166
+ }
167
+ const width = template.width || 600;
168
+ const height = template.height || 400;
169
+ const fontSize = config.fontSize || 32;
170
+ const fontColor = config.fontColor || '#FFFFFF';
171
+ const strokeColor = config.strokeColor || '#000000';
172
+ const strokeWidth = config.strokeWidth || 2;
173
+ let textElements = '';
174
+ for (const pos of template.textPositions) {
175
+ const text = config.texts[pos.id] || pos.defaultText;
176
+ let x = width / 2;
177
+ let y = height / 2;
178
+ switch (pos.position) {
179
+ case 'top':
180
+ y = fontSize + 10;
181
+ break;
182
+ case 'bottom':
183
+ y = height - 20;
184
+ break;
185
+ case 'center':
186
+ // Already centered
187
+ break;
188
+ case 'custom':
189
+ if (pos.customPosition) {
190
+ x = (pos.customPosition.x / 100) * width;
191
+ y = (pos.customPosition.y / 100) * height;
192
+ }
193
+ break;
194
+ }
195
+ textElements += `
196
+ <text x="${x}" y="${y}"
197
+ font-size="${fontSize}"
198
+ fill="${fontColor}"
199
+ stroke="${strokeColor}"
200
+ stroke-width="${strokeWidth}"
201
+ text-anchor="middle"
202
+ font-family="Impact, sans-serif"
203
+ font-weight="bold">
204
+ ${this.escapeXml(text)}
205
+ </text>
206
+ `;
207
+ }
208
+ const svgContent = `
209
+ <svg xmlns="http://www.w3.org/2000/svg" width="${width}" height="${height}">
210
+ <rect width="100%" height="100%" fill="#333"/>
211
+ <text x="${width / 2}" y="${height / 2 - 50}"
212
+ font-size="24"
213
+ fill="#888"
214
+ text-anchor="middle"
215
+ font-family="Arial, sans-serif">
216
+ [${template.name}]
217
+ </text>
218
+ ${textElements}
219
+ </svg>
220
+ `.trim();
221
+ const htmlContent = `
222
+ <!DOCTYPE html>
223
+ <html>
224
+ <head>
225
+ <style>
226
+ body { margin: 0; display: flex; justify-content: center; align-items: center; height: 100vh; background: #1a1a1a; }
227
+ </style>
228
+ </head>
229
+ <body>${svgContent}</body>
230
+ </html>
231
+ `.trim();
232
+ return {
233
+ templateId: template.id,
234
+ texts: config.texts,
235
+ svgContent,
236
+ htmlContent
237
+ };
238
+ }
239
+ /**
240
+ * Generate meme description (for text-only display)
241
+ */
242
+ describeMeme(templateId, texts) {
243
+ const template = this.templates.get(templateId);
244
+ if (!template) {
245
+ return `❌ Template "${templateId}" not found`;
246
+ }
247
+ const lines = [
248
+ `🎭 *${template.name}*`,
249
+ `📝 _${template.description}_`,
250
+ ''
251
+ ];
252
+ for (const pos of template.textPositions) {
253
+ const text = texts[pos.id] || pos.defaultText;
254
+ lines.push(`➡️ *${pos.label}:* ${text}`);
255
+ }
256
+ return lines.join('\n');
257
+ }
258
+ /**
259
+ * List templates as formatted message
260
+ */
261
+ listTemplates() {
262
+ const lines = ['🎭 *Available Meme Templates*', ''];
263
+ for (const template of this.templates.values()) {
264
+ lines.push(`• *${template.id}* - ${template.name}`);
265
+ lines.push(` _${template.description}_`);
266
+ }
267
+ lines.push('');
268
+ lines.push('_Use: /meme <template_id> <text1> | <text2>_');
269
+ return lines.join('\n');
270
+ }
271
+ /**
272
+ * Quick meme from popular formats
273
+ */
274
+ quickMeme(format, ...texts) {
275
+ switch (format) {
276
+ case 'drake':
277
+ return this.generateTextMeme('drake', {
278
+ top: texts[0] || 'Bad thing',
279
+ bottom: texts[1] || 'Good thing'
280
+ });
281
+ case 'expanding':
282
+ return this.generateTextMeme('expanding_brain', {
283
+ level1: texts[0] || 'Level 1',
284
+ level2: texts[1] || 'Level 2',
285
+ level3: texts[2] || 'Level 3',
286
+ level4: texts[3] || 'Level 4'
287
+ });
288
+ case 'buttons':
289
+ return this.generateTextMeme('two_buttons', {
290
+ button1: texts[0] || 'Option A',
291
+ button2: texts[1] || 'Option B'
292
+ });
293
+ case 'fine':
294
+ return this.generateTextMeme('this_is_fine', {
295
+ text: texts[0] || 'This is fine'
296
+ });
297
+ case 'change':
298
+ return this.generateTextMeme('change_my_mind', {
299
+ statement: texts[0] || 'Your opinion here'
300
+ });
301
+ default:
302
+ return '❌ Unknown format';
303
+ }
304
+ }
305
+ /**
306
+ * Wrap text to fit width
307
+ */
308
+ wrapText(text, maxWidth) {
309
+ const words = text.split(' ');
310
+ const lines = [];
311
+ let currentLine = '';
312
+ for (const word of words) {
313
+ if ((currentLine + ' ' + word).trim().length <= maxWidth) {
314
+ currentLine = (currentLine + ' ' + word).trim();
315
+ }
316
+ else {
317
+ if (currentLine)
318
+ lines.push(currentLine);
319
+ currentLine = word;
320
+ }
321
+ }
322
+ if (currentLine)
323
+ lines.push(currentLine);
324
+ return lines.length > 0 ? lines : [''];
325
+ }
326
+ /**
327
+ * Escape XML special characters
328
+ */
329
+ escapeXml(text) {
330
+ return text
331
+ .replace(/&/g, '&amp;')
332
+ .replace(/</g, '&lt;')
333
+ .replace(/>/g, '&gt;')
334
+ .replace(/"/g, '&quot;')
335
+ .replace(/'/g, '&apos;');
336
+ }
337
+ }
338
+ // =====================================================
339
+ // FACTORY FUNCTION
340
+ // =====================================================
341
+ export const createMemeGenerator = () => {
342
+ return new MemeGenerator();
343
+ };
344
+ // =====================================================
345
+ // QUICK HELPERS
346
+ // =====================================================
347
+ /**
348
+ * Quick Drake meme
349
+ */
350
+ export const drakeMeme = (bad, good) => {
351
+ const gen = new MemeGenerator();
352
+ return gen.quickMeme('drake', bad, good);
353
+ };
354
+ /**
355
+ * Quick expanding brain meme
356
+ */
357
+ export const expandingBrainMeme = (...levels) => {
358
+ const gen = new MemeGenerator();
359
+ return gen.quickMeme('expanding', ...levels);
360
+ };
361
+ /**
362
+ * Quick "this is fine" meme
363
+ */
364
+ export const thisIsFineMeme = (text) => {
365
+ const gen = new MemeGenerator();
366
+ return gen.quickMeme('fine', text || 'This is fine');
367
+ };
368
+ //# sourceMappingURL=meme-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meme-generator.js","sourceRoot":"","sources":["../../src/Utils/meme-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Baileys-Joss: Message Search Utilities
3
+ *
4
+ * Fitur untuk mencari pesan dalam chat
5
+ */
6
+ import type { WAMessage } from '../Types/index.js';
7
+ export interface SearchOptions {
8
+ /** Case sensitive search */
9
+ caseSensitive?: boolean;
10
+ /** Search in specific chat only */
11
+ jid?: string;
12
+ /** Search from specific date */
13
+ fromDate?: Date;
14
+ /** Search until specific date */
15
+ toDate?: Date;
16
+ /** Maximum results */
17
+ limit?: number;
18
+ /** Message types to search */
19
+ messageTypes?: ('text' | 'image' | 'video' | 'document' | 'audio' | 'sticker' | 'location' | 'contact')[];
20
+ /** Search in captions */
21
+ includeCaption?: boolean;
22
+ /** Search sender */
23
+ fromSender?: string;
24
+ /** Only from me */
25
+ fromMe?: boolean;
26
+ }
27
+ export interface SearchResult {
28
+ message: WAMessage;
29
+ matchedText: string;
30
+ matchPosition: number;
31
+ relevanceScore: number;
32
+ }
33
+ /**
34
+ * Extract searchable text from message
35
+ */
36
+ export declare const extractMessageText: (message: WAMessage) => string;
37
+ /**
38
+ * Search messages
39
+ */
40
+ export declare const searchMessages: (messages: WAMessage[], query: string, options?: SearchOptions) => SearchResult[];
41
+ /**
42
+ * Search with regex
43
+ */
44
+ export declare const searchMessagesRegex: (messages: WAMessage[], pattern: RegExp, options?: Omit<SearchOptions, "caseSensitive">) => SearchResult[];
45
+ /**
46
+ * Message Search Manager
47
+ */
48
+ export declare class MessageSearchManager {
49
+ private messages;
50
+ private messageIndex;
51
+ /**
52
+ * Add messages to the search index
53
+ */
54
+ addMessages(messages: WAMessage[]): void;
55
+ /**
56
+ * Remove messages from index
57
+ */
58
+ removeMessages(messageIds: string[]): void;
59
+ /**
60
+ * Clear all messages
61
+ */
62
+ clear(): void;
63
+ /**
64
+ * Get message count
65
+ */
66
+ get count(): number;
67
+ /**
68
+ * Search messages
69
+ */
70
+ search(query: string, options?: SearchOptions): SearchResult[];
71
+ /**
72
+ * Search with regex
73
+ */
74
+ searchRegex(pattern: RegExp, options?: Omit<SearchOptions, 'caseSensitive'>): SearchResult[];
75
+ /**
76
+ * Get messages by JID
77
+ */
78
+ getByJid(jid: string): WAMessage[];
79
+ /**
80
+ * Get messages by sender
81
+ */
82
+ getBySender(sender: string): WAMessage[];
83
+ /**
84
+ * Get messages by type
85
+ */
86
+ getByType(type: 'text' | 'image' | 'video' | 'document' | 'audio' | 'sticker' | 'location' | 'contact'): WAMessage[];
87
+ /**
88
+ * Get message by ID
89
+ */
90
+ getById(id: string): WAMessage | undefined;
91
+ }
92
+ /**
93
+ * Create a message search manager
94
+ */
95
+ export declare const createMessageSearch: () => MessageSearchManager;
96
+ //# sourceMappingURL=message-search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-search.d.ts","sourceRoot":"","sources":["../../src/Utils/message-search.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAoB,MAAM,UAAU,CAAA;AAE3D,MAAM,WAAW,aAAa;IAC7B,4BAA4B;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,mCAAmC;IACnC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,gCAAgC;IAChC,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,iCAAiC;IACjC,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,8BAA8B;IAC9B,YAAY,CAAC,EAAE,CAAC,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC,EAAE,CAAA;IACzG,yBAAyB;IACzB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,oBAAoB;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mBAAmB;IACnB,MAAM,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,YAAY;IAC5B,OAAO,EAAE,SAAS,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,SAAS,SAAS,KAAG,MA2BvD,CAAA;AAoDD;;GAEG;AACH,eAAO,MAAM,cAAc,GAC1B,UAAU,SAAS,EAAE,EACrB,OAAO,MAAM,EACb,UAAS,aAAkB,KACzB,YAAY,EAsDd,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAC/B,UAAU,SAAS,EAAE,EACrB,SAAS,MAAM,EACf,UAAS,IAAI,CAAC,aAAa,EAAE,eAAe,CAAM,KAChD,YAAY,EA+Bd,CAAA;AAED;;GAEG;AACH,qBAAa,oBAAoB;IAChC,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,YAAY,CAAoC;IAExD;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI;IAUxC;;OAEG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;IAQ1C;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,YAAY,EAAE;IAI9D;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,GAAG,YAAY,EAAE;IAI5F;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE;IAIlC;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE;IAIxC;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,EAAE;IAIpH;;OAEG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;CAG1C;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,QAAO,oBAEtC,CAAA"}