import { type RecordOwnerId } from '../record-owner-id.js'; import type { ArkmeSessionCredentials } from '../keychain-store.js'; import type { ArkmeRelatedQuickNoteDetail, ArkmeRelatedQuickNoteList } from '../types.js'; import { MediaService } from './media-service.js'; import { ProfileService } from './profile-service.js'; import { RecordService } from './record-service.js'; import { ServiceRuntime } from './service.js'; export interface ArkmeRelatedQuickNoteSourceLocator { viewerUserId: number; sourceRef: string; sourceOwnerRef: string; contextType: 'record' | 'chat'; recordUid: string; recordOwnerUserId: RecordOwnerId; chatSessionUid: string; } interface RelatedQuickNotePrivacyReader { lockedRecordUids(session: ArkmeSessionCredentials, signal?: AbortSignal): Promise>; } export declare class RelatedQuickNoteService { private readonly runtime; private readonly record; private readonly media; private readonly profile; private readonly privacy; private readonly references; constructor(runtime: ServiceRuntime, record: RecordService, media: MediaService, profile: ProfileService, privacy?: RelatedQuickNotePrivacyReader); dispose(): void; list(locator: ArkmeRelatedQuickNoteSourceLocator, signal?: AbortSignal): Promise; private displayProfiles; detail(sourceRef: string, relatedRef: string, signal?: AbortSignal): Promise; private validLocator; private descriptorsFromItems; private relatedCandidates; private sealReference; private openReference; private invalidReference; } export {}; //# sourceMappingURL=related-quick-note-service.d.ts.map