vasille
Version:
The first Developer eXperience Orientated front-end framework (core library).
28 lines (27 loc) • 1 kB
TypeScript
import { Fragment, Root } from "./node.js";
import { Runner } from "./runner.js";
/**
* Represents a Vasille.js application
* @class App
* @extends AppNode
*/
export declare class App<Node, Element, TagOptions extends object, T extends object = object> extends Root<Node, Element, TagOptions, T> {
private node;
/**
* Constructs an app node
* @param node {Element} The root of application
* @param input
*/
constructor(node: Element, runner: Runner<Node, Element, TagOptions>, input: T);
appendNode(node: Node): void;
}
interface PortalOptions<Node, Element, TagOptions extends object> {
node: Element;
slot?: (ctx: Fragment<Node, Element, TagOptions>) => void;
}
export declare class Portal<Node, Element, TagOptions extends object> extends Fragment<Node, Element, TagOptions> {
private node;
constructor(input: PortalOptions<Node, Element, TagOptions>, runner: Runner<Node, Element, TagOptions>);
appendNode(node: Node): void;
}
export {};