import { Breadcrumb , BreadcrumbHint } from './breadcrumb' ; import { Client } from './client' ; import { Event , EventHint } from './event' ; import { Extra , Extras } from './extra' ; import { Integration , IntegrationClass } from './integration' ; import { Primitive } from './misc' ; import { Scope } from './scope' ; import { Session , SessionContext } from './session' ; import { SeverityLevel } from './severity' ; import { Span , SpanContext } from './span' ; import { CustomSamplingContext , Transaction , TransactionContext } from './transaction' ; import { User } from './user' ; /**
 * Internal class used to make sure we always have the latest internal functions
 * working in case we have a version conflict.
 */ export interface Hub { param version return hidden isOlderThan ( version ) : boolean ; param client bindClient ( client ? ) : void ; /**
     * Create a new scope to store context information.
     *
     * The scope will be layered on top of the current one. It is isolated, i.e. all
     * breadcrumbs and context information added to this scope will be removed once
     * the scope ends. Be sure to always remove this scope with  this . popScope * when the operation finishes or throws.
     *
     *  returns pushScope ( ) : Scope ; /**
     * Removes a previously pushed scope from the stack.
     *
     * This restores the state before the scope was pushed. All breadcrumbs and
     * context information added since the last call to  this . pushScope are
     * discarded.
      popScope ( ) : boolean ; param callback withScope ( callback ) : void ; /** Returns the client of the top stack. */ getClient ( ) : Client | undefined ; param exception param hint returns captureException ( exception , hint ? ) : string ; param message param level param hint returns captureMessage ( message , level ? , hint ? ) : string ; param event param hint captureEvent ( event , hint ? ) : string ; returns lastEventId ( ) : string | undefined ; param breadcrumb param hint addBreadcrumb ( breadcrumb , hint ? ) : void ; param user setUser ( user ) : void ; param tags setTags ( tags ) : void ; param key param value setTag ( key , value ) : void ; param key param extra setExtra ( key , extra ) : void ; param extras setExtras ( extras ) : void ; param name param context setContext ( name , context ) : void ; param callback configureScope ( callback ) : void ; /**
     * For the duration of the callback, this hub will be set as the global current Hub.
     * This function is useful if you want to run your own client and hook into an already initialized one
     * e.g.: Reporting issues to your own sentry when running in your component while still using the users configuration.
     */ run ( callback ) : void ; /** Returns the integration if installed on the current client. */ getIntegration < T extends Integration > ( integration ) : T | null ; /** Returns all trace headers that are currently on the top scope. */ traceHeaders ( ) : { [ key ] : string ; } ; deprecated No longer does anything. Use use  Transaction . startChild instead.
      startSpan ( context ) : Span ; param context param customSamplingContext Information given to the transaction sampling function (along with context-dependent
     * default values). See  Options . tracesSampler .
     *
     *  returns startTransaction ( context , customSamplingContext ? ) : Transaction ; param context returns startSession ( context ? ) : Session ; /**
     * Ends the session that lives on the current scope and sends it to Sentry
     */ endSession ( ) : void ; param endSession captureSession ( endSession ? ) : void ; }