UNPKG

@google/model-viewer

Version:

Easily display interactive 3D models on the web and in AR!

99 lines (98 loc) 4.04 kB
/// <reference types="resize-observer-browser" /> import { UpdatingElement } from 'lit-element/lib/updating-element'; import ModelScene from './three-components/ModelScene.js'; import { ContextLostEvent, Renderer } from './three-components/Renderer.js'; import { ProgressTracker } from './utilities/progress-tracker.js'; declare const $updateSize: unique symbol; declare const $loaded: unique symbol; declare const $template: unique symbol; declare const $fallbackResizeHandler: unique symbol; declare const $defaultAriaLabel: unique symbol; declare const $resizeObserver: unique symbol; declare const $intersectionObserver: unique symbol; declare const $lastDpr: unique symbol; declare const $clearModelTimeout: unique symbol; declare const $onContextLost: unique symbol; declare const $contextLostHandler: unique symbol; export declare const $isInRenderTree: unique symbol; export declare const $resetRenderer: unique symbol; export declare const $ariaLabel: unique symbol; export declare const $loadedTime: unique symbol; export declare const $updateSource: unique symbol; export declare const $markLoaded: unique symbol; export declare const $container: unique symbol; export declare const $canvas: unique symbol; export declare const $scene: unique symbol; export declare const $needsRender: unique symbol; export declare const $tick: unique symbol; export declare const $onModelLoad: unique symbol; export declare const $onResize: unique symbol; export declare const $onUserModelOrbit: unique symbol; export declare const $renderer: unique symbol; export declare const $progressTracker: unique symbol; export declare const $getLoaded: unique symbol; export declare const $getModelIsVisible: unique symbol; /** * Definition for a basic <model-viewer> element. */ export default class ModelViewerElementBase extends UpdatingElement { protected static [$template]: HTMLTemplateElement | void; static [$resetRenderer](): void; static readonly is: string; /** @nocollapse */ static readonly template: void | HTMLTemplateElement; static modelCacheSize: number; alt: string | null; src: string | null; protected [$isInRenderTree]: boolean; protected [$loaded]: boolean; protected [$loadedTime]: number; protected [$scene]: ModelScene; protected [$container]: HTMLDivElement; protected [$canvas]: HTMLCanvasElement; protected [$defaultAriaLabel]: string; protected [$lastDpr]: number; protected [$clearModelTimeout]: number | null; protected [$fallbackResizeHandler]: (...args: any[]) => void; protected [$resizeObserver]: ResizeObserver | null; protected [$intersectionObserver]: IntersectionObserver | null; protected [$progressTracker]: ProgressTracker; protected [$contextLostHandler]: (event: ContextLostEvent) => void; readonly loaded: boolean; readonly [$renderer]: Renderer; readonly modelIsVisible: boolean; /** * Creates a new ModelViewerElement. */ constructor(); connectedCallback(): void; disconnectedCallback(): void; updated(changedProperties: Map<string | number | symbol, any>): void; toDataURL(type?: string, encoderOptions?: number): string; readonly [$ariaLabel]: string; [$getLoaded](): boolean; [$getModelIsVisible](): boolean; /** * Called on initialization and when the resize observer fires. */ [$updateSize]({ width, height }: { width: any; height: any; }, forceApply?: boolean): void; [$tick](_time: number, _delta: number): void; [$markLoaded](): void; [$needsRender](): void; [$onModelLoad](_event: any): void; [$onResize](e: { width: number; height: number; }): void; [$onContextLost](event: ContextLostEvent): void; /** * Parses the element for an appropriate source URL and * sets the views to use the new model based off of the `preload` * attribute. */ [$updateSource](progressCallback?: (progress: number) => void): Promise<void>; } export {};