import type { MastraDBMessage } from '@mastra/core/agent'; import type { ProviderMetadata } from '@mastra/core/stream'; import { ObservationStrategy } from './base.js'; import type { StrategyDeps } from './base.js'; import type { ObservationRunOpts, ObserverOutput, ProcessedObservation } from './types.js'; export declare class ResourceScopedObservationStrategy extends ObservationStrategy { private readonly startedAt; private cycleId?; private readonly resourceId; private threadsWithMessages; private threadTokensToObserve; private threadTokenCounts; private threadOrder; private messagesByThread; private multiThreadResults; private totalBatchUsage; private lastBatchProviderMetadata; private observationResults; private priorMetadataByThread; constructor(deps: StrategyDeps, opts: ObservationRunOpts); get needsLock(): boolean; get needsReflection(): boolean; get rethrowOnFailure(): boolean; prepare(): Promise<{ messages: MastraDBMessage[]; existingObservations: string; }>; emitStartMarkers(cycleId: string): Promise; observe(_existingObservations: string, _messages: MastraDBMessage[]): Promise<{ observations: string; usage: { inputTokens: number; outputTokens: number; totalTokens: number; } | undefined; providerMetadata: ProviderMetadata | undefined; }>; process(_output: ObserverOutput, existingObservations: string): Promise; persist(processed: ProcessedObservation): Promise; emitEndMarkers(cycleId: string, processed: ProcessedObservation): Promise; emitFailedMarkers(cycleId: string, error: unknown): Promise; } //# sourceMappingURL=resource-scoped.d.ts.map