import { SourceNode, ReferenceSpace, SourceNodeOptions } from '@openhps/core';
import { SpheroDataObject, SpheroDataFrame } from '../data';
import { RollableToy } from '../../lib/server/lib/dist';
export declare class SpheroSensorSource<Out extends SpheroDataFrame, T extends RollableToy = RollableToy> extends SourceNode<Out> {
    referenceSpace: ReferenceSpace;
    private _calibrated;
    protected options: SpheroSensorOptions;
    constructor(options?: SpheroSensorOptions<T>);
    get toy(): RollableToy;
    private _initSensors;
    private _onSensorEvent;
    onPull(): Promise<Out>;
}
export interface SpheroSensorOptions<T extends RollableToy = RollableToy> extends SourceNodeOptions {
    source?: SpheroDataObject<T>;
    /**
     * Sensor refresh interval in miliseconds
     */
    interval?: number;
    /**
     * Sensors to get information for
     */
    sensors?: SpheroSensor[];
    /**
     * Specify if the calibration should be skipped
     */
    skipCalibration?: boolean;
    /**
     * Specify if the sensor interval configuration should be skipped
     */
    skipSensorConfiguration?: boolean;
}
export declare enum SpheroSensor {
    LOCATION = 0,
    GYROSCOPE = 1,
    ACCELEROMETER = 2,
    VELOCITY = 3
}
//# sourceMappingURL=SpheroSensorSource.d.ts.map