@qwik.dev/core
Version:
An open source framework for building instant loading web apps at any scale, without the extra effort.
71 lines (64 loc) • 2 kB
TypeScript
import { Component } from '..';
import { SyncQRL } from '..';
/**
* @beta
* @experimental
*/
export declare const Insights: Component<unknown>;
/** @public */
export declare interface InsightsError {
/** Manifest Hash of the container. */
manifestHash: string;
timestamp: number;
url: string;
source: string;
line: number;
column: number;
error: string;
message: string;
stack: string;
}
/** @public */
export declare interface InsightsPayload {
/** Qwik version */
qVersion: string;
/** Manifest Hash of the container. */
manifestHash: string;
/**
* API key of the application which we are trying to profile.
*
* This key can be used for sharding the data.
*/
publicApiKey: string;
/**
* Previous symbol received on the client.
*
* Client periodically sends symbol log to the server. Being able to connect the order of symbols
* is useful for server clustering. Sending previous symbol name allows the server to stitch the
* symbol list together.
*/
previousSymbol?: string | null;
/** List of symbols which have been received since last update. */
symbols: InsightSymbol[];
}
/** @internal */
export declare const insightsPing: SyncQRL<() => void>;
/** @public */
export declare interface InsightSymbol {
/** Symbol name */
symbol: string;
/** Current route so we can have a better understanding of which symbols are needed for each route. */
route: string;
/** Time delta since last symbol. Can be used to stich symbol requests together */
delay: number;
/** Number of ms between the time the symbol was requested and it was loaded. */
latency: number;
/** Number of ms between the q:route attribute change and the qsymbol event */
timeline: number;
/**
* Was this symbol as a result of user interaction. User interactions represent roots for
* clouters.
*/
interaction: boolean;
}
export { }