import { BooleanInput, NgtObjectProps, NgtObjectPropsState, NgtRenderState, NumberInput, Ref } from '@angular-three/core'; import { EventEmitter, TemplateRef } from '@angular/core'; import { Observable } from 'rxjs'; import * as THREE from 'three'; import * as i0 from "@angular/core"; export declare class NgtSobaImageContent { templateRef: TemplateRef<{ image: Ref; }>; constructor(templateRef: TemplateRef<{ image: Ref; }>); static ngTemplateContextGuard(dir: NgtSobaImageContent, ctx: any): ctx is { image: Ref; }; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } export interface NgtSobaImageState extends NgtObjectPropsState { url: string; segments?: number; zoom?: number; grayscale?: number; toneMapped?: boolean; texture: THREE.Texture; } export declare class NgtSobaImage extends NgtObjectProps { beforeRender: EventEmitter<{ state: NgtRenderState; object: THREE.Mesh; }>; set url(url: string); set segments(segments: NumberInput); set zoom(zoom: NumberInput); set grayscale(grayscale: NumberInput); set toneMapped(toneMapped: BooleanInput); content?: NgtSobaImageContent; texture$: Observable; imageBounds: [number, number]; planeBounds: [number, number]; private textureLoader; readonly imageViewModel$: Observable<{ texture: THREE.Texture; zoom: number | undefined; color: THREE.Color; segments: number | undefined; grayscale: number | undefined; toneMapped: boolean | undefined; planeBounds: number[]; imageBounds: any[]; }>; protected preInit(): void; ngOnInit(): void; private readonly setTexture; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export declare class NgtSobaImageModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; }