@adaptabletools/adaptable
Version:
Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements
103 lines (102 loc) • 4.44 kB
TypeScript
import { PerfMarker, PerfMarkerDetails } from './PerfMarker';
declare const AVAILABLE_COLORS: readonly ["primary", "primary-light", "primary-dark", "secondary", "secondary-light", "secondary-dark", "tertiary", "tertiary-light", "tertiary-dark"];
type DevToolsColor = (typeof AVAILABLE_COLORS)[number];
export type DevToolsMarkerDetails = {
label: string;
track: string;
trackGroup?: string;
color?: DevToolsColor;
details?: PerfMarkerDetails;
tooltip?: string;
startTs?: DOMHighResTimeStamp;
endTs?: DOMHighResTimeStamp;
};
type HasRequiredProps<T> = T extends Record<string, never> ? false : {
[K in keyof T]-?: {} extends Pick<T, K> ? never : K;
}[keyof T] extends never ? false : true;
type EndMethod<T extends Omit<DevToolsMarkerDetails, 'track' | 'label'>> = HasRequiredProps<T> extends true ? (markerDetails: T) => DevToolsMarker : (markerDetails?: T) => DevToolsMarker;
export declare class DevToolsMarker implements PerfMarker {
readonly adaptableId: string;
static create(adaptableId: string): DevToolsMarker;
private markerDetails;
private stopped;
private constructor();
start: (startDetails?: {
details?: DevToolsMarkerDetails['details'];
}) => this;
get startTimestamp(): number;
get track(): {
readonly Init: {
start: DevToolsMarker['start'];
end: (markerDetails: Omit<DevToolsMarkerDetails, "track"> & {
label: "Init" | "InitStore" | "LoadStore" | "InitAGGrid";
}) => DevToolsMarker;
label: {
readonly Init: {
end: EndMethod<Omit<DevToolsMarkerDetails, 'track' | 'label'>>;
start: DevToolsMarker['start'];
};
readonly InitStore: {
end: EndMethod<Omit<DevToolsMarkerDetails, 'track' | 'label'>>;
start: DevToolsMarker['start'];
};
readonly LoadStore: {
end: EndMethod<Omit<DevToolsMarkerDetails, 'track' | 'label'>>;
start: DevToolsMarker['start'];
};
readonly InitAGGrid: {
end: EndMethod<Omit<DevToolsMarkerDetails, 'track' | 'label'>>;
start: DevToolsMarker['start'];
};
};
};
readonly LayoutManager: {
start: DevToolsMarker['start'];
end: (markerDetails: Omit<DevToolsMarkerDetails, "track"> & {
label: "SetLayout" | "ApplyPivotLayout" | "ApplyTableLayout";
}) => DevToolsMarker;
label: {
readonly SetLayout: {
end: EndMethod<Omit<DevToolsMarkerDetails, 'track' | 'label'>>;
start: DevToolsMarker['start'];
};
readonly ApplyPivotLayout: {
end: EndMethod<Omit<DevToolsMarkerDetails, 'track' | 'label'>>;
start: DevToolsMarker['start'];
};
readonly ApplyTableLayout: {
end: EndMethod<Omit<DevToolsMarkerDetails, 'track' | 'label'>>;
start: DevToolsMarker['start'];
};
};
};
readonly Runtime: {
start: DevToolsMarker['start'];
end: (markerDetails: Omit<DevToolsMarkerDetails, "track"> & {
label: "SetLayout";
}) => DevToolsMarker;
label: {
readonly SetLayout: {
end: EndMethod<Omit<DevToolsMarkerDetails, 'track' | 'label'>>;
start: DevToolsMarker['start'];
};
};
};
readonly Redux: {
start: DevToolsMarker['start'];
end: (markerDetails: Omit<DevToolsMarkerDetails, "track"> & {
label: "Action";
}) => DevToolsMarker;
label: {
readonly Action: {
end: EndMethod<Omit<DevToolsMarkerDetails, 'track' | 'label'>>;
start: DevToolsMarker['start'];
};
};
};
};
end: (markerDetails?: Partial<DevToolsMarkerDetails>) => this;
}
export declare function areAdaptableProfileTracksEnabled(adaptableId: string | undefined): boolean;
export declare function getMarker(adaptableId: string): DevToolsMarker;
export type { PerfMarker };