import { FunctionalComponent } from '../../stencil-public-runtime';
import { Vector3 } from '@vertexvis/geometry';
type FaceEdge = 'top' | 'bottom' | 'left' | 'right';
type Corner = 'top-left' | 'top-right' | 'bottom-right' | 'bottom-left';
type ViewCubeSide = 'front' | 'back' | 'left' | 'right' | 'top' | 'bottom';
interface TriadAxisProps {
    label: string;
    length: number;
    rotationAxis: Vector3.Vector3;
}
export declare const TriadAxis: FunctionalComponent<TriadAxisProps>;
interface ViewCubeSideProps {
    label: string;
    length: number;
    side: ViewCubeSide;
    disabled: boolean;
    onPointerDown?: (event: MouseEvent) => void;
}
export declare const ViewCubeSide: FunctionalComponent<ViewCubeSideProps>;
interface ViewCubeCornerProps {
    length: number;
    face1Side: ViewCubeSide;
    face1Corner: Corner;
    face2Side: ViewCubeSide;
    face2Corner: Corner;
    face3Side: ViewCubeSide;
    face3Corner: Corner;
    disabled: boolean;
    onPointerDown?: (event: MouseEvent) => void;
}
export declare const ViewCubeCorner: FunctionalComponent<ViewCubeCornerProps>;
interface ViewCubeEdgeProps {
    length: number;
    face1Side: ViewCubeSide;
    face2Side: ViewCubeSide;
    face1Edge: FaceEdge;
    face2Edge: FaceEdge;
    disabled: boolean;
    onPointerDown?: (event: MouseEvent) => void;
}
export declare const ViewCubeEdge: FunctionalComponent<ViewCubeEdgeProps>;
interface ViewCubeShadowProps {
    length: number;
}
export declare const ViewCubeShadow: FunctionalComponent<ViewCubeShadowProps>;
export {};
