import { IdResolver } from '@atproto/identity'; import { Cid, l } from '@atproto/lex'; import { WriteOpAction } from '@atproto/repo'; import { AtUri, DidString } from '@atproto/syntax'; import { com } from '../../../lexicons/index.js'; import { BackgroundQueue } from '../background.js'; import { Database } from '../db/index.js'; import * as Block from './plugins/block.js'; import * as ChatDeclaration from './plugins/chat-declaration.js'; import * as FeedGenerator from './plugins/feed-generator.js'; import * as Follow from './plugins/follow.js'; import * as GermDeclaration from './plugins/germ-declaration.js'; import * as Labeler from './plugins/labeler.js'; import * as Like from './plugins/like.js'; import * as ListBlock from './plugins/list-block.js'; import * as ListItem from './plugins/list-item.js'; import * as List from './plugins/list.js'; import * as NotifDeclaration from './plugins/notif-declaration.js'; import * as Postgate from './plugins/post-gate.js'; import * as Post from './plugins/post.js'; import * as Profile from './plugins/profile.js'; import * as Repost from './plugins/repost.js'; import * as StarterPack from './plugins/starter-pack.js'; import * as Status from './plugins/status.js'; import * as Threadgate from './plugins/thread-gate.js'; import * as Verification from './plugins/verification.js'; export declare class IndexingService { db: Database; idResolver: IdResolver; background: BackgroundQueue; records: { post: Post.PluginType; threadGate: Threadgate.PluginType; postGate: Postgate.PluginType; like: Like.PluginType; repost: Repost.PluginType; follow: Follow.PluginType; profile: Profile.PluginType; list: List.PluginType; listItem: ListItem.PluginType; listBlock: ListBlock.PluginType; block: Block.PluginType; feedGenerator: FeedGenerator.PluginType; starterPack: StarterPack.PluginType; labeler: Labeler.PluginType; notifDeclaration: NotifDeclaration.PluginType; chatDeclaration: ChatDeclaration.PluginType; germDeclaration: GermDeclaration.PluginType; verification: Verification.PluginType; status: Status.PluginType; }; constructor(db: Database, idResolver: IdResolver, background: BackgroundQueue); transact(txn: Database): IndexingService; indexRecord(uri: AtUri, cid: Cid, obj: unknown, action: WriteOpAction.Create | WriteOpAction.Update, timestamp: string, opts?: { disableNotifs?: boolean; disableLabels?: boolean; }): Promise; deleteRecord(uri: AtUri, cascading?: boolean): Promise; indexHandle(did: string, timestamp: string, force?: boolean): Promise; indexRepo(did: DidString, commit?: string): Promise; getCurrentRecords(did: string): Promise>; setCommitLastSeen(did: string, commit: Cid, rev: string): Promise; findIndexerForCollection(collection: string): import("./processor.js").RecordProcessor, Omit>>, { uri: string; cid: string; indexedAt: string; creator: string; createdAt: string; sortAt: string; subjectDid: string; }> | import("./processor.js").RecordProcessor, Omit>>, unknown> | import("./processor.js").RecordProcessor, Omit>>, { uri: string; cid: string; indexedAt: string; creator: string; displayName: string; description: string | null; avatarCid: string | null; createdAt: string; sortAt: string; feedDid: string; descriptionFacets: string | null; }> | import("./processor.js").RecordProcessor, Omit>>, { uri: string; cid: string; indexedAt: string; creator: string; createdAt: string; sortAt: string; subjectDid: string; }> | import("./processor.js").RecordProcessor, Omit>>, unknown> | import("./processor.js").RecordProcessor, Omit>>, { uri: string; cid: string; indexedAt: string; creator: string; createdAt: string; sortAt: string; }> | import("./processor.js").RecordProcessor, Omit>>, { uri: string; cid: string; indexedAt: string; creator: string; createdAt: string; sortAt: string; subject: string; subjectCid: string; via: string | null; viaCid: string | null; }> | import("./processor.js").RecordProcessor, Omit>>, { uri: string; cid: string; indexedAt: string; creator: string; createdAt: string; sortAt: string; subjectUri: string; }> | import("./processor.js").RecordProcessor, Omit>>, { uri: string; cid: string; indexedAt: string; creator: string; createdAt: string; sortAt: string; subjectDid: string; listUri: string; }> | import("./processor.js").RecordProcessor, Omit>>, { uri: string; cid: string; indexedAt: string; creator: string; description: string | null; avatarCid: string | null; createdAt: string; sortAt: string; descriptionFacets: string | null; name: string; purpose: string; }> | import("./processor.js").RecordProcessor, Omit>>, unknown> | import("./processor.js").RecordProcessor, Omit>>, import("../db/tables/post-gate.js").Postgate> | import("./processor.js").RecordProcessor, Omit>>, { post: { text: string; uri: string; cid: string; indexedAt: string; creator: string; replyRoot: string | null; replyRootCid: string | null; replyParent: string | null; replyParentCid: string | null; createdAt: string; sortAt: string; langs: string[] | null; invalidReplyRoot: boolean | null; violatesThreadGate: boolean | null; tags: string[] | null; violatesEmbeddingRules: boolean | null; hasThreadGate: boolean | null; hasPostGate: boolean | null; }; facets?: { type: "mention" | "link"; value: string; }[]; embeds?: (import("../db/tables/post-embed.js").PostEmbedImage[] | import("../db/tables/post-embed.js").PostEmbedExternal | import("../db/tables/post-embed.js").PostEmbedRecord | import("../db/tables/post-embed.js").PostEmbedVideo)[]; ancestors?: { uri: string; height: number; }[]; descendents?: { uri: string; depth: number; cid: string; creator: string; sortAt: string; }[]; threadgate?: import("../../../lexicons/app/bsky/feed/threadgate.defs.js").Main; }> | import("./processor.js").RecordProcessor, Omit>>, import("../db/tables/profile.js").Profile> | import("./processor.js").RecordProcessor, Omit>>, { uri: string; cid: string; indexedAt: string; creator: string; createdAt: string; sortAt: string; subject: string; subjectCid: string; via: string | null; viaCid: string | null; }> | import("./processor.js").RecordProcessor, Omit>>, { uri: string; cid: string; indexedAt: string; creator: string; createdAt: string; sortAt: string; name: string; }> | import("./processor.js").RecordProcessor, Omit>>, unknown> | import("./processor.js").RecordProcessor, Omit>>, import("../db/tables/thread-gate.js").ThreadGate> | import("./processor.js").RecordProcessor, Omit>>, { uri: string; cid: string; indexedAt: string; creator: string; displayName: string; createdAt: string; subject: string; handle: string; rkey: string; sortedAt: string; }> | undefined; updateActorStatus(did: DidString, active: boolean, status?: string): Promise; deleteActor(did: DidString): Promise; private getActorIsHosted; unindexActor(did: DidString): Promise; } //# sourceMappingURL=index.d.ts.map