import { BacktraceReportSubmission } from '../model/http/BacktraceReportSubmission.js'; import { BacktraceRequestHandler } from '../model/http/BacktraceRequestHandler.js'; import { BacktraceModule } from '../modules/BacktraceModule.js'; import { BacktraceAttributeProvider } from '../modules/attribute/BacktraceAttributeProvider.js'; import { BreadcrumbsEventSubscriber, BreadcrumbsStorage, BreadcrumbsStorageFactory } from '../modules/breadcrumbs/index.js'; import { BacktraceStackTraceConverter } from '../modules/converter/index.js'; import { BacktraceSessionProvider } from '../modules/metrics/BacktraceSessionProvider.js'; import { MetricsQueue } from '../modules/metrics/MetricsQueue.js'; import { SummedEvent } from '../modules/metrics/model/SummedEvent.js'; import { UniqueEvent } from '../modules/metrics/model/UniqueEvent.js'; import { FileSystem } from '../modules/storage/index.js'; import { CoreClientSetup } from './CoreClientSetup.js'; type Writeable = { -readonly [P in keyof T]: T[P]; }; export declare abstract class BacktraceCoreClientBuilder = Partial> { protected readonly clientSetup: Writeable; constructor(clientSetup: Writeable); addAttributeProvider(provider: BacktraceAttributeProvider): this; useBreadcrumbSubscriber(breadcrumbSubscriber: BreadcrumbsEventSubscriber): this; useBreadcrumbsStorage(storageFactory: BreadcrumbsStorageFactory): this; /** * @deprecated Use `useBreadcrumbsStorage` with `BreadcrumbsStorageFactory`. */ useBreadcrumbsStorage(storage: BreadcrumbsStorage): this; useSessionProvider(sessionProvider: BacktraceSessionProvider): this; useRequestHandler(handler: BacktraceRequestHandler): this; useStackTraceConverter(stackTraceConverter: BacktraceStackTraceConverter): this; useFileSystem(fileSystem: FileSystem): this; useReportSubmission(reportSubmission: BacktraceReportSubmission): this; useSummedMetricsQueue(queue: MetricsQueue): this; useUniqueMetricsQueue(queue: MetricsQueue): this; useModule(module: BacktraceModule): this; } export {};