/**
 * @description 用于记录轴位对应的DOM元素、布局位置对应的轴位、轴位的全铺状态信息
 * @author jiannan.jiao
 */
import { Enums } from '@cornerstonejs/core';
import type { AxisElements, AxisOrientations, AxisViewportIds, FullScreen, DisplayComponentID, MedicalComponentID } from '../types';
/**
 * @description 初始化组件主次序列视口不同轴位对应的DOM状态
 * @author jiannan.jiao
 * @date 06/09/2023
 * @export
 * @param {DisplayComponentID } id
 * @returns {*}  {AxisElements}
 */
export declare function initAxisElementRef(id: DisplayComponentID): AxisElements;
/**
 * @description
 * @author jiannan.jiao
 * @date 07/09/2023
 * @export
 * @param {DisplayComponentID } id
 * @returns {*}  {(AxisElements | null)}
 */
export declare function getAxisElementRef(id: DisplayComponentID): AxisElements | null;
/**
 * @description
 * @author jiannan.jiao
 * @date 07/09/2023
 * @export
 * @param {MedicalComponentID} id
 * @returns {*}  {({ primary: AxisElements | null; secondary: AxisElements | null } | null)}
 */
export declare function getComponentAxisElementRef(id: MedicalComponentID): {
    primary: AxisElements | null;
    secondary: AxisElements | null;
} | null;
/**
 * @description
 * @author jiannan.jiao
 * @date 11/09/2023
 * @export
 * @param {DisplayComponentID } id
 */
export declare function deleteAxisElementRef(id: DisplayComponentID): void;
/**
 * @description 初始化组件主次序列视口不同布局位置对应的轴位状态
 * @author jiannan.jiao
 * @date 06/09/2023
 * @export
 * @param {DisplayComponentID } id
 * @returns {*}  {AxisOrientations}
 */
export declare function initAxisOrientation(id: DisplayComponentID): AxisOrientations;
/**
 * @description
 * @author jiannan.jiao
 * @date 07/09/2023
 * @export
 * @param {DisplayComponentID } id
 * @returns {*}  {(AxisOrientations | null)}
 */
export declare function getAxisOrientation(id: DisplayComponentID): AxisOrientations | null;
/**
 * @description
 * @author jiannan.jiao
 * @date 07/09/2023
 * @export
 * @param {MedicalComponentID} id
 * @returns {*}  {({ primary: AxisOrientations | null; secondary: AxisOrientations | null } | null)}
 */
export declare function getComponentAxisOrientation(id: MedicalComponentID): {
    primary: AxisOrientations | null;
    secondary: AxisOrientations | null;
} | null;
/**
 * @description 初始化组件主次序列视口全铺状态
 * @author jiannan.jiao
 * @date 06/09/2023
 * @export
 * @param {DisplayComponentID } id
 * @returns {*}  {FullScreen}
 */
export declare function initAxisFullScreen(id: DisplayComponentID): FullScreen;
/**
 * @description
 * @author jiannan.jiao
 * @date 07/09/2023
 * @export
 * @param {DisplayComponentID } id
 * @returns {*}  {(FullScreen | null)}
 */
export declare function getAxisFullScreen(id: DisplayComponentID): FullScreen | null;
/**
 * @description
 * @author jiannan.jiao
 * @date 07/09/2023
 * @export
 * @param {MedicalComponentID} id
 * @returns {*}  {({ primary: FullScreen | null; secondary: FullScreen | null } | null)}
 */
export declare function getComponentAxisFullScreen(id: MedicalComponentID): {
    primary: FullScreen | null;
    secondary: FullScreen | null;
} | null;
/**
 * @description 保存组件主序列或次序列的视口ID
 * @author jiannan.jiao
 * @date 06/09/2023
 * @export
 * @param {DisplayComponentID } id
 * @param {AxisViewportIds} viewportIds
 * @returns {*}  {boolean}
 */
export declare function setAxisViewportIds(id: DisplayComponentID, viewportIds: AxisViewportIds): AxisViewportIds;
/**
 * @description 获取组件中主序列或次序列的视口ID
 * @author jiannan.jiao
 * @date 06/09/2023
 * @export
 * @param {DisplayComponentID } id
 * @returns {*}  {(AxisViewportIds | null)}
 */
export declare function getAxixViewportIds(id: DisplayComponentID): AxisViewportIds | null;
/**
 * @description 获取组件中的全部视口ID，包含主次序列
 * @author jiannan.jiao
 * @date 06/09/2023
 * @export
 * @param {MedicalComponentID} id
 * @returns {*}  {({ primary: AxisViewportIds | null; secondary: AxisViewportIds | null } | null)}
 */
export declare function getComponentViewportIds(id: MedicalComponentID): {
    primary: AxisViewportIds | null;
    secondary: AxisViewportIds | null;
} | null;
export declare function init3DViewState(id: MedicalComponentID): {
    componentId: `${string}|primary` | `${string}|secondary` | null;
    initOrientation: Enums.OrientationAxis | null;
    visible: boolean;
};
export declare function get3DViewState(id: MedicalComponentID | DisplayComponentID): {
    componentId: `${string}|primary` | `${string}|secondary` | null;
    initOrientation: Enums.OrientationAxis | null;
    visible: boolean;
} | undefined;
