import React from 'react';
import { AnimationProps, CameraProps, CursorProps, DaydreamControlsProps, GearvrControlsProps, GenericTrackedControllerControlsProps, GeometryProps, GLTFModelType, HandControlsProps, HandTrackingControlsProps, HpMixedRealityControlsProps, LaserControlsProps, LayerProps, LightProps, LineProps, LinkProps, LookControlsProps, MagicleapControlsProps, MaterialProps, ObjModelProps, OculusGoControlsProps, OculusTouchControlsProps, PositionProps, RaycasterProps, RotationProps, ScaleProps, ShadowProps, SoundProps, TextProps, TrackedControlsWebVRProps, TrackedControlsWebXRProps, TrackedControlsProps, ValveIndexControlsProps, VisibleProps, ViveControlsProps, ViveFocusControlsProps, WASDControlsProps, WindowsMotionControlsProps } from '../components';
export interface Props {
    id?: string;
    className?: string;
    children?: React.ReactNode;
    animation?: AnimationProps;
    [key: `animation__${string}`]: AnimationProps;
    camera?: CameraProps;
    cursor?: CursorProps;
    daydreamControls?: DaydreamControlsProps;
    gearvrControls?: GearvrControlsProps;
    genericTrackedControllerControls?: GenericTrackedControllerControlsProps;
    geometry?: GeometryProps;
    gltfModel?: GLTFModelType;
    handControls?: HandControlsProps;
    handTrackingControls?: HandTrackingControlsProps;
    hpMixedRealityControls?: HpMixedRealityControlsProps;
    laserControls?: LaserControlsProps;
    layer?: LayerProps;
    light?: LightProps;
    line?: LineProps;
    link?: LinkProps;
    lookControls?: LookControlsProps;
    magicleapControls?: MagicleapControlsProps;
    material?: MaterialProps;
    objModel?: ObjModelProps;
    oculusGoControls?: OculusGoControlsProps;
    oculusTouchControls?: OculusTouchControlsProps;
    position?: PositionProps;
    raycaster?: RaycasterProps;
    rotation?: RotationProps;
    scale?: ScaleProps;
    shadow?: ShadowProps;
    sound?: SoundProps;
    text?: TextProps;
    trackedControlsWebVR?: TrackedControlsWebVRProps;
    trackedControlsWebXR?: TrackedControlsWebXRProps;
    trackedControls?: TrackedControlsProps;
    valveIndexControls?: ValveIndexControlsProps;
    visible?: VisibleProps;
    viveControls?: ViveControlsProps;
    viveFocusControls?: ViveFocusControlsProps;
    wasdControls?: WASDControlsProps;
    windowsMotionControls?: WindowsMotionControlsProps;
    onClick?: () => void;
    onMouseEnter?: () => void;
    onMouseLeave?: () => void;
    [key: string]: unknown;
}
export declare function toProps(props: Props, removalKeys?: string[]): {
    constructor: Function;
    toString(): string;
    toLocaleString(): string;
    valueOf(): Object;
    hasOwnProperty(v: PropertyKey): boolean;
    isPrototypeOf(v: Object): boolean;
    propertyIsEnumerable(v: PropertyKey): boolean;
    'windows-motion-controls': string;
    'wasd-controls': string;
    'vive-focus-controls': string;
    'vive-controls': string;
    visible: string;
    'valve-index-controls': string;
    'tracked-controls': string;
    'tracked-controls-webxr': string;
    'tracked-controls-webvr': string;
    text: string;
    sound: string;
    shadow: string;
    scale: string;
    rotation: string;
    raycaster: string;
    position: string;
    'oculus-touch-controls': string;
    'oculus-go-controls': string;
    'obj-model': string;
    material: string;
    'magicleap-controls': string;
    'look-controls': string;
    link: string;
    line: string;
    light: string;
    layer: string;
    'laser-controls': string;
    'hp-mixed-reality-controls': string;
    'hand-tracking-controls': string;
    'hand-controls': string;
    'gltf-model': string;
    geometry: string;
    'generic-tracked-controller-controls': string;
    'gearvr-controls': string;
    'daydream-controls': string;
    cursor: string;
    camera: string;
    animation: string;
    class: string;
    id: string;
};
/**
 * A-Frame represents an entity via the `<a-entity>` element. As defined in the [entity-component-system pattern](https://aframe.io/docs/1.3.0/introduction/entity-component-system.html),
 * entities are placeholder objects to which we plug in components to provide them
 * appearance, behavior, and functionality.
 *
 * In A-Frame, entities are inherently attached with the
 * [position](https://aframe.io/docs/1.3.0/components/position.html),
 * [rotation](https://aframe.io/docs/1.3.0/components/rotation.html), and
 * [scale](https://aframe.io/docs/1.3.0/components/scale.html) components.
 *
 * @see https://aframe.io/docs/1.3.0/core/entity.html
 */
declare const Entity: (props: Props) => JSX.Element;
export default Entity;
