UNPKG

1.85 kBTypeScriptView Raw
1/**
2 * @license
3 * Copyright Google LLC All Rights Reserved.
4 *
5 * Use of this source code is governed by an MIT-style license that can be
6 * found in the LICENSE file at https://angular.io/license
7 */
8export interface EventSelector {
9 selector: string;
10 events: string[];
11 keyCodes?: number[];
12 preventDefault?: boolean;
13 freeze?: boolean;
14 action?: Function;
15 replay?: boolean;
16}
17export interface ServerClientRoot {
18 serverNode?: HTMLElement;
19 clientNode?: HTMLElement;
20 overlay?: HTMLElement;
21}
22export interface PrebootOptions {
23 /** @deprecated minification has been removed in v6 */
24 buffer?: boolean;
25 eventSelectors?: EventSelector[];
26 appRoot: string | string[];
27 replay?: boolean;
28 disableOverlay?: boolean;
29}
30export interface PrebootEvent {
31 node: any;
32 nodeKey?: any;
33 event: DomEvent;
34 name: string;
35}
36export interface DomEvent {
37 which?: number;
38 type?: string;
39 target?: any;
40 preventDefault(): void;
41}
42export interface PrebootAppData {
43 root: ServerClientRoot;
44 events: PrebootEvent[];
45}
46export interface PrebootEventListener {
47 node: Node;
48 eventName: string;
49 handler: EventListener;
50}
51export declare type PrebootSelectionDirection = 'forward' | 'backward' | 'none';
52export interface PrebootSelection {
53 start: number;
54 end: number;
55 direction: PrebootSelectionDirection;
56}
57export interface NodeContext {
58 root: ServerClientRoot;
59 node: Element;
60 nodeKey?: string;
61 selection?: PrebootSelection;
62}
63export interface PrebootData {
64 opts?: PrebootOptions;
65 activeNode?: NodeContext;
66 apps?: PrebootAppData[];
67 listeners?: PrebootEventListener[];
68}
69export interface PrebootWindow {
70 prebootData: PrebootData;
71 getComputedStyle: (elt: Element, pseudoElt?: string) => CSSStyleDeclaration;
72 document: Document;
73}