import VNode from 'core/vdom/vnode'
|
import { Component } from './component'
|
|
export type ComponentWithCacheContext = {
|
type: 'ComponentWithCache'
|
bufferIndex: number
|
buffer: Array<string>
|
key: string
|
}
|
|
export type ElementContext = {
|
type: 'Element'
|
children: Array<VNode>
|
rendered: number
|
endTag: string
|
total: number
|
}
|
|
export type ComponentContext = {
|
type: 'Component'
|
prevActive: Component
|
}
|
|
export type RenderState =
|
| ComponentContext
|
| ComponentWithCacheContext
|
| ElementContext
|