about summary refs log tree commit diff
path: root/app/javascript/types/resources.ts
diff options
context:
space:
mode:
authorfusagiko / takayamaki <24884114+takayamaki@users.noreply.github.com>2023-04-03 10:31:39 +0900
committerGitHub <noreply@github.com>2023-04-03 03:31:39 +0200
commit4520e6473afe901005e7ac532317f4b4f1af9ead (patch)
tree1ac8b7caa6c2ad0e565b99afaae3a46c0d9a77c7 /app/javascript/types/resources.ts
parent2f7c3cb628ddf0438452325c52359f575aab6890 (diff)
[Proposal] Make able to write React in Typescript (#16210)
Co-authored-by: berlysia <berlysia@gmail.com>
Co-authored-by: fusagiko / takayamaki <takayamaki@users.noreply.github.com>
Diffstat (limited to 'app/javascript/types/resources.ts')
-rw-r--r--app/javascript/types/resources.ts13
1 files changed, 13 insertions, 0 deletions
diff --git a/app/javascript/types/resources.ts b/app/javascript/types/resources.ts
new file mode 100644
index 000000000..efbb1faa7
--- /dev/null
+++ b/app/javascript/types/resources.ts
@@ -0,0 +1,13 @@
+interface MastodonMap<T> {
+  get<K extends keyof T>(key: K): T[K];
+  has<K extends keyof T>(key: K): boolean;
+  set<K extends keyof T>(key: K, value: T[K]): this;
+}
+
+type AccountValues = {
+  id: number;
+  avatar: string;
+  avatar_static: string;
+  [key: string]: any;
+}
+export type Account = MastodonMap<AccountValues>