1 | import type { Cursor, InteractivePointerEvent } from './types';
|
2 | import { CanvasConfig } from './types';
|
3 | import { DisplayObject } from './display-objects/DisplayObject';
|
4 | import { ContextService } from './services';
|
5 | import { RenderingService } from './services/RenderingService';
|
6 | import { RenderingContext } from './services/RenderingContext';
|
7 | import { EventService } from './services/EventService';
|
8 | import { Camera } from './camera';
|
9 | import type { IRenderer } from './AbstractRenderer';
|
10 | import type { PointLike } from './shapes';
|
11 | import type { IChildNode } from './dom';
|
12 | import { Document, EventTarget } from './dom';
|
13 | import type { ICanvas } from './dom/interfaces';
|
14 | import { CustomElementRegistry } from './dom/CustomElementRegistry';
|
15 | export declare enum CanvasEvent {
|
16 | READY = "ready",
|
17 | BEFORE_RENDER = "beforerender",
|
18 | AFTER_RENDER = "afterrender",
|
19 | BEFORE_DESTROY = "beforedestroy",
|
20 | AFTER_DESTROY = "afterdestroy",
|
21 | RESIZE = "resize"
|
22 | }
|
23 |
|
24 |
|
25 |
|
26 |
|
27 |
|
28 |
|
29 |
|
30 |
|
31 | export declare class Canvas extends EventTarget implements ICanvas {
|
32 | |
33 |
|
34 |
|
35 | container: import("mana-syringe").Syringe.Container;
|
36 | |
37 |
|
38 |
|
39 | document: Document;
|
40 | |
41 |
|
42 |
|
43 | customElements: CustomElementRegistry;
|
44 | |
45 |
|
46 |
|
47 | requestAnimationFrame: (callback: FrameRequestCallback) => number;
|
48 | |
49 |
|
50 |
|
51 | cancelAnimationFrame: (handle: number) => void;
|
52 | |
53 |
|
54 |
|
55 | devicePixelRatio: number;
|
56 | |
57 |
|
58 |
|
59 |
|
60 | supportPointerEvent: boolean;
|
61 | |
62 |
|
63 |
|
64 |
|
65 | supportTouchEvent: boolean;
|
66 | |
67 |
|
68 |
|
69 | isTouchEvent: (event: InteractivePointerEvent) => event is TouchEvent;
|
70 | |
71 |
|
72 |
|
73 | isMouseEvent: (event: InteractivePointerEvent) => event is MouseEvent;
|
74 | |
75 |
|
76 |
|
77 | Element: typeof DisplayObject;
|
78 | |
79 |
|
80 |
|
81 | private frameId?;
|
82 | |
83 |
|
84 |
|
85 | private eventService;
|
86 | private renderingService;
|
87 | private inited;
|
88 | private readyPromise;
|
89 | private resolveReadyPromise;
|
90 | constructor(config: CanvasConfig);
|
91 | private initRenderingContext;
|
92 | private initDefaultCamera;
|
93 | getConfig(): Partial<CanvasConfig>;
|
94 | getContainer(): import("mana-syringe").Syringe.Container;
|
95 | /**
|
96 | * get the root displayObject in scenegraph
|
97 | * @alias this.document.documentElement
|
98 | */
|
99 | getRoot(): import(".").Group;
|
100 | /**
|
101 | * get the camera of canvas
|
102 | */
|
103 | getCamera(): Camera;
|
104 | getContextService(): ContextService<unknown>;
|
105 | getEventService(): EventService;
|
106 | getRenderingService(): RenderingService;
|
107 | getRenderingContext(): RenderingContext;
|
108 | getStats(): {
|
109 | total: number;
|
110 | rendered: number;
|
111 | renderedOnscreen: number;
|
112 | };
|
113 | get ready(): Promise<any>;
|
114 | destroy(destroyScenegraph?: boolean): void;
|
115 | |
116 |
|
117 |
|
118 |
|
119 |
|
120 | changeSize(width: number, height: number): void;
|
121 | resize(width: number, height: number): void;
|
122 | appendChild<T extends IChildNode>(child: T, index?: number): T;
|
123 | insertBefore<T extends IChildNode, N extends IChildNode>(newChild: T, refChild: N | null): T;
|
124 | removeChild<T extends IChildNode>(child: T, destroy?: boolean): T;
|
125 | removeChildren(destroy?: boolean): void;
|
126 | render(): void;
|
127 | private run;
|
128 | private initRenderer;
|
129 | private loadCommonContainerModule;
|
130 | private loadRendererContainerModule;
|
131 | setRenderer(renderer: IRenderer): void;
|
132 | setCursor(cursor: Cursor): void;
|
133 | private unmountChildren;
|
134 | private mountChildren;
|
135 | client2Viewport(client: PointLike): PointLike;
|
136 | viewport2Client(canvas: PointLike): PointLike;
|
137 | viewport2Canvas(viewport: PointLike): PointLike;
|
138 | canvas2Viewport(canvas: PointLike): PointLike;
|
139 | |
140 |
|
141 |
|
142 |
|
143 | getPointByClient(clientX: number, clientY: number): PointLike;
|
144 | |
145 |
|
146 |
|
147 |
|
148 | getClientByPoint(x: number, y: number): PointLike;
|
149 | }
|