/** * Copyright 2019, OpenCensus Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import * as webTypes from '@opencensus/web-types'; import { NoopExporter } from '../../exporters/noop_exporter'; import { Tracer } from './tracer'; export declare const NOOP_EXPORTER: NoopExporter; /** Main interface for tracing. */ export declare class Tracing implements webTypes.Tracing { /** Object responsible for managing a trace. */ readonly tracer: Tracer; /** Service to send collected traces to. */ exporter: NoopExporter; /** Whether tracing is active - always true for opencensus-web. */ active: boolean; /** Singleton instance */ private static singletonInstance; /** Gets the tracing instance. */ static readonly instance: Tracing; /** Sets tracer and exporter config. */ start(config?: webTypes.Config): webTypes.Tracing; /** Stops tracer - this is a no-op for opencensus-web. */ stop(): void; /** * Registers an exporter to send the collected traces to. * @param exporter The exporter to send the traces to. * @return The tracing object. */ registerExporter(exporter: webTypes.Exporter): webTypes.Tracing; /** * Sets the exporter back to the no-op exporter. * @return The tracing object. */ unregisterExporter(exporter: webTypes.Exporter): webTypes.Tracing; }