1 | import type { SimpleElement, SimpleNode } from '@simple-dom/interface';
|
2 |
|
3 | import type { RichIteratorResult } from '../core.js';
|
4 | import type { Bounds } from '../dom/bounds.js';
|
5 | import type { Environment } from './environment.js';
|
6 |
|
7 | export interface ExceptionHandler {
|
8 | handleException(): void;
|
9 | }
|
10 |
|
11 | export 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 |
|
23 | export interface TemplateIterator {
|
24 | next(): RichIteratorResult<null, RenderResult>;
|
25 | sync(): RenderResult;
|
26 | }
|