@oaklean/profiler-core
Version:
Part of the @oaklean suite. It provides all basic functions to work with the `.oak` file format. It allows parsing the `.oak` file format as well as tools for analyzing the measurement values. It also provides all necessary capabilities required for prec
41 lines (40 loc) • 2.4 kB
TypeScript
import { NodeModule } from './NodeModule';
import { ProfilerConfig } from './ProfilerConfig';
import { Report } from './Report';
import { MetricsDataCollection } from './interfaces/MetricsDataCollection';
import { GlobalIndex } from './indices/GlobalIndex';
import { ModuleIndex } from './indices/ModuleIndex';
import { SourceNodeGraph } from './SourceNodeGraph';
import type { ICpuProfileRaw } from '../../lib/vscode-js-profile-core/src/cpu/types';
import { UnifiedPath } from '../system/UnifiedPath';
import { ExternalResourceHelper } from '../helper/ExternalResourceHelper';
import { ReportKind, ReportType, IProjectMetaData, IProjectReport, IProjectReportExecutionDetails } from '../types';
export declare class ProjectReport extends Report {
executionDetails: IProjectReportExecutionDetails;
projectMetaData: IProjectMetaData;
globalIndex: GlobalIndex;
private _sourceNodeGraph;
constructor(executionDetails: IProjectReportExecutionDetails, kind: ReportKind, projectMetaData?: IProjectMetaData, globalIndex?: GlobalIndex, config?: ProfilerConfig | null);
asSourceNodeGraph(): SourceNodeGraph;
normalize(): void;
get engineModule(): NodeModule;
isCompatibleWith(other: ProjectReport): boolean;
static merge(moduleIndex: ModuleIndex, ...args: ProjectReport[]): ProjectReport;
toJSON(): IProjectReport;
static fromJSON(json: string | IProjectReport): ProjectReport;
static loadFromFile(filePath: UnifiedPath, kind: 'json' | 'bin'): ProjectReport | undefined;
trackUncommittedFiles(rootDir: UnifiedPath, externalResourceHelper: ExternalResourceHelper): void;
insertCPUProfile(rootDir: UnifiedPath, profile: ICpuProfileRaw, externalResourceHelper: ExternalResourceHelper, metricsDataCollection?: MetricsDataCollection): Promise<void>;
storeToFile(filePath: UnifiedPath, kind: 'pretty-json' | 'json' | 'bin', config?: ProfilerConfig): void;
toBuffer(): Buffer;
shouldBeStoredInRegistry(): Promise<boolean>;
static versionFromBinFile(filePath: UnifiedPath): string | undefined;
static versionFromBuffer(buffer: Buffer): string;
static consumeFromBuffer(buffer: Buffer, config?: ProfilerConfig): {
instance: ProjectReport & Report;
type: ReportType;
remainingBuffer: Buffer<ArrayBufferLike>;
};
hash(): string;
static hashFromBinFile(filePath: UnifiedPath): string | undefined;
}