Something went wrong. Try again.
Bluesky app fork with some witchin' additions 💫
Something went wrong. Try again.
924 B · 49 lines
TypeScript
at main
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950import {type Sift} from '@bsky.app/sift'import {type Emoji} from '@emoji-mart/data'
import type * as bsky from '#/types/bsky'
export type AutocompleteProfile = { key: string type: 'profile' value: string profile: bsky.profile.AnyProfileView}
export type AutocompleteTag = { key: string type: 'tag' value: string tag: string}
export type AutocompleteEmoji = { key: string type: 'emoji' value: string emoji: Emoji}
export type AutocompleteSearch = { key: string type: 'search' value: string}
export type AutocompleteItem = | AutocompleteProfile | AutocompleteTag | AutocompleteEmoji | AutocompleteSearch
export type AutocompleteItemType = AutocompleteItem['type']
export type AutocompleteItemProps = Parameters< Parameters<typeof Sift<AutocompleteItem>>[0]['render']>[0]
export type AutocompleteApi = { query: string items: AutocompleteItem[] isFetching: boolean}