-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocs.js
121 lines (102 loc) · 2.3 KB
/
docs.js
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
/**
* @template T
* @typedef Deferred
* @property {Promise<T>} promise the underyling Promise
* @property {(?val: T) => void} resolve the resolve function
* @property {(?err: any) => void} reject the reject function
*/
/**
* @template T
* @callback callbackHandler
* @param {T} value
* @return {any}
*/
/**
* @template T
* @callback producerHandler
* @return {T}
*/
/**
* @template T1, TResult
* @callback consumerProducer1ArgHandler
* @param {T1} value1
* @returns {TResult}
*/
/**
* @template T1, T2, TResult
* @callback consumerProducer2ArgHandler
* @param {T1} value1
* @param {T2} value2
* @returns {TResult}
*/
/**
* @template T1, T2, T3, TResult
* @callback consumerProducer3ArgHandler
* @param {T1} value1
* @param {T2} value2
* @param {T3} value3
* @returns {TResult}
*/
/**
* @template T1, T2, T3, T4, TResult
* @callback consumerProducer4ArgHandler
* @param {T1} value1
* @param {T2} value2
* @param {T3} value3
* @param {T4} value4
* @returns {TResult}
*/
/**
* @template T1
* @callback predicate1Arg
* @param {T1} value1
* @returns {boolean}
*/
/**
* @typedef iCalTimeZone
* @type {Object}
* @property {Array} changes
* @property {number} expandedUntilYear
* @property {string} tzid
*/
/**
* @typedef iCalTime
* @type {Object}
* @property {number} hour
* @property {number} minute
* @property {number} second
* @property {number} day
* @property {number} month
* @property {number} year
* @property {string} icaltype
* @property {string} timezone
* @property {boolean} isDate
* @property {() => Date} toJSDate
*/
/**
* @typedef iCalDuration
* @type {Object}
* @property {number} days
* @property {number} hours
* @property {number} minutes
* @property {number} seconds
* @property {number} weeks
* @property {boolean} isNegative
*/
/**
* @typedef iCalEvent
* @type {Object}
* @property {Array} attendees
* @property {string|null} description
* @property {string} uid
* @property {string|null} summary
* @property {string|null} location
* @property {string|null} organizer
* @property {string|number|null} recurrenceId
* @property {number} sequence
* @property {iCalDuration} duration
* @property {iCalTime} endDate
* @property {iCalTime} startDate
* @property {Object<string, Error>} exceptions
* @property {Array} rangeExceptions
*/