UNPKG

1.49 kBTypeScriptView Raw
1declare namespace tinyapp {
2 /**
3 * 事件对象 https://docs.alipay.com/mini/framework/events#a-namefc3wdba%E4%BA%8B%E4%BB%B6%E5%AF%B9%E8%B1%A1
4 */
5 interface IBaseEvent {
6 readonly type: string;
7 readonly timeStamp: number;
8 readonly target: {
9 readonly tagName: string;
10 readonly dataset: Readonly<Record<string, any>>;
11 readonly targetDataset: Readonly<Record<string, any>>;
12 readonly offsetLeft: number;
13 readonly offsetTop: number;
14 };
15 readonly currentTarget: {
16 readonly tagName: string;
17 readonly dataset: Readonly<Record<string, any>>;
18 readonly offsetLeft: number;
19 readonly offsetTop: number;
20 };
21 }
22
23 interface ICustomEvent extends IBaseEvent {
24 /**
25 * 自定义事件所携带的数据,如表单组件的提交事件会携带用户的输入信息,
26 * 媒体的错误事件会携带错误信息,详细的描述请参考组件定义中各个事件的定义。
27 */
28 readonly detail: Readonly<Record<string, any>>;
29 }
30
31 interface ITouch {
32 readonly identifier: number;
33 readonly pageX: number;
34 readonly pageY: number;
35 readonly clientX: number;
36 readonly clientY: number;
37 }
38
39 interface ICanvasTouch {
40 readonly identifier: number;
41 readonly x: number;
42 readonly y: number;
43 }
44
45 interface ITouchEvent extends IBaseEvent {
46 readonly touches: ReadonlyArray<ITouch | ICanvasTouch>;
47 readonly changedTouches: ReadonlyArray<ITouch | ICanvasTouch>;
48 }
49}