UNPKG

@bytedance/mona-client-mini

Version:

miniapp for mona

45 lines (44 loc) 1.5 kB
import TaskController, { Task } from './TaskController'; export declare function generateId(): number; export declare const NodeType: { ROOT: string; PTEXT: string; }; export interface RenderNode { COMPLIER_KEY: number; COMPLIER_TYPE: string; COMPLIER_PROPS: Record<string, any>; COMPLIER_NODES: Record<number, RenderNode>; COMPLIER_CHILDREN: number[]; COMPLIER_TEXT: string; } export default class ServerElement { type: string; taskController: TaskController; props?: any; text?: string; key: number; children: Map<number, ServerElement>; parent: ServerElement | null; firstChildKey: number | null; lastChildKey: number | null; prevSiblingKey: number | null; nextSiblingKey: number | null; mounted: boolean; deleted: boolean; eventsCallbackList: Set<string>; constructor(type: string, taskController: TaskController, props?: Record<string, any>); requestUpdate(task: Task): void; clearEvents(): void; addCallback(cbKey: string, cb: (...args: any) => any): void; appendChild(child: ServerElement): void; removeChild(child: ServerElement, clearEvents?: boolean): void; insertBefore(child: ServerElement, nextSibling: ServerElement): void; update(propPath: string, updatePropsMap: Record<string, any>): void; serialize(): RenderNode; delete(): void; get orderedChildren(): number[]; get path(): (string | number)[]; isMounted(): boolean; isDeleted(): boolean; }