UNPKG

@zendesk/react-measure-timing-hooks

Version:

react hooks for measuring time to interactive and time to render of components

24 lines (23 loc) 1.62 kB
import { type SpanMatch } from './matchSpan'; import type { SpanAnnotationRecord } from './spanAnnotationTypes'; import type { Span } from './spanTypes'; import { Tracer } from './Tracer'; import type { AllPossibleTraceContexts, ComputedValueDefinitionInput, RelationSchemasBase, SpanDeduplicationStrategy, TraceDefinition, TraceManagerConfig } from './types'; /** * Class representing the centralized trace performance manager. */ export declare class TraceManager<const RelationSchemasT extends RelationSchemasBase<RelationSchemasT>> { readonly performanceEntryDeduplicationStrategy?: SpanDeduplicationStrategy<RelationSchemasT>; private currentTrace; get currentTracerContext(): AllPossibleTraceContexts<RelationSchemasT, string> | undefined; constructor(configInput: Omit<TraceManagerConfig<RelationSchemasT>, 'reportWarningFn'> & { reportWarningFn?: (warning: Error) => void; }); private utilities; createTracer<const SelectedRelationNameT extends keyof RelationSchemasT, const VariantsT extends string, const ComputedValueTuplesT extends { [K in keyof ComputedValueTuplesT]: SpanMatch<NoInfer<SelectedRelationNameT>, RelationSchemasT, NoInfer<VariantsT>>[]; }>(traceDefinition: TraceDefinition<SelectedRelationNameT, RelationSchemasT, VariantsT, { [K in keyof ComputedValueTuplesT]: ComputedValueDefinitionInput<NoInfer<SelectedRelationNameT>, RelationSchemasT, NoInfer<VariantsT>, ComputedValueTuplesT[K]>; }>): Tracer<SelectedRelationNameT, RelationSchemasT, VariantsT>; processSpan(span: Span<RelationSchemasT>): SpanAnnotationRecord | undefined; }