1declare module "trace_events" { 2 /** 3 * The `Tracing` object is used to enable or disable tracing for sets of 4 * categories. Instances are created using the 5 * `trace_events.createTracing()` method. 6 * 7 * When created, the `Tracing` object is disabled. Calling the 8 * `tracing.enable()` method adds the categories to the set of enabled trace 9 * event categories. Calling `tracing.disable()` will remove the categories 10 * from the set of enabled trace event categories. 11 */ 12 export interface Tracing { 13 /** 14 * A comma-separated list of the trace event categories covered by this 15 * `Tracing` object. 16 */ 17 readonly categories: string; 18 19 /** 20 * Disables this `Tracing` object. 21 * 22 * Only trace event categories _not_ covered by other enabled `Tracing` 23 * objects and _not_ specified by the `--trace-event-categories` flag 24 * will be disabled. 25 */ 26 disable(): void; 27 28 /** 29 * Enables this `Tracing` object for the set of categories covered by 30 * the `Tracing` object. 31 */ 32 enable(): void; 33 34 /** 35 * `true` only if the `Tracing` object has been enabled. 36 */ 37 readonly enabled: boolean; 38 } 39 40 interface CreateTracingOptions { 41 /** 42 * An array of trace category names. Values included in the array are 43 * coerced to a string when possible. An error will be thrown if the 44 * value cannot be coerced. 45 */ 46 categories: string[]; 47 } 48 49 /** 50 * Creates and returns a Tracing object for the given set of categories. 51 */ 52 export function createTracing(options: CreateTracingOptions): Tracing; 53 54 /** 55 * Returns a comma-separated list of all currently-enabled trace event 56 * categories. The current set of enabled trace event categories is 57 * determined by the union of all currently-enabled `Tracing` objects and 58 * any categories enabled using the `--trace-event-categories` flag. 59 */ 60 export function getEnabledCategories(): string; 61} 62