@itk-viewer/element
Version:
Web Component for multi-dimensional viewer
52 lines • 2.09 kB
TypeScript
import { PropertyValues } from 'lit';
import { Ref } from 'lit/directives/ref.js';
import { SelectorController } from 'xstate-lit';
import { ActorRefFrom } from 'xstate';
import { Bounds } from '@itk-viewer/utils/bounding-box.js';
import { viewportMachine } from '@itk-viewer/viewer/viewport.js';
import { Camera } from '@itk-viewer/viewer/camera.js';
import { RemoteActor, Image } from '@itk-viewer/remote-viewport/remote-viewport.js';
import { ItkViewport } from './itk-viewport.js';
import './itk-camera.js';
type ViewportActor = ActorRefFrom<typeof viewportMachine>;
export declare class ItkRemoteViewport extends ItkViewport {
serverConfig: unknown | undefined;
density: number;
viewport: ActorRefFrom<typeof viewportMachine>;
remote: RemoteActor;
cameraActor: SelectorController<ViewportActor, Camera>;
remoteOnline: SelectorController<RemoteActor, boolean>;
lastRemoteOnlineValue: boolean;
renderLoopRunning: boolean;
canvas: Ref<HTMLVideoElement>;
frame: SelectorController<RemoteActor, Image | undefined>;
lastFrameValue: Image | undefined;
frameData: ImageData | undefined;
hostCanvas: HTMLCanvasElement;
peerConnection: RTCPeerConnection | undefined;
bounds: SelectorController<RemoteActor, {
imageWorldBounds: Bounds;
clipBounds: Bounds;
clipBoundsWithNormalized: Array<readonly [number, number]>;
}>;
cleanDimension: (v: number) => number;
private resizer;
constructor();
protected setPeerConnection(pc: RTCPeerConnection): void;
startRenderLoop(): void;
connectedCallback(): void;
firstUpdated(): void;
startConnection(): void;
willUpdate(changedProperties: PropertyValues<this>): void;
onDensity(event: Event): void;
onBounds(event: Event, index: number): void;
render(): import("lit").TemplateResult<1>;
static styles: import("lit").CSSResult;
}
declare global {
interface HTMLElementTagNameMap {
'itk-remote-viewport-webrtc': ItkRemoteViewport;
}
}
export {};
//# sourceMappingURL=itk-remote-viewport-webrtc.d.ts.map