|
1 | 1 | import type { CaptureContext } from '../scope';
|
2 | 2 | import type { Breadcrumb, BreadcrumbHint } from './breadcrumb';
|
3 | 3 | import type { ErrorEvent, EventHint, TransactionEvent } from './event';
|
4 | | -import type { Integration } from './integration'; |
| 4 | +import type { Integration,IntegrationsMapping } from './integration'; |
5 | 5 | import type { TracesSamplerSamplingContext } from './samplingcontext';
|
6 | 6 | import type { SdkMetadata } from './sdkmetadata';
|
7 | 7 | import type { SpanJSON } from './span';
|
@@ -302,14 +302,27 @@ export interface ClientOptions<TO extends BaseTransportOptions = BaseTransportOp
|
302 | 302 | }
|
303 | 303 |
|
304 | 304 | /** Base configuration options for every SDK. */
|
305 | | -export interface Options<TO extends BaseTransportOptions = BaseTransportOptions> |
306 | | - extends Omit<Partial<ClientOptions<TO>>, 'integrations' | 'transport' | 'stackParser'> { |
| 305 | +export interface Options< |
| 306 | + TO extends BaseTransportOptions = BaseTransportOptions, |
| 307 | + DefaultIntegrationNames extends string[] = [], |
| 308 | +> extends Omit<Partial<ClientOptions<TO>>, 'integrations' | 'transport' | 'stackParser'> { |
307 | 309 | /**
|
308 | 310 | * If this is set to false, default integrations will not be added, otherwise this will internally be set to the
|
309 | 311 | * recommended default integrations.
|
310 | 312 | */
|
311 | 313 | defaultIntegrations?: false | Integration[];
|
312 | 314 |
|
| 315 | + /** |
| 316 | + * Pass a map of integrations that should be explicitly disabled. |
| 317 | + * This allows you to e.g. opt out of default integrations easily. |
| 318 | + * For example, if you do not want to add the `inboundFiltersIntegration`, you can configure: |
| 319 | + * |
| 320 | + * ```js |
| 321 | + * disableIntegrations: { InboundFilters: true } |
| 322 | + * ``` |
| 323 | + */ |
| 324 | + disableIntegrations?: IntegrationsMapping<DefaultIntegrationNames>; |
| 325 | + |
313 | 326 | /**
|
314 | 327 | * List of integrations that should be installed after SDK was initialized.
|
315 | 328 | * Accepts either a list of integrations or a function that receives
|
|
0 commit comments