UNPKG

676 BTypeScriptView Raw
1import type { SimpleElement, SimpleNode } from '@simple-dom/interface';
2
3import type { RichIteratorResult } from '../core.js';
4import type { Bounds } from '../dom/bounds.js';
5import type { Environment } from './environment.js';
6
7export interface ExceptionHandler {
8 handleException(): void;
9}
10
11export interface RenderResult extends Bounds, ExceptionHandler {
12 readonly env: Environment;
13 readonly drop: object;
14
15 rerender(options?: { alwaysRevalidate: false }): void;
16
17 parentElement(): SimpleElement;
18
19 firstNode(): SimpleNode;
20 lastNode(): SimpleNode;
21}
22
23export interface TemplateIterator {
24 next(): RichIteratorResult<null, RenderResult>;
25 sync(): RenderResult;
26}