@happyvertical/smrt-messages 0.30.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.
Files changed (153) hide show
  1. package/AGENTS.md +31 -0
  2. package/CLAUDE.md +1 -0
  3. package/LICENSE +7 -0
  4. package/README.md +103 -0
  5. package/dist/__smrt-register__.d.ts +2 -0
  6. package/dist/__smrt-register__.d.ts.map +1 -0
  7. package/dist/collections/AccountCollection.d.ts +42 -0
  8. package/dist/collections/AccountCollection.d.ts.map +1 -0
  9. package/dist/collections/AttachmentCollection.d.ts +67 -0
  10. package/dist/collections/AttachmentCollection.d.ts.map +1 -0
  11. package/dist/collections/BlacklistCollection.d.ts +14 -0
  12. package/dist/collections/BlacklistCollection.d.ts.map +1 -0
  13. package/dist/collections/EmailAccountCollection.d.ts +74 -0
  14. package/dist/collections/EmailAccountCollection.d.ts.map +1 -0
  15. package/dist/collections/EmailAttachmentCollection.d.ts +38 -0
  16. package/dist/collections/EmailAttachmentCollection.d.ts.map +1 -0
  17. package/dist/collections/EmailCollection.d.ts +81 -0
  18. package/dist/collections/EmailCollection.d.ts.map +1 -0
  19. package/dist/collections/EmailFolderCollection.d.ts +85 -0
  20. package/dist/collections/EmailFolderCollection.d.ts.map +1 -0
  21. package/dist/collections/MessageCollection.d.ts +74 -0
  22. package/dist/collections/MessageCollection.d.ts.map +1 -0
  23. package/dist/collections/WhitelistCollection.d.ts +18 -0
  24. package/dist/collections/WhitelistCollection.d.ts.map +1 -0
  25. package/dist/index.d.ts +27 -0
  26. package/dist/index.d.ts.map +1 -0
  27. package/dist/index.js +3068 -0
  28. package/dist/index.js.map +1 -0
  29. package/dist/manifest.json +10576 -0
  30. package/dist/models/Account.d.ts +47 -0
  31. package/dist/models/Account.d.ts.map +1 -0
  32. package/dist/models/Attachment.d.ts +48 -0
  33. package/dist/models/Attachment.d.ts.map +1 -0
  34. package/dist/models/Blacklist.d.ts +21 -0
  35. package/dist/models/Blacklist.d.ts.map +1 -0
  36. package/dist/models/Email.d.ts +98 -0
  37. package/dist/models/Email.d.ts.map +1 -0
  38. package/dist/models/EmailAccount.d.ts +65 -0
  39. package/dist/models/EmailAccount.d.ts.map +1 -0
  40. package/dist/models/EmailAttachment.d.ts +19 -0
  41. package/dist/models/EmailAttachment.d.ts.map +1 -0
  42. package/dist/models/EmailFolder.d.ts +65 -0
  43. package/dist/models/EmailFolder.d.ts.map +1 -0
  44. package/dist/models/Message.d.ts +105 -0
  45. package/dist/models/Message.d.ts.map +1 -0
  46. package/dist/models/SlackAccount.d.ts +13 -0
  47. package/dist/models/SlackAccount.d.ts.map +1 -0
  48. package/dist/models/SlackMessage.d.ts +34 -0
  49. package/dist/models/SlackMessage.d.ts.map +1 -0
  50. package/dist/models/Tweet.d.ts +31 -0
  51. package/dist/models/Tweet.d.ts.map +1 -0
  52. package/dist/models/TwitterAccount.d.ts +12 -0
  53. package/dist/models/TwitterAccount.d.ts.map +1 -0
  54. package/dist/models/Whitelist.d.ts +21 -0
  55. package/dist/models/Whitelist.d.ts.map +1 -0
  56. package/dist/playground.d.ts +2 -0
  57. package/dist/playground.d.ts.map +1 -0
  58. package/dist/playground.js +176 -0
  59. package/dist/playground.js.map +1 -0
  60. package/dist/senders/EmailSender.d.ts +13 -0
  61. package/dist/senders/EmailSender.d.ts.map +1 -0
  62. package/dist/senders/SlackSender.d.ts +11 -0
  63. package/dist/senders/SlackSender.d.ts.map +1 -0
  64. package/dist/senders/TweetSender.d.ts +11 -0
  65. package/dist/senders/TweetSender.d.ts.map +1 -0
  66. package/dist/smrt-knowledge.json +4234 -0
  67. package/dist/svelte/components/AccountAvatar.svelte +107 -0
  68. package/dist/svelte/components/AccountAvatar.svelte.d.ts +12 -0
  69. package/dist/svelte/components/AccountAvatar.svelte.d.ts.map +1 -0
  70. package/dist/svelte/components/AccountCard.svelte +173 -0
  71. package/dist/svelte/components/AccountCard.svelte.d.ts +12 -0
  72. package/dist/svelte/components/AccountCard.svelte.d.ts.map +1 -0
  73. package/dist/svelte/components/AccountList.svelte +90 -0
  74. package/dist/svelte/components/AccountList.svelte.d.ts +12 -0
  75. package/dist/svelte/components/AccountList.svelte.d.ts.map +1 -0
  76. package/dist/svelte/components/AttachmentChip.svelte +99 -0
  77. package/dist/svelte/components/AttachmentChip.svelte.d.ts +12 -0
  78. package/dist/svelte/components/AttachmentChip.svelte.d.ts.map +1 -0
  79. package/dist/svelte/components/AttachmentUpload.svelte +160 -0
  80. package/dist/svelte/components/AttachmentUpload.svelte.d.ts +11 -0
  81. package/dist/svelte/components/AttachmentUpload.svelte.d.ts.map +1 -0
  82. package/dist/svelte/components/ComposeForm.svelte +387 -0
  83. package/dist/svelte/components/ComposeForm.svelte.d.ts +13 -0
  84. package/dist/svelte/components/ComposeForm.svelte.d.ts.map +1 -0
  85. package/dist/svelte/components/EmailAccountManager.svelte +690 -0
  86. package/dist/svelte/components/EmailAccountManager.svelte.d.ts +15 -0
  87. package/dist/svelte/components/EmailAccountManager.svelte.d.ts.map +1 -0
  88. package/dist/svelte/components/EmailFilterManager.svelte +687 -0
  89. package/dist/svelte/components/EmailFilterManager.svelte.d.ts +14 -0
  90. package/dist/svelte/components/EmailFilterManager.svelte.d.ts.map +1 -0
  91. package/dist/svelte/components/FolderNav.svelte +171 -0
  92. package/dist/svelte/components/FolderNav.svelte.d.ts +11 -0
  93. package/dist/svelte/components/FolderNav.svelte.d.ts.map +1 -0
  94. package/dist/svelte/components/ForwardForm.svelte +166 -0
  95. package/dist/svelte/components/ForwardForm.svelte.d.ts +10 -0
  96. package/dist/svelte/components/ForwardForm.svelte.d.ts.map +1 -0
  97. package/dist/svelte/components/MessageCard.svelte +336 -0
  98. package/dist/svelte/components/MessageCard.svelte.d.ts +20 -0
  99. package/dist/svelte/components/MessageCard.svelte.d.ts.map +1 -0
  100. package/dist/svelte/components/MessageDetail.svelte +309 -0
  101. package/dist/svelte/components/MessageDetail.svelte.d.ts +18 -0
  102. package/dist/svelte/components/MessageDetail.svelte.d.ts.map +1 -0
  103. package/dist/svelte/components/MessageFilters.svelte +228 -0
  104. package/dist/svelte/components/MessageFilters.svelte.d.ts +13 -0
  105. package/dist/svelte/components/MessageFilters.svelte.d.ts.map +1 -0
  106. package/dist/svelte/components/MessageList.svelte +101 -0
  107. package/dist/svelte/components/MessageList.svelte.d.ts +23 -0
  108. package/dist/svelte/components/MessageList.svelte.d.ts.map +1 -0
  109. package/dist/svelte/components/MessageStatusIndicator.svelte +82 -0
  110. package/dist/svelte/components/MessageStatusIndicator.svelte.d.ts +11 -0
  111. package/dist/svelte/components/MessageStatusIndicator.svelte.d.ts.map +1 -0
  112. package/dist/svelte/components/MessageToolbar.svelte +131 -0
  113. package/dist/svelte/components/MessageToolbar.svelte.d.ts +14 -0
  114. package/dist/svelte/components/MessageToolbar.svelte.d.ts.map +1 -0
  115. package/dist/svelte/components/MessageTypeBadge.svelte +59 -0
  116. package/dist/svelte/components/MessageTypeBadge.svelte.d.ts +9 -0
  117. package/dist/svelte/components/MessageTypeBadge.svelte.d.ts.map +1 -0
  118. package/dist/svelte/components/RecipientInput.svelte +150 -0
  119. package/dist/svelte/components/RecipientInput.svelte.d.ts +11 -0
  120. package/dist/svelte/components/RecipientInput.svelte.d.ts.map +1 -0
  121. package/dist/svelte/components/ReplyForm.svelte +159 -0
  122. package/dist/svelte/components/ReplyForm.svelte.d.ts +11 -0
  123. package/dist/svelte/components/ReplyForm.svelte.d.ts.map +1 -0
  124. package/dist/svelte/components/SendStatusBadge.svelte +64 -0
  125. package/dist/svelte/components/SendStatusBadge.svelte.d.ts +8 -0
  126. package/dist/svelte/components/SendStatusBadge.svelte.d.ts.map +1 -0
  127. package/dist/svelte/components/ThreadView.svelte +240 -0
  128. package/dist/svelte/components/ThreadView.svelte.d.ts +12 -0
  129. package/dist/svelte/components/ThreadView.svelte.d.ts.map +1 -0
  130. package/dist/svelte/i18n.d.ts +42 -0
  131. package/dist/svelte/i18n.d.ts.map +1 -0
  132. package/dist/svelte/i18n.js +60 -0
  133. package/dist/svelte/i18n.messages.d.ts +32 -0
  134. package/dist/svelte/i18n.messages.d.ts.map +1 -0
  135. package/dist/svelte/i18n.messages.js +46 -0
  136. package/dist/svelte/index.d.ts +54 -0
  137. package/dist/svelte/index.d.ts.map +1 -0
  138. package/dist/svelte/index.js +44 -0
  139. package/dist/svelte/playground.d.ts +341 -0
  140. package/dist/svelte/playground.d.ts.map +1 -0
  141. package/dist/svelte/playground.js +171 -0
  142. package/dist/svelte/types.d.ts +195 -0
  143. package/dist/svelte/types.d.ts.map +1 -0
  144. package/dist/svelte/types.js +6 -0
  145. package/dist/types.d.ts +316 -0
  146. package/dist/types.d.ts.map +1 -0
  147. package/dist/types.js +2 -0
  148. package/dist/types.js.map +1 -0
  149. package/dist/ui.d.ts +4 -0
  150. package/dist/ui.d.ts.map +1 -0
  151. package/dist/ui.js +103 -0
  152. package/dist/ui.js.map +1 -0
  153. package/package.json +104 -0
@@ -0,0 +1,176 @@
1
+ import { MESSAGES_MODULE_META } from "./ui.js";
2
+ const noop = () => {
3
+ };
4
+ const sampleAccounts = [
5
+ {
6
+ id: "account-editorial",
7
+ name: "Editorial Inbox",
8
+ email: "editorial@example.com",
9
+ providerType: "email",
10
+ isActive: true,
11
+ unreadCount: 12,
12
+ totalCount: 438,
13
+ lastSyncAt: "2026-03-21T16:12:00.000Z"
14
+ },
15
+ {
16
+ id: "account-social",
17
+ name: "Community Slack",
18
+ providerType: "slack",
19
+ isActive: true,
20
+ unreadCount: 3,
21
+ totalCount: 91,
22
+ lastSyncAt: "2026-03-21T16:05:00.000Z"
23
+ }
24
+ ];
25
+ const sampleAttachments = [
26
+ {
27
+ id: "attachment-proof",
28
+ filename: "proofing-notes.pdf",
29
+ contentType: "application/pdf",
30
+ size: 248512
31
+ }
32
+ ];
33
+ const sampleMessages = [
34
+ {
35
+ id: "message-1",
36
+ type: "email",
37
+ accountId: "account-editorial",
38
+ subject: "Governance review complete",
39
+ body: "The editorial governance review is complete and the draft is ready for publication.",
40
+ senderName: "Taylor Rowan",
41
+ senderAddress: "taylor@example.com",
42
+ recipientAddresses: [
43
+ { address: "editorial@example.com", name: "Editorial Desk" }
44
+ ],
45
+ ccAddresses: [{ address: "governance@example.com", name: "Governance" }],
46
+ threadId: "thread-1",
47
+ isRead: true,
48
+ isFlagged: false,
49
+ hasAttachments: true,
50
+ attachments: sampleAttachments,
51
+ date: "2026-03-21T15:30:00.000Z",
52
+ folderPath: "Inbox",
53
+ labels: ["governance", "release"],
54
+ sendStatus: "sent"
55
+ },
56
+ {
57
+ id: "message-2",
58
+ type: "slack",
59
+ accountId: "account-social",
60
+ subject: "Release coordination",
61
+ body: "Can we confirm the package rollout order for this afternoon?",
62
+ senderName: "Jordan Lee",
63
+ senderAddress: "jordan@example.com",
64
+ recipientAddresses: [{ address: "#release-coordination" }],
65
+ isRead: false,
66
+ isFlagged: true,
67
+ hasAttachments: false,
68
+ date: "2026-03-21T16:02:00.000Z",
69
+ folderPath: "Slack / release-coordination",
70
+ meta: {
71
+ channelName: "release-coordination"
72
+ }
73
+ }
74
+ ];
75
+ const loadAccountList = () => import("./svelte/components/AccountList.svelte");
76
+ const loadComposeForm = () => import("./svelte/components/ComposeForm.svelte");
77
+ const loadMessageDetail = () => import("./svelte/components/MessageDetail.svelte");
78
+ const loadMessageList = () => import("./svelte/components/MessageList.svelte");
79
+ const playground = {
80
+ packageName: "@happyvertical/smrt-messages",
81
+ displayName: MESSAGES_MODULE_META.displayName,
82
+ description: MESSAGES_MODULE_META.description,
83
+ moduleMeta: MESSAGES_MODULE_META,
84
+ entries: [
85
+ {
86
+ id: "account-list",
87
+ title: "Account List",
88
+ description: "Connected messaging accounts with sync state and unread counts.",
89
+ loadComponent: loadAccountList,
90
+ order: 1,
91
+ props: {
92
+ accounts: sampleAccounts,
93
+ onaccountclick: noop,
94
+ onsync: noop,
95
+ onremove: noop
96
+ },
97
+ modes: {
98
+ mock: {
99
+ label: "Mock"
100
+ }
101
+ }
102
+ },
103
+ {
104
+ id: "message-list",
105
+ title: "Message List",
106
+ description: "Inbox-style message listing with selection, account context, and type-aware cards.",
107
+ loadComponent: loadMessageList,
108
+ order: 2,
109
+ props: {
110
+ messages: sampleMessages,
111
+ activeMessageId: "message-1",
112
+ accounts: sampleAccounts,
113
+ showAccount: true,
114
+ onmessageclick: noop,
115
+ onselect: noop,
116
+ onflag: noop
117
+ },
118
+ modes: {
119
+ mock: {
120
+ label: "Mock"
121
+ }
122
+ }
123
+ },
124
+ {
125
+ id: "message-detail",
126
+ title: "Message Detail",
127
+ description: "Full message view for reading, attachments, and follow-up actions.",
128
+ loadComponent: loadMessageDetail,
129
+ order: 3,
130
+ props: {
131
+ message: sampleMessages[0],
132
+ attachments: sampleAttachments,
133
+ account: sampleAccounts[0],
134
+ onreply: noop,
135
+ onforward: noop,
136
+ ondelete: noop
137
+ },
138
+ modes: {
139
+ mock: {
140
+ label: "Mock"
141
+ }
142
+ }
143
+ },
144
+ {
145
+ id: "compose-form",
146
+ title: "Compose Form",
147
+ description: "Channel-aware compose experience for email, Slack, and short-form posts.",
148
+ loadComponent: loadComposeForm,
149
+ order: 4,
150
+ props: {
151
+ type: "email",
152
+ accounts: sampleAccounts,
153
+ initialState: {
154
+ accountId: "account-editorial",
155
+ to: [
156
+ { address: "ops@example.com", name: "Operations", isValid: true }
157
+ ],
158
+ subject: "Launch checklist follow-up",
159
+ body: "Please confirm the remaining package rollout items for issue #1047."
160
+ },
161
+ onsend: noop,
162
+ onsavedraft: noop,
163
+ ondiscard: noop
164
+ },
165
+ modes: {
166
+ mock: {
167
+ label: "Mock"
168
+ }
169
+ }
170
+ }
171
+ ]
172
+ };
173
+ export {
174
+ playground as default
175
+ };
176
+ //# sourceMappingURL=playground.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playground.js","sources":["../src/svelte/playground.ts"],"sourcesContent":["import { MESSAGES_MODULE_META } from '../ui.js';\n\nconst noop = () => {};\n\nconst sampleAccounts = [\n {\n id: 'account-editorial',\n name: 'Editorial Inbox',\n email: 'editorial@example.com',\n providerType: 'email',\n isActive: true,\n unreadCount: 12,\n totalCount: 438,\n lastSyncAt: '2026-03-21T16:12:00.000Z',\n },\n {\n id: 'account-social',\n name: 'Community Slack',\n providerType: 'slack',\n isActive: true,\n unreadCount: 3,\n totalCount: 91,\n lastSyncAt: '2026-03-21T16:05:00.000Z',\n },\n];\n\nconst sampleAttachments = [\n {\n id: 'attachment-proof',\n filename: 'proofing-notes.pdf',\n contentType: 'application/pdf',\n size: 248512,\n },\n];\n\nconst sampleMessages = [\n {\n id: 'message-1',\n type: 'email',\n accountId: 'account-editorial',\n subject: 'Governance review complete',\n body: 'The editorial governance review is complete and the draft is ready for publication.',\n senderName: 'Taylor Rowan',\n senderAddress: 'taylor@example.com',\n recipientAddresses: [\n { address: 'editorial@example.com', name: 'Editorial Desk' },\n ],\n ccAddresses: [{ address: 'governance@example.com', name: 'Governance' }],\n threadId: 'thread-1',\n isRead: true,\n isFlagged: false,\n hasAttachments: true,\n attachments: sampleAttachments,\n date: '2026-03-21T15:30:00.000Z',\n folderPath: 'Inbox',\n labels: ['governance', 'release'],\n sendStatus: 'sent',\n },\n {\n id: 'message-2',\n type: 'slack',\n accountId: 'account-social',\n subject: 'Release coordination',\n body: 'Can we confirm the package rollout order for this afternoon?',\n senderName: 'Jordan Lee',\n senderAddress: 'jordan@example.com',\n recipientAddresses: [{ address: '#release-coordination' }],\n isRead: false,\n isFlagged: true,\n hasAttachments: false,\n date: '2026-03-21T16:02:00.000Z',\n folderPath: 'Slack / release-coordination',\n meta: {\n channelName: 'release-coordination',\n },\n },\n];\n\nconst loadAccountList = () => import('./components/AccountList.svelte');\nconst loadComposeForm = () => import('./components/ComposeForm.svelte');\nconst loadMessageDetail = () => import('./components/MessageDetail.svelte');\nconst loadMessageList = () => import('./components/MessageList.svelte');\n\nexport default {\n packageName: '@happyvertical/smrt-messages',\n displayName: MESSAGES_MODULE_META.displayName,\n description: MESSAGES_MODULE_META.description,\n moduleMeta: MESSAGES_MODULE_META,\n entries: [\n {\n id: 'account-list',\n title: 'Account List',\n description:\n 'Connected messaging accounts with sync state and unread counts.',\n loadComponent: loadAccountList,\n order: 1,\n props: {\n accounts: sampleAccounts,\n onaccountclick: noop,\n onsync: noop,\n onremove: noop,\n },\n modes: {\n mock: {\n label: 'Mock',\n },\n },\n },\n {\n id: 'message-list',\n title: 'Message List',\n description:\n 'Inbox-style message listing with selection, account context, and type-aware cards.',\n loadComponent: loadMessageList,\n order: 2,\n props: {\n messages: sampleMessages,\n activeMessageId: 'message-1',\n accounts: sampleAccounts,\n showAccount: true,\n onmessageclick: noop,\n onselect: noop,\n onflag: noop,\n },\n modes: {\n mock: {\n label: 'Mock',\n },\n },\n },\n {\n id: 'message-detail',\n title: 'Message Detail',\n description:\n 'Full message view for reading, attachments, and follow-up actions.',\n loadComponent: loadMessageDetail,\n order: 3,\n props: {\n message: sampleMessages[0],\n attachments: sampleAttachments,\n account: sampleAccounts[0],\n onreply: noop,\n onforward: noop,\n ondelete: noop,\n },\n modes: {\n mock: {\n label: 'Mock',\n },\n },\n },\n {\n id: 'compose-form',\n title: 'Compose Form',\n description:\n 'Channel-aware compose experience for email, Slack, and short-form posts.',\n loadComponent: loadComposeForm,\n order: 4,\n props: {\n type: 'email',\n accounts: sampleAccounts,\n initialState: {\n accountId: 'account-editorial',\n to: [\n { address: 'ops@example.com', name: 'Operations', isValid: true },\n ],\n subject: 'Launch checklist follow-up',\n body: 'Please confirm the remaining package rollout items for issue #1047.',\n },\n onsend: noop,\n onsavedraft: noop,\n ondiscard: noop,\n },\n modes: {\n mock: {\n label: 'Mock',\n },\n },\n },\n ],\n};\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { EmailClient } from '@happyvertical/email';
2
+ import { Email } from '../models/Email';
3
+ import { EmailAccount } from '../models/EmailAccount';
4
+ import { MessageSenderInterface, MessageSendResult, SendMessageOptions } from '../types';
5
+ export declare class EmailSender implements MessageSenderInterface {
6
+ readonly providerType = "email";
7
+ private client;
8
+ private account;
9
+ constructor(client: EmailClient, account: EmailAccount);
10
+ isReady(): boolean;
11
+ send(message: Email, _options?: SendMessageOptions): Promise<MessageSendResult>;
12
+ }
13
+ //# sourceMappingURL=EmailSender.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmailSender.d.ts","sourceRoot":"","sources":["../../src/senders/EmailSender.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EACV,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB,qBAAa,WAAY,YAAW,sBAAsB;IACxD,QAAQ,CAAC,YAAY,WAAW;IAChC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAe;gBAElB,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY;IAKtD,OAAO,IAAI,OAAO;IAIZ,IAAI,CACR,OAAO,EAAE,KAAK,EACd,QAAQ,CAAC,EAAE,kBAAkB,GAC5B,OAAO,CAAC,iBAAiB,CAAC;CA+C9B"}
@@ -0,0 +1,11 @@
1
+ import { SlackAccount } from '../models/SlackAccount';
2
+ import { SlackMessage } from '../models/SlackMessage';
3
+ import { MessageSenderInterface, MessageSendResult, SendMessageOptions } from '../types';
4
+ export declare class SlackSender implements MessageSenderInterface {
5
+ readonly providerType = "slack";
6
+ private account;
7
+ constructor(account: SlackAccount);
8
+ isReady(): boolean;
9
+ send(message: SlackMessage, _options?: SendMessageOptions): Promise<MessageSendResult>;
10
+ }
11
+ //# sourceMappingURL=SlackSender.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlackSender.d.ts","sourceRoot":"","sources":["../../src/senders/SlackSender.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EACV,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB,qBAAa,WAAY,YAAW,sBAAsB;IACxD,QAAQ,CAAC,YAAY,WAAW;IAChC,OAAO,CAAC,OAAO,CAAe;gBAElB,OAAO,EAAE,YAAY;IAIjC,OAAO,IAAI,OAAO;IAIZ,IAAI,CACR,OAAO,EAAE,YAAY,EACrB,QAAQ,CAAC,EAAE,kBAAkB,GAC5B,OAAO,CAAC,iBAAiB,CAAC;CA+C9B"}
@@ -0,0 +1,11 @@
1
+ import { Tweet } from '../models/Tweet';
2
+ import { TwitterAccount } from '../models/TwitterAccount';
3
+ import { MessageSenderInterface, MessageSendResult, SendMessageOptions } from '../types';
4
+ export declare class TweetSender implements MessageSenderInterface {
5
+ readonly providerType = "twitter";
6
+ private account;
7
+ constructor(account: TwitterAccount);
8
+ isReady(): boolean;
9
+ send(message: Tweet, _options?: SendMessageOptions): Promise<MessageSendResult>;
10
+ }
11
+ //# sourceMappingURL=TweetSender.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TweetSender.d.ts","sourceRoot":"","sources":["../../src/senders/TweetSender.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EACV,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB,qBAAa,WAAY,YAAW,sBAAsB;IACxD,QAAQ,CAAC,YAAY,aAAa;IAClC,OAAO,CAAC,OAAO,CAAiB;gBAEpB,OAAO,EAAE,cAAc;IAInC,OAAO,IAAI,OAAO;IAIZ,IAAI,CACR,OAAO,EAAE,KAAK,EACd,QAAQ,CAAC,EAAE,kBAAkB,GAC5B,OAAO,CAAC,iBAAiB,CAAC;CAqD9B"}