import * as Enums from '../../enums/index.js';
import type * as Types from '../../types/index.js';
import type OrientationVectors from '../../types/OrientationVectors.js';
import { vec3 } from 'gl-matrix';
export interface CameraPositionConfig {
    orientation?: Enums.OrientationAxis;
    useViewportNormal?: boolean;
}
export type CameraVectorViewport = Pick<Types.IBaseVolumeViewport, 'getActors' | 'getCamera' | 'getCurrentImageId' | 'getImageIds' | 'type'>;
export declare function calculateCameraPosition(rowCosineVec: vec3, colCosineVec: vec3, scanAxisNormal: vec3, orientation: Enums.OrientationAxis): {
    viewPlaneNormal: [number, number, number];
    viewUp: [number, number, number];
    viewRight: [number, number, number];
};
export declare function getCameraVectors(viewport: CameraVectorViewport, config?: CameraPositionConfig): {
    viewPlaneNormal: [number, number, number];
    viewUp: [number, number, number];
    viewRight: [number, number, number];
};
export declare function getOrientationFromScanAxisNormal(scanAxisNormal: vec3): Enums.OrientationAxis;
export declare function getAcquisitionPlaneReformatOrientation(imageOrientationPatient: number[]): OrientationVectors | null;
