import type { DurableObject } from 'cloudflare:workers'; import type { CloudflareOptions } from './client'; /** * Instruments a Durable Object class to capture errors and performance data. * * Instruments the following methods: * - fetch * - alarm * - webSocketMessage * - webSocketClose * - webSocketError * * as well as any other public RPC methods on the Durable Object instance. * * @param optionsCallback Function that returns the options for the SDK initialization. * @param DurableObjectClass The Durable Object class to instrument. * @returns The instrumented Durable Object class. * * @example * ```ts * class MyDurableObjectBase extends DurableObject { * constructor(ctx: DurableObjectState, env: Env) { * super(ctx, env); * } * } * * export const MyDurableObject = instrumentDurableObjectWithSentry( * env => ({ * dsn: env.SENTRY_DSN, * tracesSampleRate: 1.0, * }), * MyDurableObjectBase, * ); * ``` */ export declare function instrumentDurableObjectWithSentry, C extends new (state: DurableObjectState, env: E) => T>(optionsCallback: (env: E) => CloudflareOptions, DurableObjectClass: C): C; //# sourceMappingURL=durableobject.d.ts.map