import type { MastodonAccount } from './account' import type { MediaAttachment } from './media' import type { UUID } from 'wildebeest/backend/src/types' type Visibility = 'public' | 'unlisted' | 'private' | 'direct' // https://docs.joinmastodon.org/entities/Status/ // https://github.com/mastodon/mastodon-android/blob/master/mastodon/src/main/java/org/joinmastodon/android/model/Status.java export type MastodonStatus = { id: UUID uri: URL created_at: string account: MastodonAccount content: string visibility: Visibility spoiler_text: string emojis: Array media_attachments: Array mentions: Array tags: Array favourites_count?: number reblogs_count?: number reblog?: MastodonStatus edited_at?: string replies_count?: number reblogged?: boolean favourited?: boolean } // https://docs.joinmastodon.org/entities/Context/ export type Context = { ancestors: Array descendants: Array }