import type { LoadedMonitor } from "./registry.js"; import type { ObservationDraft } from "../../../infrastructure/sentinel/stores/observation-store.js"; export interface SourceAdapterContext { readonly workspaceRoot: string; readonly monitor: LoadedMonitor; } export interface CollectResult { readonly drafts: readonly ObservationDraft[]; readonly commit?: () => Promise; } export interface SourceAdapter { readonly id: string; collect(context: SourceAdapterContext): Promise; } export declare class SourceAdapterRegistry { private readonly adapters; register(adapter: SourceAdapter): void; get(id: string): SourceAdapter | undefined; has(id: string): boolean; ids(): readonly string[]; } //# sourceMappingURL=source-adapter.d.ts.map