UNPKG

@atproto/api

Version:

Client library for atproto and Bluesky

115 lines (103 loc) 2.44 kB
import { AppBskyActorDefs } from './client' import { ModerationPrefs } from './moderation/types' /** * Supported proxy targets */ type UnknownServiceType = string & NonNullable<unknown> export type AtprotoServiceType = 'atproto_labeler' | UnknownServiceType /** * Used by the PersistSessionHandler to indicate what change occurred */ export type AtpSessionEvent = | 'create' | 'create-failed' | 'update' | 'expired' | 'network-error' /** * Used by AtpAgent to store active sessions */ export interface AtpSessionData { refreshJwt: string accessJwt: string handle: string did: string email?: string emailConfirmed?: boolean emailAuthFactor?: boolean active: boolean status?: string } /** * Handler signature passed to AtpAgent to store session data */ export type AtpPersistSessionHandler = ( evt: AtpSessionEvent, session: AtpSessionData | undefined, ) => void | Promise<void> /** * AtpAgent login() opts */ export interface AtpAgentLoginOpts { identifier: string password: string authFactorToken?: string | undefined allowTakendown?: boolean } /** * AtpAgent global config opts */ export interface AtpAgentGlobalOpts { appLabelers?: string[] } /** * Bluesky feed view preferences */ export interface BskyFeedViewPreference { hideReplies: boolean hideRepliesByUnfollowed: boolean hideRepliesByLikeCount: number hideReposts: boolean hideQuotePosts: boolean [key: string]: any } /** * Bluesky thread view preferences */ export interface BskyThreadViewPreference { sort: string prioritizeFollowedUsers: boolean [key: string]: any } /** * Bluesky interests preferences */ export interface BskyInterestsPreference { tags: string[] [key: string]: any } /** * Bluesky preferences */ export interface BskyPreferences { /** * @deprecated use `savedFeeds` */ feeds: { saved?: string[] pinned?: string[] } savedFeeds: AppBskyActorDefs.SavedFeed[] feedViewPrefs: Record<string, BskyFeedViewPreference> threadViewPrefs: BskyThreadViewPreference moderationPrefs: ModerationPrefs birthDate: Date | undefined interests: BskyInterestsPreference bskyAppState: { queuedNudges: string[] activeProgressGuide: AppBskyActorDefs.BskyAppProgressGuide | undefined nuxs: AppBskyActorDefs.Nux[] } postInteractionSettings: AppBskyActorDefs.PostInteractionSettingsPref verificationPrefs: AppBskyActorDefs.VerificationPrefs }