import { Vector3 } from '@vertexvis/geometry';
import { StreamApi } from '@vertexvis/stream-api';
import { ConfigProvider } from '../config';
import { ImageScaleProvider, Scene } from '../scenes';
import { KeyInteraction } from './keyInteraction';
import { TapEventDetails } from './tapEventDetails';
type SceneProvider = () => Promise<Scene>;
export declare class FlyToPositionKeyInteraction implements KeyInteraction<TapEventDetails> {
    private stream;
    private configProvider;
    private imageScaleProvider;
    private sceneProvider;
    constructor(stream: StreamApi, configProvider: ConfigProvider, imageScaleProvider: ImageScaleProvider, sceneProvider: SceneProvider);
    predicate(e: TapEventDetails): boolean;
    fn(e: TapEventDetails): Promise<void>;
    protected getLookAtPoint(scene: Scene, hitPoint: Vector3.Vector3, viewVector: Vector3.Vector3): Vector3.Vector3;
}
export {};
