/** * @since 1.0.0 */ import type * as OtelApi from "@opentelemetry/api"; import type { LoggerProviderConfig, LogRecordProcessor } from "@opentelemetry/sdk-logs"; import type { MetricReader } from "@opentelemetry/sdk-metrics"; import type { SpanProcessor, TracerConfig } from "@opentelemetry/sdk-trace-base"; import type { NonEmptyReadonlyArray } from "effect/Array"; import * as Effect from "effect/Effect"; import { type LazyArg } from "effect/Function"; import * as Layer from "effect/Layer"; import * as Resource from "./Resource.js"; import * as Tracer from "./Tracer.js"; /** * @since 1.0.0 * @category model */ export interface Configuration { readonly spanProcessor?: SpanProcessor | ReadonlyArray | undefined; readonly tracerConfig?: Omit; readonly metricReader?: MetricReader | ReadonlyArray | undefined; readonly logRecordProcessor?: LogRecordProcessor | ReadonlyArray | undefined; readonly loggerProviderConfig?: Omit | undefined; readonly resource: { readonly serviceName: string; readonly serviceVersion?: string; readonly attributes?: OtelApi.Attributes; }; } /** * @since 1.0.0 * @category layers */ export declare const layerTracerProvider: (processor: SpanProcessor | NonEmptyReadonlyArray, config?: Omit) => Layer.Layer; /** * @since 1.0.0 * @category layer */ export declare const layer: { /** * @since 1.0.0 * @category layer */ (evaluate: LazyArg): Layer.Layer; /** * @since 1.0.0 * @category layer */ (evaluate: Effect.Effect): Layer.Layer; }; //# sourceMappingURL=WebSdk.d.ts.map