import type { ApiCollectionJSON } from '@/mastodon/api_types/collections'; import type { ApiSearchResultsJSON } from '@/mastodon/api_types/search'; import type { ApiHashtagJSON } from '@/mastodon/api_types/tags'; export type SearchType = 'account' | 'hashtag' | 'accounts' | 'statuses'; export interface RecentSearch { q: string; type?: SearchType; } export interface SearchResults { accounts: string[]; statuses: string[]; hashtags: ApiHashtagJSON[]; collections: ApiCollectionJSON[]; } export const createSearchResults = (serverJSON: ApiSearchResultsJSON) => ({ accounts: serverJSON.accounts.map((account) => account.id), statuses: serverJSON.statuses.map((status) => status.id), hashtags: serverJSON.hashtags, collections: serverJSON.collections, });