import { AccountManager } from '../account-manager/account-manager'; import { ActorStoreReader } from '../actor-store/actor-store-reader'; import { BskyAppView } from '../bsky-app-view'; import { ImageUrlBuilder } from '../image/image-url-builder'; import { ProfileView, ProfileViewBasic, ProfileViewDetailed } from '../lexicon/types/app/bsky/actor/defs'; import { Record as ProfileRecord } from '../lexicon/types/app/bsky/actor/profile'; import { Main as EmbedExternal, View as EmbedExternalView } from '../lexicon/types/app/bsky/embed/external'; import { Main as EmbedImages, View as EmbedImagesView } from '../lexicon/types/app/bsky/embed/images'; import { Main as EmbedRecord, View as EmbedRecordView } from '../lexicon/types/app/bsky/embed/record'; import { Main as EmbedRecordWithMedia } from '../lexicon/types/app/bsky/embed/recordWithMedia'; import { FeedViewPost, PostView } from '../lexicon/types/app/bsky/feed/defs'; import { Record as PostRecord } from '../lexicon/types/app/bsky/feed/post'; import { $Typed } from '../lexicon/util'; import { LocalRecords, RecordDescript } from './types'; type CommonSignedUris = 'avatar' | 'banner' | 'feed_thumbnail' | 'feed_fullsize'; export type LocalViewerCreator = (actorStoreReader: ActorStoreReader) => LocalViewer; export declare class LocalViewer { readonly actorStoreReader: ActorStoreReader; readonly accountManager: AccountManager; readonly imageUrlBuilder: ImageUrlBuilder; readonly bskyAppView?: BskyAppView | undefined; constructor(actorStoreReader: ActorStoreReader, accountManager: AccountManager, imageUrlBuilder: ImageUrlBuilder, bskyAppView?: BskyAppView | undefined); get did(): string; static creator(accountManager: AccountManager, imageUrlBuilder: ImageUrlBuilder, bskyAppView?: BskyAppView): LocalViewerCreator; getImageUrl(pattern: CommonSignedUris, cid: string): string; serviceAuthHeaders(did: string, lxm: string): Promise<{ headers: { authorization: string; }; }>; getRecordsSinceRev(rev: string): Promise; getProfileBasic(): Promise; formatAndInsertPostsInFeed(feed: FeedViewPost[], posts: RecordDescript[]): Promise; getPost(descript: RecordDescript): Promise; formatPostEmbed(did: string, post: PostRecord): Promise<$Typed | $Typed | $Typed | { $type: string; record: $Typed; media: Promise<$Typed | $Typed>; } | null>; formatSimpleEmbed(embed: $Typed | $Typed): Promise<$Typed | $Typed>; formatRecordEmbed(embed: EmbedRecord): Promise<$Typed>; private formatRecordEmbedInternal; formatRecordWithMediaEmbed(did: string, embed: EmbedRecordWithMedia): Promise<{ $type: string; record: $Typed; media: Promise<$Typed | $Typed>; } | null>; updateProfileViewBasic(view: T, record: ProfileRecord): T; updateProfileView(view: T, record: ProfileRecord): T; updateProfileDetailed(view: T, record: ProfileRecord): T; } export {}; //# sourceMappingURL=viewer.d.ts.map