| // Copyright 2023 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| /** |
| * @fileoverview Definitions for chrome.metricsPrivate API |
| * Generated from: extensions/common/api/metrics_private.json |
| * run `tools/json_schema_compiler/compiler.py |
| * extensions/common/api/metrics_private.json -g ts_definitions` to regenerate. |
| */ |
| |
| |
| |
| declare namespace chrome { |
| export namespace metricsPrivate { |
| |
| export enum MetricTypeType { |
| HISTOGRAM_LOG = 'histogram-log', |
| HISTOGRAM_LINEAR = 'histogram-linear', |
| } |
| |
| export interface MetricType { |
| metricName: string; |
| type: MetricTypeType; |
| min: number; |
| max: number; |
| buckets: number; |
| } |
| |
| export interface HistogramBucket { |
| min: number; |
| max: number; |
| count: number; |
| } |
| |
| export interface Histogram { |
| sum: number; |
| buckets: HistogramBucket[]; |
| } |
| |
| export function getHistogram( |
| name: string, callback: (histogram: Histogram) => void): void; |
| |
| export function getIsCrashReportingEnabled( |
| callback: (enabled: boolean) => void): void; |
| |
| export function getFieldTrial( |
| name: string, callback: (fieldTrial: string) => void): void; |
| |
| export function getVariationParams( |
| name: string, |
| callback: (params: {[key: string]: string}) => void): void; |
| |
| export function recordUserAction(name: string): void; |
| |
| export function recordPercentage(metricName: string, value: number): void; |
| |
| export function recordCount(metricName: string, value: number): void; |
| |
| export function recordSmallCount(metricName: string, value: number): void; |
| |
| export function recordMediumCount(metricName: string, value: number): void; |
| |
| export function recordTime(metricName: string, value: number): void; |
| |
| export function recordMediumTime(metricName: string, value: number): void; |
| |
| export function recordLongTime(metricName: string, value: number): void; |
| |
| export function recordSparseValueWithHashMetricName( |
| metricName: string, value: string): void; |
| |
| export function recordSparseValueWithPersistentHash( |
| metricName: string, value: string): void; |
| |
| export function recordSparseValue(metricName: string, value: number): void; |
| |
| export function recordValue(metric: MetricType, value: number): void; |
| |
| export function recordBoolean(metricName: string, value: boolean): void; |
| |
| export function recordEnumerationValue( |
| metricName: string, value: number, enumSize: number): void; |
| |
| } |
| } |