-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
/
trace.d.ts
124 lines (105 loc) · 3.45 KB
/
trace.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
/**
* Allows you to trace and print specific information based on categories.
* @module "trace"
*/ /** */
/**
* Enables the trace module.
*/
export function enable(): void;
/**
* Disables the trace module.
*/
export function disable(): void;
/**
* A function that returns whether the tracer is enabled and there is a point in writing messages.
* Check this to avoid writing complex string templates.
* Send error messages even if tracing is disabled.
*/
export function isEnabled(): boolean;
/**
* Adds a TraceWriter instance to the trace module.
* @param writer The TraceWriter instance to add.
*/
export function addWriter(writer: TraceWriter);
/**
* Removes a TraceWriter instance from the trace module.
* @param writer The TraceWriter instance to remove.
*/
export function removeWriter(writer: TraceWriter);
/**
* Clears all the writers from the trace module.
*/
export function clearWriters();
/**
* Sets the categories the module will trace.
* @param categories The comma-separated list of categories. If not specified all messages from all categories will be traced.
*/
export function setCategories(categories: string);
/**
* Adds categories to existing categories the module will trace.
* @param categories The comma-separated list of categories. If not specified all messages from all categories will be traced.
*/
export function addCategories(categories: string);
/**
* Check if category is already set in trace module.
* @param category The category to check.
*/
export function isCategorySet(category: string): boolean;
/**
* Writes a message using the available writers.
* @param message The message to be written.
* @param category The category of the message.
* @param type Optional, the type of the message - info, warning, error.
*/
export function write(message: any, category: string, type?: number);
/**
* Notifies all the attached listeners for an event that has occurred in the sender object.
* @param object The Object instance that raised the event.
* @param name The name of the raised event.
* @param data An optional parameter that passes the data associated with the event.
*/
export function notifyEvent(object: Object, name: string, data?: any);
export function addEventListener(listener: EventListener);
export function removeEventListener(listener: EventListener);
/**
* An enum that defines all predefined categories.
*/
export module categories {
export var VisualTreeEvents: string;
export var Layout: string;
export var Style: string;
export var ViewHierarchy: string;
export var NativeLifecycle: string;
export var Debug: string;
export var Navigation: string;
export var Test: string;
export var Binding: string;
export var Error: string;
export var Animation: string;
export var Transition: string;
export var All: string;
export var separator: string;
export function concat(...categories: string[]): string;
}
/**
* An enum that defines all predefined message types.
*/
export module messageType {
export var log: number;
export var info: number;
export var warn: number;
export var error: number;
}
/**
* An interface used to define a writer used by trace to print (log).
*/
export interface TraceWriter {
write(message: any, category: string, type?: number);
}
/**
* An interface used to trace information about specific event.
*/
export interface EventListener {
filter: string;
on(object: Object, name: string, data?: any);
}