2022-12-12 07:40:40 +09:00
|
|
|
import type { Account, AccountCredentials, Emoji, Instance, Notification, Status } from 'masto'
|
2022-11-16 00:48:23 +09:00
|
|
|
|
|
|
|
export interface AppInfo {
|
|
|
|
id: string
|
|
|
|
name: string
|
|
|
|
website: string | null
|
|
|
|
redirect_uri: string
|
|
|
|
client_id: string
|
|
|
|
client_secret: string
|
|
|
|
vapid_key: string
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface UserLogin {
|
|
|
|
server: string
|
2022-11-30 05:51:52 +09:00
|
|
|
token?: string
|
2022-11-25 00:48:52 +09:00
|
|
|
account: AccountCredentials
|
2022-11-16 00:48:23 +09:00
|
|
|
}
|
2022-11-17 01:11:08 +09:00
|
|
|
|
2022-11-17 16:35:42 +09:00
|
|
|
export type PaginatorState = 'idle' | 'loading' | 'done' | 'error'
|
2022-11-21 15:55:31 +09:00
|
|
|
|
|
|
|
export interface ServerInfo extends Instance {
|
|
|
|
server: string
|
|
|
|
timeUpdated: number
|
|
|
|
customEmojis?: Record<string, Emoji>
|
|
|
|
}
|
2022-11-30 09:47:54 +09:00
|
|
|
|
|
|
|
export interface GroupedNotifications {
|
|
|
|
id: string
|
2022-12-12 07:40:40 +09:00
|
|
|
type: Exclude<string, 'grouped-reblogs-and-favourites'>
|
2022-11-30 09:47:54 +09:00
|
|
|
items: Notification[]
|
|
|
|
}
|
2022-11-30 13:50:29 +09:00
|
|
|
|
2022-12-12 07:40:40 +09:00
|
|
|
export interface GroupedAccountLike {
|
|
|
|
account: Account
|
|
|
|
favourite?: Notification
|
|
|
|
reblog?: Notification
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface GroupedLikeNotifications {
|
|
|
|
id: string
|
|
|
|
type: 'grouped-reblogs-and-favourites'
|
|
|
|
status: Status
|
|
|
|
likes: GroupedAccountLike[]
|
|
|
|
}
|
|
|
|
|
|
|
|
export type NotificationSlot = GroupedNotifications | GroupedLikeNotifications | Notification
|
|
|
|
|
2022-11-30 13:50:29 +09:00
|
|
|
export type TranslateFn = ReturnType<typeof useI18n>['t']
|