aboutsummaryrefslogtreecommitdiff
path: root/src/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/api')
-rw-r--r--src/api/MessageClicks.ts17
-rw-r--r--src/api/index.ts1
2 files changed, 18 insertions, 0 deletions
diff --git a/src/api/MessageClicks.ts b/src/api/MessageClicks.ts
new file mode 100644
index 0000000..476896d
--- /dev/null
+++ b/src/api/MessageClicks.ts
@@ -0,0 +1,17 @@
+type Listener = (message, channel, event) => void;
+
+const listeners = new Set<Listener>();
+
+export function _handleClick(message, channel, event) {
+ for (const listener of listeners) {
+ listener(message, channel, event);
+ }
+}
+
+export function addListener(listener: Listener) {
+ listeners.add(listener);
+}
+
+export function removeListener(listener: Listener) {
+ return listeners.delete(listener);
+} \ No newline at end of file
diff --git a/src/api/index.ts b/src/api/index.ts
new file mode 100644
index 0000000..6688927
--- /dev/null
+++ b/src/api/index.ts
@@ -0,0 +1 @@
+export * as MessageClicks from "./MessageClicks"; \ No newline at end of file