import Container from "./renderer/container"; import { VnodeProps } from "./types/vnodeProps"; export default class VNode { rootContainer: Container; id: number | string; type: any; props: any; deleted: boolean; parent: VNode | undefined; firstChild: VNode | undefined; lastChild: VNode | undefined; nextSibling: VNode | undefined; events: {}; private _chestnut; get chestnut(): any; set chestnut(value: any); previousSibling: VNode | undefined; constructor({ id, type, props, rootContainer }: VnodeProps); append(vnode: VNode): void; /** * 子节点添加后,通知子节点 */ didAppendParent(): void; appendChild(vnode: VNode): void; insertBefore(vnode: VNode, referencevnode: VNode): void; /** * vnode? <-> vnode * * @param vnode * @param referencevnode * @returns */ insertBeforeChild(vnode: VNode, referencevnode: VNode): void; didRemoveParent(): void; removeChild(vnode: VNode): void; remove(vnode: VNode): void; update(updateJSON: any): void; didUpdateChild(child: VNode): void; updateNode(updatePayload: Array): any; get children(): any[]; getIndex(node: VNode): number; }