///
declare namespace TiniTypes.Page {
type AnyObject = Record;
type Instance = InstanceMethods &
Data &
TCustom;
type Options = (TCustom &
Partial> &
Partial>>) &
ThisType>;
interface Constructor {
(options: Options): void;
}
interface InstanceMethods {
setData(data: Partial & AnyObject, callback?: () => void): void;
}
interface Data {
data: D;
}
interface GetCurrentPages {
(): Array>;
}
type OnShareAppMessageOptions = any;
interface IOnShareAppMessageResult {
title: string;
desc?: string;
path: string;
content?: string;
success?(): void;
fail?(): void;
}
type IPageScrollEvent =
| [
{
readonly scrollTop: number;
readonly scrollHeight: number;
},
null,
null,
]
| {
readonly scrollTop: number;
readonly scrollHeight: number;
};
interface LifeCycles {
/**
* Page lifecycle
* onLoad được gọi sau khi Page được khởi tạo.
* Khi sử dụng my.navigateTo, my.redirectTo,
* @param query sẽ truyền vào trong query.
* Format của query: "parameterName=parameterValue¶meterName=parameterValue...".
* https://developers.tiki.vn/docs/framework/miniapp-page/life-cycle
*/
onLoad(
this: R,
query: Record,
): void | Promise;
/**
* được gọi khi Page được show hoặc mở lại từ background
* https://developers.tiki.vn/docs/framework/miniapp-page/life-cycle
*/
onShow(this: R): void | Promise;
/**
* được gọi sau khi page finish render lần đầu tiên
* https://developers.tiki.vn/docs/framework/miniapp-page/life-cycle
*/
onReady(this: R): void | Promise;
/**
* được gọi sau Page bị hide hoặc enter background
* https://developers.tiki.vn/docs/framework/miniapp-page/life-cycle
*/
onHide(this: R): void | Promise;
/**
* được gọi khi page bị destroy
* https://developers.tiki.vn/docs/framework/miniapp-page/life-cycle
*/
onUnload(this: R): void | Promise;
/**
* onPullDownRefresh được gọi khi user pull to refresh hoặc gọi my.startPullDownRefresh.
* Sử dụng callback này để refresh lại data.
* https://developers.tiki.vn/docs/framework/miniapp-page/life-cycle
*/
onPullDownRefresh(this: R): void | Promise;
/**
* được gọi khi user thực hiện tác vụ "Chia sẻ" trong options menu.
* https://developers.tiki.vn/docs/framework/miniapp-page/life-cycle
*/
onShareAppMessage(
this: R,
options: OnShareAppMessageOptions,
): IOnShareAppMessageResult;
}
}