interface VantComponentInstance { parent: WechatMiniprogram.Component.TrivialInstance; children: WechatMiniprogram.Component.TrivialInstance[]; index: number; $emit: ( name: string, detail?: unknown, options?: WechatMiniprogram.Component.TriggerEventOption ) => void; setView: (value: Record, callback?: () => void) => void; } export type VantComponentOptions< Data extends WechatMiniprogram.Component.DataOption, Props extends WechatMiniprogram.Component.PropertyOption, Methods extends WechatMiniprogram.Component.MethodOption > = { data?: Data; field?: boolean; classes?: string[]; mixins?: string[]; props?: Props; relation?: { relations: Record; mixin: string; }; watch?: Record any>; methods?: Methods; // lifetimes beforeCreate?: () => void; created?: () => void; mounted?: () => void; destroyed?: () => void; } & ThisType< VantComponentInstance & WechatMiniprogram.Component.Instance< Data & { name: string; value: any; } & Record, Props, Methods > & Record >;