UNPKG

@atproto/ozone

Version:

Backend service for moderating the Bluesky network.

97 lines 3.79 kB
import * as plc from '@did-plc/lib'; import express from 'express'; import { AtpAgent } from '@atproto/api'; import { Keypair } from '@atproto/crypto'; import { DidCache, IdResolver } from '@atproto/identity'; import { AuthVerifier } from './auth-verifier'; import { BackgroundQueue } from './background'; import { CommunicationTemplateServiceCreator } from './communication-service/template'; import { OzoneConfig, OzoneSecrets } from './config'; import { BlobDiverter } from './daemon/blob-diverter'; import { Database } from './db'; import { ImageInvalidator } from './image-invalidator'; import { ModerationServiceCreator } from './mod-service'; import { SafelinkRuleServiceCreator } from './safelink/service'; import { Sequencer } from './sequencer/sequencer'; import { SetServiceCreator } from './set/service'; import { SettingServiceCreator } from './setting/service'; import { TeamServiceCreator } from './team'; import { ParsedLabelers } from './util'; import { VerificationIssuerCreator } from './verification/issuer'; import { VerificationServiceCreator } from './verification/service'; export type AppContextOptions = { db: Database; cfg: OzoneConfig; modService: ModerationServiceCreator; communicationTemplateService: CommunicationTemplateServiceCreator; safelinkRuleService: SafelinkRuleServiceCreator; setService: SetServiceCreator; settingService: SettingServiceCreator; teamService: TeamServiceCreator; appviewAgent: AtpAgent; pdsAgent: AtpAgent | undefined; chatAgent: AtpAgent | undefined; blobDiverter?: BlobDiverter; signingKey: Keypair; signingKeyId: number; didCache: DidCache; idResolver: IdResolver; imgInvalidator?: ImageInvalidator; backgroundQueue: BackgroundQueue; sequencer: Sequencer; authVerifier: AuthVerifier; verificationService: VerificationServiceCreator; verificationIssuer: VerificationIssuerCreator; }; export declare class AppContext { private opts; private secrets; constructor(opts: AppContextOptions, secrets: OzoneSecrets); static fromConfig(cfg: OzoneConfig, secrets: OzoneSecrets, overrides?: Partial<AppContextOptions>): Promise<AppContext>; assignPort(port: number): void; get db(): Database; get cfg(): OzoneConfig; get modService(): ModerationServiceCreator; get blobDiverter(): BlobDiverter | undefined; get communicationTemplateService(): CommunicationTemplateServiceCreator; get safelinkRuleService(): SafelinkRuleServiceCreator; get teamService(): TeamServiceCreator; get setService(): SetServiceCreator; get settingService(): SettingServiceCreator; get verificationService(): VerificationServiceCreator; get verificationIssuer(): VerificationIssuerCreator; get appviewAgent(): AtpAgent; get pdsAgent(): AtpAgent | undefined; get chatAgent(): AtpAgent | undefined; get signingKey(): Keypair; get signingKeyId(): number; get plcClient(): plc.Client; get didCache(): DidCache; get idResolver(): IdResolver; get backgroundQueue(): BackgroundQueue; get sequencer(): Sequencer; get authVerifier(): AuthVerifier; serviceAuthHeaders(aud: string, lxm: string): Promise<{ headers: { authorization: string; }; }>; pdsAuth(lxm: string): Promise<{ headers: { authorization: string; }; } | undefined>; appviewAuth(lxm: string): Promise<{ headers: { authorization: string; }; }>; chatAuth(lxm: string): Promise<{ headers: { authorization: string; }; }>; devOverride(overrides: Partial<AppContextOptions>): void; reqLabelers(req: express.Request): ParsedLabelers; } //# sourceMappingURL=context.d.ts.map